Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2012-01

Cycle vs. Circle errors

22 messages · 11 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Maxim Ganetsky
to marcelo.bp: That got me ! I know what a circle reference is, but can anyone explain with more details…

03.01.2012 22:24, marcelo.bp ?????:

Hello list, That got me ! I know what a circle reference is, but can anyone explain with more details what a ?cycle reference? is, please!

"Cycle" in this context (package/project dependencies) means exactly what "circle" meant before. In fact there is no term "circle" anymore, it was replaced by "cycle".

Best regards, Maxim Ganetsky mailto:

Reply by email

Martin
to Maxim Ganetsky
Maxim Ganetsky wrote 9 lines
03.01.2012 22:24, marcelo.bp ?????: > Hello list, > That got me ! I know what a circle reference is, but can anyone explain > with more details what a ?cycle reference? is, please! "Cycle" in this context (package/project dependencies) means exactly what "circle" meant before. In fact there is no term "circle" anymore, it was replaced by "cycle".

well I am not a native English speaker, but are we sure "cycle" is better (in terms of correctness) than "circle" (or maybe "circular")?

I would usually associate "cycle" with "wash cycle" "life cycle": a period (time span) of a greater happening.
(German "zyklus")

Reply by email

Mattias Gaertner
to marcelo.bp: That got me ! I know what a circle reference is, but can anyone explain with more details…
Hello list, That got me ! I know what a circle reference is, but can anyone explain with more details what a ?cycle reference? is, please!

I'm not a native English speaker, so maybe both are bad English.

It should indicate that the (package) graph has a cycle. For example when two packages depend on each other. Because packages are compiled one after the other, a cycle is not supported aka invalid.

The term "circle" was translated from German graph theory, but the common words in English graph theory are "cycle" and "cyclic".

I need a suggestion to translate this to portuguese. Usually an ?invalid circle? is translated as ?refer?ncia circular inv?lida?, but right now i am confused with this new term, maybe that classic M$ error ?Erro de redund?ncia c?clica? Any help will be welcomed.

Mattias

Reply by email

Felipe Monteiro de Carvalho
to Mattias Gaertner
Mattias Gaertner wrote
The term "circle" was translated from German graph theory, but the common words in English graph theory are "cycle" and "cyclic".

But people speak of "circular unit reference". I never heard "cyclic unit reference". If you search for "cyclic unit reference" in Google, it will give results for "circular unit reference" instead.

For me something cyclic makes multiple turns.

Felipe Monteiro de Carvalho

Reply by email

marcelo.bp

Hello list,

That got me ! I know what a circle reference is, but can anyone explain with more details what a ?cycle reference? is, please!

I need a suggestion to translate this to portuguese. Usually an ?invalid circle? is translated as ?refer?ncia circular inv?lida?, but right now i am confused with this new term, maybe that classic M$ error ?Erro de redund?ncia c?clica?

Any help will be welcomed.

Thanks in advance,

Marcelo B. Paula
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20120103/b6a0409f/attachment.html> -------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 1041 bytes
Desc: not available
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20120103/b6a0409f/attachment.png>

Reply by email

Howard Page-Clark
to Mattias Gaertner: On Tue, 3 Jan 2012 15:24:24 -0300 I'm not a native English speaker, so maybe both are bad…
Mattias Gaertner wrote
The term "circle" was translated from German graph theory, but the common words in English graph theory are "cycle" and "cyclic".

I'm not familiar with graph theory and the possibly specialist technical meanings given there to words in common use.

However, in everyday English neither of the nouns 'cycle' or 'circle' has the meaning 'mutual interdependence' except perhaps as a curious extension of the metaphor which works poorly the adjective 'circular' can carry a meaning of 'interdependent' or 'dependent on itself'. So a 'circular argument' is flawed in that it refers to itself rather than to an independently established proposition. But in English you would not normally refer to such a circular argument as a 'circle' and expect people (apart perhaps from graph theorists?) to appreciate immediately what you meant.

Dependency (or interdependency) is the more descriptive term, which does not rely on a strained metaphor - although 'mutual dependency' is rather a mouthful.

Reply by email

marcelo.bp
to Felipe Monteiro de Carvalho: On Tue, Jan 3, 2012 at 3:43 PM, Mattias Gaertner But people speak of "circular unit…

I must agree with Felipe.

Cyclic to me, remember something that repeats within a period. I just recall one error that uses the term "cyclic" that is the well known "CRC error".

So I must keep the translations as they are, and keep the word "circular" in portuguese where "cyclic/cycle" is referred.

Thanks everyone.

Marcelo.

-----Mensagem Original-----

Earlier message 18 lines
From: Felipe Monteiro de Carvalho Sent: Tuesday, January 03, 2012 2:57 PM To: Lazarus mailing list Subject: Re: [Lazarus] Cycle vs. Circle errors On Tue, Jan 3, 2012 at 3:43 PM, Mattias Gaertner wrote: > The term "circle" was translated from German graph theory, but the > common words in English graph theory are "cycle" and "cyclic". But people speak of "circular unit reference". I never heard "cyclic unit reference". If you search for "cyclic unit reference" in Google, it will give results for "circular unit reference" instead. For me something cyclic makes multiple turns. -- Felipe Monteiro de Carvalho

Reply by email

Hans-Peter Diettrich
to marcelo.bp: That got me ! I know what a circle reference is, but can anyone explain with more details…
That got me ! I know what a circle reference is, but can anyone explain with more details what a ?cycle reference? is, please!

There exist several idioms:
"circular [unit] references" leading to *wrong* "circle ..." "loop" (endless loop) in code execution or unit references "breaking loops" meaning here "break loop in references"

"cycle" (from graph theory) is the currently accepted term for unit references, replaces the wrong "circle" term. But IMO "cyclic references" is wrong wording, should still read "circular references".

And don't confuse "graph theory" with "graphics" - a "circle" is a graphical element, while "circular" is a more general concept. Unit references should form an tree, which is a special kind of an graph (*without* loops/cycles).

I hope that I didn't increase confusion right now ;-)

I need a suggestion to translate this to portuguese. Usually an ?invalid circle? is translated as ?refer?ncia circular inv?lida?,

Looks good to me :-)

but right now i am confused with this new term, maybe that classic M$ error ?Erro de redund?ncia c?clica? Alegre

What's the English wording of this? I'd guess "circular references", or "endless loop" (causing stack overflow)?

DoDi

Reply by email

Hans-Peter Diettrich
to Martin: well I am not a native English speaker, but are we sure "cycle" is better (in terms of…
Show quoted text 7 lines
> "Cycle" in this context (package/project dependencies) means exactly > what "circle" meant before. In fact there is no term "circle" anymore, > it was replaced by "cycle". > well I am not a native English speaker, but are we sure "cycle" is better (in terms of correctness) than "circle" (or maybe "circular")?

See my other mail.

I would usually associate "cycle" with "wash cycle" "life cycle": a period (time span) of a greater happening. (German "zyklus")

Ein "Zyklus" ist zwar (prim?r) eine zeitliche Schleife, in der "zyklischen Vertauschung" ist die Bedeutung aber eine andere, und die ist hier eher gemeint. In der Graphentheorie hat sich engl. "cycle" eingeb?rgert, deutsch eher "Schleife" ("schleifenfreier Graph"), was dann in der ?bersetzung oft zu "loop" f?hrt.

Im Nachhinein bin ich mir nicht sicher, ob "cycle" (Graph) statt "loop" (Programmierung) wirklich eine Verbesserung bringt, wer denkt bei Programmieren schon sofort an Graphentheorie?

DoDi

Reply by email

Hans-Peter Diettrich
to Howard Page-Clark: I'm not familiar with graph theory and the possibly specialist technical meanings given…
Show quoted text 11 lines
On 03/1/12 5:43, Mattias Gaertner wrote: > The term "circle" was translated from German graph theory, but the > common words in English graph theory are "cycle" and "cyclic". I'm not familiar with graph theory and the possibly specialist technical meanings given there to words in common use. However, in everyday English neither of the nouns 'cycle' or 'circle' has the meaning 'mutual interdependence' except perhaps as a curious extension of the metaphor which works poorly all I'm also not happy with "cycle", when a coder will use the

term "loop" for cycles. But what's the according adjective - "loopy" looks a bit weird to me? ;-)

Show quoted text 10 lines
Whereas the adjective 'circular' can carry a meaning of 'interdependent' or 'dependent on itself'. So a 'circular argument' is flawed in that it refers to itself rather than to an independently established proposition. But in English you would not normally refer to such a circular argument as a 'circle' and expect people (apart perhaps from graph theorists?) to appreciate immediately what you meant. Dependency (or interdependency) is the more descriptive term, which does not rely on a strained metaphor - although 'mutual dependency' is rather a mouthful.

IMO "dependency" is a straight unidirectional relationship (A depends on B), but "interdependency" is not a common term in technical (simplified international) documentation. The same for "cycle", as borrowed from graph theory, which associates with "motor cycle" in technical context.

Many languages seem to have problems with loops/circles/cycles as nouns, and the matching adjectives. Which noun and adjective would you suggest in the context of code and (circular) unit references?

DoDi

Reply by email

Reinier Olislagers
to Howard Page-Clark: I'm not familiar with graph theory and the possibly specialist technical meanings given…
Howard Page-Clark wrote 22 lines
On 03/1/12 5:43, Mattias Gaertner wrote: > The term "circle" was translated from German graph theory, but the > common words in English graph theory are "cycle" and "cyclic". I'm not familiar with graph theory and the possibly specialist technical meanings given there to words in common use. However, in everyday English neither of the nouns 'cycle' or 'circle' has the meaning 'mutual interdependence' except perhaps as a curious extension of the metaphor which works poorly if at all. Whereas the adjective 'circular' can carry a meaning of 'interdependent' or 'dependent on itself'. So a 'circular argument' is flawed in that it refers to itself rather than to an independently established proposition. But in English you would not normally refer to such a circular argument as a 'circle' and expect people (apart perhaps from graph theorists?) to appreciate immediately what you meant. Dependency (or interdependency) is the more descriptive term, which does not rely on a strained metaphor - although 'mutual dependency' is rather a mouthful.

Though not a native speaker (which might actually be good as a lot of users won't be either):

- agreed with Howard: circular would be the adjective that evokes an image of something leading back to itself.
I would understand cyclic, but only because I already have skimmed graph theory... not something I'd expect of everyone.

- the noun is more difficult. While mutual dependency or interdependency would correctly indicate that both units need each other, it doesn't indicate to me that this is a problem.
Circle or cycle doesn't do it for me either, see above.

I would just try to rephrase messages to use only the adjective.

Regards,
Reinier

Reply by email

Mark Morgan Lloyd
to Howard Page-Clark: I'm not familiar with graph theory and the possibly specialist technical meanings given…
Howard Page-Clark wrote 22 lines
On 03/1/12 5:43, Mattias Gaertner wrote: > The term "circle" was translated from German graph theory, but the > common words in English graph theory are "cycle" and "cyclic". I'm not familiar with graph theory and the possibly specialist technical meanings given there to words in common use. However, in everyday English neither of the nouns 'cycle' or 'circle' has the meaning 'mutual interdependence' except perhaps as a curious extension of the metaphor which works poorly if at all. Whereas the adjective 'circular' can carry a meaning of 'interdependent' or 'dependent on itself'. So a 'circular argument' is flawed in that it refers to itself rather than to an independently established proposition. But in English you would not normally refer to such a circular argument as a 'circle' and expect people (apart perhaps from graph theorists?) to appreciate immediately what you meant. Dependency (or interdependency) is the more descriptive term, which does not rely on a strained metaphor - although 'mutual dependency' is rather a mouthful.

I'm sufficiently familiar with graph theory to be confident that its specialist terminology- edge, vertex and so on- isn't relevant when software usage is being discussed.

Let's just stick to industry conventions. There's plenty of precedent for referring to circular references (i.e. a group of modules/units which each import the other), and plenty of precedent for referring to a sequence of build operations which becomes a cycle if part of it is intentionally repeated.

In both cases the important thing is not so much the adjective (circular, cyclic) but the combination of adjective plus noun, which /should/ be used consistently in documentation and error messages.

Mark Morgan Lloyd markMLl .AT. telemetry.co .DOT. uk [Opinions above are the author's, not those of his employers or colleagues]

Reply by email

marcelo.bp
to Mark Morgan Lloyd

I think Delphi uses the "circle" terminology. Can?t confirm right now, because i don?t have it installed here.
Can anyone test it and report here?

About the graph theory, can anyone point me a document or link? Just want to take a look.

Regards,

Marcelo.

Reply by email

William Oliveira Ferreira
to marcelo.bp

Could someone explain the context? I got this error message on my TurboDelphi:
[Pascal Fatal Error] unt_Principal.pas(9): F2047 Circular unit reference to 'unt_Principal'
Is this message you wanna translate?
http://imagebin.org/191738
________________________________
William de Oliveira Ferreira
Bacharel em Sistemas de Informa??o

2012/1/4 marcelo.bp

Show quoted text 18 lines
I think Delphi uses the "circle" terminology. Can?t confirm right now, because i don?t have it installed here. Can anyone test it and report here? About the graph theory, can anyone point me a document or link? Just want to take a look. Regards, Marcelo. -- ______________________________**_________________ Lazarus mailing list .**freepascal.org http://lists.lazarus.**freepascal.org/mailman/**listinfo/lazarus<http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20120104/936d8e0c/attachment.html>

Reply by email

Mattias Gaertner
to Mark Morgan Lloyd: I'm sufficiently familiar with graph theory to be confident that its specialist…
[...] > I'm not familiar with graph theory and the possibly specialist technical > meanings given there to words in common use.

Even though many programmers don't know, they probably use graph algorithms somewhere. Just think about tree structures. The packages dependencies are a graph and the errors comes from algorithms of graph theory. So in this way it is natural to use terms from graph theory.

> However, in everyday English neither of the nouns 'cycle' or 'circle' > has the meaning 'mutual interdependence' except perhaps as a curious > extension of the metaphor which works poorly if at all.

+1

Show quoted text 14 lines
> Whereas the adjective 'circular' can carry a meaning of 'interdependent' > or 'dependent on itself'. So a 'circular argument' is flawed in that it > refers to itself rather than to an independently established > proposition. But in English you would not normally refer to such a > circular argument as a 'circle' and expect people (apart perhaps from > graph theorists?) to appreciate immediately what you meant. > > Dependency (or interdependency) is the more descriptive term, which does > not rely on a strained metaphor - although 'mutual dependency' is rather > a mouthful. I'm sufficiently familiar with graph theory to be confident that its specialist terminology- edge, vertex and so on- isn't relevant when software usage is being discussed.

I'm not sure what you mean with "software usage" here, but I guess the audience of Lazarus are software developers, which means they know about algorithms and data structures. So every Lazarus user should know that words like "list", "stack", "tree" do not have their normal meaning.

About "specialist terminology":
You don't have to be a graph theorist to know about edge and vertex. Just ask a 3D programmer.

Show quoted text 5 lines
Let's just stick to industry conventions. There's plenty of precedent for referring to circular references (i.e. a group of modules/units which each import the other), and plenty of precedent for referring to a sequence of build operations which becomes a cycle if part of it is intentionally repeated.

Just google and read some wikipedia pages to see that there is no clear industry standard for circular, cyclic or cycle.

In both cases the important thing is not so much the adjective (circular, cyclic) but the combination of adjective plus noun, which /should/ be used consistently in documentation and error messages.

Yes.
And since this is open source, it should also be consistent with the sources, which means the used structures and algorithms.

I changed it to circular dependencies and endless loops because Google gave more results.

Mattias

Reply by email

Bernd
to Mattias Gaertner

2012/1/5 Mattias Gaertner :

I changed it to [...] endless loops

shouldn't the correct term for this be "infinite loops"? If I search for "endless loop" on google then a wikipedia page for "infinite loop" comes as the first search result.

Bernd

Reply by email

Howard Page-Clark
to Mattias Gaertner: On Wed, 04 Jan 2012 09:09:20 +0000 Even though many programmers don't know, they probably…
Mattias Gaertner wrote 10 lines
> In both cases the important thing is not so much the adjective > (circular, cyclic) but the combination of adjective plus noun, which > /should/ be used consistently in documentation and error messages. Yes. And since this is open source, it should also be consistent with the sources, which means the used structures and algorithms. I changed it to circular dependencies and endless loops because Google gave more results.

Thanks for clarifying this. Let's try to use 'circular dependencies' and 'endless loops' (or 'infinite loops' which is an equivalent phrase) and their non-English translations in future comments and documentation, and avoid 'cycle', 'circle', 'cyclic' and so on - not so much because they are wrong (graph theory quite validly introduced them) but for consistency and ease of understanding among Pascallers who don't know graph theory (or only know it intuitively).

Reply by email

William Oliveira Ferreira
to marcelo.bp: You clarified my doubt. About the context, if you didn?t read the other posts on this…

As you?re talking about the message i?ve got from delphi, i think it?s much better to use "Refer?ncia circular".

At? mesmo porque muitos que utilizar?o o lazarus compreender?o melhor o significado da palavra circular do que c?clica.
________________________________
William de Oliveira Ferreira
Bacharel em Sistemas de Informa??o

2012/1/5 marcelo.bp

Show quoted text 64 lines
Thanks William, You clarified my doubt. About the context, if you didn?t read the other posts on this subject, we were discussing the terminology for this kind of reference errors. Lazarus adopted the word ?cycle? where Delphi, like in your example, used ?circular?. I think Mattias already reviewed this. In portuguese i will maintain what i used before that is ?refer?ncia circular?. About the term ?endless loop?, i think ?infinite loop? is more common in ?programmer?s language? :) Although i can live with the term ?endless loop?. Regards, Marcelo. *From:* William Oliveira Ferreira *Sent:* Wednesday, January 04, 2012 11:39 AM *To:* Lazarus mailing list *Subject:* Re: [Lazarus] Cycle vs. Circle errors Could someone explain the context? I got this error message on my TurboDelphi: [Pascal Fatal Error] unt_Principal.pas(9): F2047 Circular unit reference to 'unt_Principal' Is this message you wanna translate? http://imagebin.org/191738 ________________________________ William de Oliveira Ferreira Bacharel em Sistemas de Informa??o 2012/1/4 marcelo.bp > I think Delphi uses the "circle" terminology. Can?t confirm right now, > because i don?t have it installed here. > Can anyone test it and report here? > > About the graph theory, can anyone point me a document or link? Just > want to take a look. > > Regards, > > Marcelo. > > > -- > ______________________________**_________________ > Lazarus mailing list > .**freepascal.org > http://lists.lazarus.**freepascal.org/mailman/**listinfo/lazarus<http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus> > -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20120105/1d1c05ac/attachment.html>

Reply by email

Mattias Gaertner
to marcelo.bp: You clarified my doubt. About the context, if you didn?t read the other posts on this…
Show quoted text 10 lines
Thanks William, You clarified my doubt. About the context, if you didn?t read the other posts on this subject, we were discussing the terminology for this kind of reference errors. Lazarus adopted the word ?cycle? where Delphi, like in your example, used ?circular?. I think Mattias already reviewed this. In portuguese i will maintain what i used before that is ?refer?ncia circular?. About the term ?endless loop?, i think ?infinite loop? is more common in ?programmer?s language? :) Although i can live with the term ?endless loop?.

Infinite loop is a more mathematical term. Since some people find the basics of computer science too special, I chose the word with the broader meaning: endless. And as someone already pointed out: the first hit for endless loop is infinite loop.

[...] About the graph theory, can anyone point me a document or link? Just want to take a look.

Wikipedia has a lot of graph theory. Or just google for backtracking, cycle detection, depth first search, shortest/longest path algorithms. Any good programmer should know these basic algorithms.

Mattias

Reply by email

marcelo.bp
to William Oliveira Ferreira: Could someone explain the context? I got this error message on my TurboDelphi: [Pascal…

Thanks William,

You clarified my doubt.

About the context, if you didn?t read the other posts on this subject, we were discussing the terminology for this kind of reference errors. Lazarus adopted the word ?cycle? where Delphi, like in your example, used ?circular?. I think Mattias already reviewed this. In portuguese i will maintain what i used before that is ?refer?ncia circular?.

About the term ?endless loop?, i think ?infinite loop? is more common in ?programmer?s language? :) Although i can live with the term ?endless loop?.

Regards,

Marcelo.

Earlier message 29 lines
From: William Oliveira Ferreira Sent: Wednesday, January 04, 2012 11:39 AM To: Lazarus mailing list Subject: Re: [Lazarus] Cycle vs. Circle errors Could someone explain the context? I got this error message on my TurboDelphi: [Pascal Fatal Error] unt_Principal.pas(9): F2047 Circular unit reference to 'unt_Principal' Is this message you wanna translate? http://imagebin.org/191738 ________________________________ William de Oliveira Ferreira Bacharel em Sistemas de Informa??o 2012/1/4 marcelo.bp I think Delphi uses the "circle" terminology. Can?t confirm right now, because i don?t have it installed here. Can anyone test it and report here? About the graph theory, can anyone point me a document or link? Just want to take a look. Regards, Marcelo. --

Reply by email

marcelo.bp
to Mattias Gaertner: On Thu, 5 Jan 2012 11:39:12 -0300 Infinite loop is a more mathematical term. Since some…

-----Mensagem Original-----

Earlier message 21 lines
From: Mattias Gaertner Sent: Thursday, January 05, 2012 11:00 AM To: Subject: Re: [Lazarus] Cycle vs. Circle errors >Infinite loop is a more mathematical term. Since some people find the >basics of computer science too special, I chose the word with the >broader meaning: endless. And as someone already pointed out: the first >hit for endless loop is infinite loop. In portuguese the translation for "endless" or "infinite" is the same "infinito" >Wikipedia has a lot of graph theory. Or just google for >backtracking, cycle detection, depth first search, shortest/longest >path algorithms. Any good programmer should know these >basic algorithms. Ok, thanks. Trying to be a good programmer, you know :) Marcelo.

Reply by email