Talk:Erlang (programming language)
From Wikipedia, the free encyclopedia
Contents |
[edit] Name origin
I believe Erlang was ERgonomic LANGuage ? --> never heard about that
"Erlang is named after A. K. Erlang. It is sometimes mistakenly thought that its name is as abbreviation of ERicsson LANGuage, owing to its heavy use inside Ericsson."
Well, it's quite a pun because Erlang was created inside Ericsson, so its name is an abbreviation of ERicsson LANGuage too.
[edit] Movie
It looks like "Erlang the Movie" was taken down from the Erlang website, whether due to bandwidth cost or to sheer embarrassment it's not clear. If it ever shows up at some permanent-looking address, I recommend a link here. I do have a copy, but I'd rather not publish it myself (not least due to copyright concerns). --—Ashley Y 10:52, 2005 Apr 16 (UTC)
- I removed the link some time ago - after seeing the size of this monster, I guessed only few would appreciate it. What was content of this movie? --Pavel Vozenilek 16:12, 16 Apr 2005 (UTC)
-
- It explains the features of Erlang. They make them clear by an example with a telephone central. --Ejabberd 22:50, 16 Apr 2005 (UTC)
- There's a torrent of the movie available here: http://thepiratebay.org/details.php?id=3425809 -- Björn Lindström 22:55, 4 January 2006 (UTC)
- Google video has an 11 minute version. I don't know if it is the same as the downloadble one. http://video.google.com/videoplay?docid=-5830318882717959520 --Joshd 08:52, 4 June 2006 (UTC)
[edit] trapexit.org
I'd commented out link to this website: it looks dead, discussion forum is completely down. On main Erlang list I read that something there broke down in January and it doesn't seem to be fixed. When (if) the things will get better please uncomment the link. Thanks. Pavel Vozenilek 14:27, 19 February 2006 (UTC)
18 Aug 2006: I put in the link to www.trapexit.org as we have revived it :) /Mazen @ trapexit.org
[edit] Criticism, Review, Comparison?
I was hoping this page would tell me if the language was any good :) I wanted to see a criticism section, a brief mention of it's strengths and weakenesses, or a comparison to other languages used for the same purpose. Mathiastck 01:55, 23 June 2006 (UTC)
[edit] Haskell Roots?
Does Erlang have an Haskell roots? Looking at quicksort, I'd say so, but I don't know. If so, what are they? --69.61.168.145 02:01, 20 August 2006 (UTC)
- Erlang predates Haskell by almost a decade. The similarity you observe between quicksort implementations is most likely because both languages are functional programming languages that emphasize recursion and provide good list manipulation capabilities. --Allan McInnes (talk) 04:15, 20 August 2006 (UTC)
-
- Thanks for the info. Do you know if Haskell borrowed from Erlang? My comment was mostly a syntatic comment. Quicksort in Lisp/Scheme or OCaml look, syntatically, nothing like Erlang/Haskell, at least to me.--69.61.168.145 03:32, 23 August 2006 (UTC)
-
-
- Here is what the Erlang FAQ has to say about the syntax:
- 10.3 Where does Erlang syntax come from?
- Mostly from prolog. Erlang started life as a modified prolog. ! as the send-message operator comes from CSP. Eripascal was probably responsible for , and ; being separators and not terminators.
- —Tobias Bergemann 09:17, 23 August 2006 (UTC)
- Here is what the Erlang FAQ has to say about the syntax:
-
-
-
- The Haskell syntax is mostly borrowed from Miranda and Hope. Given their very different roots I would be surprised if there were any direct borrowings between Erlang and Haskell. — Tobias Bergemann 09:24, 23 August 2006 (UTC)
-
[edit] Armstrong's thesis
I've added a link to Armstrong's thesis, as it is an essential Erlang reading Dmitriid 12:02, 25 August 2006 (UTC)
[edit] Requested move
Erlang programming language → Erlang (programming language) – Conformance with WP naming conventions LotLE×talk
- The following discussion is an archived debate of the proposal. Please do not modify it. Subsequent comments should be made in a new section on the talk page. No further edits should be made to this section.
The result of the debate was move as outlined. -- tariqabjotu 02:43, 7 September 2006 (UTC)
Note: This poll has been transcluded onto the talk pages of a number of individual programming languages, but is in fact a subpage of Wikipedia talk:WikiProject Programming languages. When you comment, please note that this survey is for multiple programming languages, not just the one you saw it on.
Some editors have proposed a general rename of articles named with the pattern "FOO programming language" to the pattern "FOO (programming language)". Please note that this poll only is applicable to those programming languages whose names alone would introduce ambiguity. For example, programming languages such as Java and C , whose names alone are ambiguous, would be at Java (programming language) and C (programming language), respectively. Unique names such as Fortran and COBOL, should remain at their respective simple names.
For instructions on how to add a poll participation request to additional applicable article talk pages, please see: Wikipedia talk:WikiProject Programming languages#Poll procedure
Please add "* Support" or "* Oppose" followed by an optional brief explanation, then sign your opinion with ~~~~
[edit] Voting
AbstainSupport - I initially abstained because I just wanted to get a procedure rolling. Looking at the first few comment, I support the rename. As with other editor, I only want this where ambiguity exists in the name: e.g. for "Python" but not for "Perl". Also, something like "Python programming language" would still redirect to "Python (programming language)" under the proposal, so existing links would not break. LotLE×talk 22:32, 1 September 2006 (UTC)- Support - However, I would object to specifying "programming language" anywhere in the title, as parenthetic remark or not, if the name of the language itself does not have any ambiguity issues. For example C programming language should change to C (programming language) (since C is already taken), but Fortran should stay at Fortran. --Serge 23:24, 1 September 2006 (UTC)
- Support - originator of the request; it would also meet the common names policy and also meet the disambiguation guideline. atanamir 23:32, 1 September 2006 (UTC)
- Oppose. The convention has been "<name of language> programming language" for quite a while and I don't think it helps by changing it now. There are already redirects in place for "<name> (programming language)" and it would only add more work to move them all there. Also, it goes against conventions in other media. In books related to programming on the copyright page where it sometimes has sorting information for the book many books say "Computers & Internet - <name> programming language I. Title" or something similar. - DNewhall 23:32, 1 September 2006 (UTC)
- Oppose. To quote Wikipedia:Disambiguation, "When there is another word (such as Cheque instead of Check) or more complete name that is equally clear (such as Titan rocket), that should be used.". It is undeniable that the "C programming language" is a widely-understood name, not just a description. There's a reason K&R's book is called The C Programming Language rather than C, a Programming Language. Diverse examples from other areas include French language, Titan rocket, sticking plaster, bread roll, contract bridge. What makes programming languages different from these topics? Deco 23:44, 1 September 2006 (UTC)
- If those articles were named like the programming languages are currently, they would have been something like sticking plaster dressing, bread roll food, and contract bridge card game. Titan rocket, in fact, is a redirect to Titan (rocket family). The natural languages are a slightly odd exception to the normal convention, but i'm not a linguist, and not about to argue with them. (I do know, however, that many non-English Wikipedias use the normal (parenthesized) disambiguation convention for natural languages.) --Piet Delport 13:40, 2 September 2006 (UTC)
- Apologies for the bad example - Titan rocket was moved since it turned out to be a rocket family, but others such as Angara rocket were not. The controlling question here is whether "C programming language" is a "more complete name" for C. I argue that it is, and so standing guidelines strongly support the current name. Deco 10:12, 3 September 2006 (UTC)
- I would argue that isn't. You can say "I play contract bridge" and "I use C", but not "I use C programming language". You can expand the names into noun phrases, as in "I play the contract bridge card game" and "I use the C programming language", but in both cases "the * card game" and "the * programming language" are not part of the name itself, anymore. --Piet Delport 06:04, 4 September 2006 (UTC)
- The presence or absence of a leading article is not a reliable indicator of whether it's a name or not, as indicated by French language, unless you wish to expand this proposal to move X language -> X (language) as well. Deco 06:28, 4 September 2006 (UTC)
- Definitely not something i'm interested in pursuing; let the linguists and editors involved with natural languages worry about their own naming convention. --Piet Delport 12:09, 4 September 2006 (UTC)
- The presence or absence of a leading article is not a reliable indicator of whether it's a name or not, as indicated by French language, unless you wish to expand this proposal to move X language -> X (language) as well. Deco 06:28, 4 September 2006 (UTC)
- I would argue that isn't. You can say "I play contract bridge" and "I use C", but not "I use C programming language". You can expand the names into noun phrases, as in "I play the contract bridge card game" and "I use the C programming language", but in both cases "the * card game" and "the * programming language" are not part of the name itself, anymore. --Piet Delport 06:04, 4 September 2006 (UTC)
- Apologies for the bad example - Titan rocket was moved since it turned out to be a rocket family, but others such as Angara rocket were not. The controlling question here is whether "C programming language" is a "more complete name" for C. I argue that it is, and so standing guidelines strongly support the current name. Deco 10:12, 3 September 2006 (UTC)
- If those articles were named like the programming languages are currently, they would have been something like sticking plaster dressing, bread roll food, and contract bridge card game. Titan rocket, in fact, is a redirect to Titan (rocket family). The natural languages are a slightly odd exception to the normal convention, but i'm not a linguist, and not about to argue with them. (I do know, however, that many non-English Wikipedias use the normal (parenthesized) disambiguation convention for natural languages.) --Piet Delport 13:40, 2 September 2006 (UTC)
- Support - due to its name being "Ruby". --Yath 01:31, 2 September 2006 (UTC)
- Support - this is the standard way that most Wikipedia articles are named. Use the common name and disambiguate appropriately using parentheses when necessary. --Polaron | Talk 01:43, 2 September 2006 (UTC)
- Oppose - For the same reasons as DNewhall. Chris Burrows 02:11, 2 September 2006 (UTC)
- Oppose — Per Deco, I don't see how adding parentheses to an article title which is already clear is an improvement. --Craig Stuntz 02:47, 2 September 2006 (UTC)
- Support -- Crypotography has had much the same problem for some time. It has adopted the "<topic> (cryptography)" approach which has worked well. Not elegant perhaps, but ... ww 05:20, 2 September 2006 (UTC)
- Oppose — Either way, there should be a second link so that both "C (programming language)" and "C programming langage" produce the C article. My main reason for opposing is that it isn't really consistent with the new "C programming language, criticism" page that was spun off the main C article; what would that name turn into? By the way, the official standard name is "programming language C", but to me that sounds too much like "PL/C" which would be wrong. Deco's remark is quite right. — DAGwyn 07:56, 2 September 2006 (UTC)
- Comment. This proposal is different from the original proposal, found here, which is now understood as having unanimous consensus in favour. Please do not interfere with the original proposition by misrepresenting it and opening a straw poll here, which can only serve to undermine the usefulness of the original proposal. It would have been much better to simply post a link. - Samsara (talk • contribs) 09:40, 2 September 2006 (UTC)
- The original proposal seems pretty wacko to me, and I don't see any evidence of a consensus. As I understand it, this current section is not a "straw poll", but a genuine attempt to determine whether or not to move the C article to a new name, independently of whether that wacko proposal is accepted. — DAGwyn 09:53, 2 September 2006 (UTC)
- Oppose - As per Deco, if syntactically correct name is enough for disambiguation, it should be preferred. And also, without parentheses it's more pythonic (readability counts). Samohyl Jan 10:24, 2 September 2006 (UTC)
- Strong Support — The current convention is at odds with the rest of Wikipedia, and as cumborsome as it would have been to have things like Quicksilver novel, Manowar band, and Darwin operating system. --Piet Delport 13:28, 2 September 2006 (UTC)
- Support. Needs disambiguating, and the name seems to be to be currently misleading. --maru (talk) contribs 19:25, 2 September 2006 (UTC)
- In what way is "C programming language" misleading? I can't think of a more natural title for such an article. — DAGwyn 05:48, 4 September 2006 (UTC)
- Support.
Those opposing oftenSome of those opposing assume that the poll is about deleting the "X programming languages" links - this is not correct. Nor is the intention to move names which are unambiguous, such as Fortran. Aaron McDaid (talk - contribs) 23:06, 2 September 2006 (UTC)- For the record, I do not make either of these assumptions, and continue to oppose on the stated grounds. Deco 10:10, 3 September 2006 (UTC)
- I didn't intend to imply that there weren't other reasons for opposing. Thanks for pointing that out Deco. Aaron McDaid (talk - contribs) 10:33, 3 September 2006 (UTC)
- Don't worry about it - I appreciate your clarification that these are not valid grounds for opposition. Deco 10:38, 3 September 2006 (UTC)
- I didn't intend to imply that there weren't other reasons for opposing. Thanks for pointing that out Deco. Aaron McDaid (talk - contribs) 10:33, 3 September 2006 (UTC)
- For the record, I do not make either of these assumptions, and continue to oppose on the stated grounds. Deco 10:10, 3 September 2006 (UTC)
- Support per Piet Delport. -- Earle Martin 23:35, 2 September 2006 (UTC)
- Support per Earle Martin. -- Fredrik Johansson 12:54, 3 September 2006 (UTC)
- Support per Piet Delport. – Smyth\talk 14:33, 3 September 2006 (UTC)
- strong support. Piet Delport puts it well. Programming language articles should be disambiguated the same way that other Wikipedia articles are. — brighterorange (talk) 18:15, 4 September 2006 (UTC)
- EMPHATIC Support I've wanted this to happen for a long time now. Per Piet Delport. RN 10:34, 5 September 2006 (UTC)
[edit] Discussion
[edit] Response to DNewhall's comment
In order to reduce clutter in the voting section, i've deicded to respond to DNewhall's vote here. If you're afraid of the amount of work it would take to move the articles, I can move most of them and i'm sure there are other editors willing to take up the task. Also, most books about programming languages simply have the title or common name of the programming language as the title of the book -- the Wrox series uses "Professional PHP" or "professional Java", not "professional PHP programming language" or "professional Java programming langauge". Many of the books I have also have the sorting information as "Computers -- Programming languages -- X," where X is the programming language. atanamir 23:36, 1 September 2006 (UTC)
- The main issue is not that I'm afraid of the work but that it'll be a lot of work with next to no perceived benefit. Both "Euphoria programming language" and "Euphoria (programming language)" go to the same page and I (and others apparently) fail to see how that is an improvement over the current convention. The text is exactly the same, you're just adding parentheses. No one is going to get confused about the lack of parentheses (also remember that the names with parentheses already have redirects in place). Is "<name> (programming language)" a more correct title for the article? Arguably. Is it worth the effort of moving all the pages over from their perfectly understandable title to a title that already has a redirect in place for it? No. - DNewhall 16:10, 2 September 2006 (UTC)
-
- I think you misunderstand the point of stylistic consistency on Wikipedia. Any one article in isolation would be fine under either convention; in fact, if the project was only the one article on, e.g. "C programming language" there would be no contrast with all the other uses of parens for disambiguation. But if WP (or some subset) was prepared for print or other syndication, having relatively consistent stylistic choices helps a lot (article naming is, of course, just one small issue among many others, of course). The work involved in a rename would, obviously, be a tiny fraction of the work involved in discussing the question, so that is "vanishingly insignificant". LotLE×talk 16:42, 2 September 2006 (UTC)
-
-
- When it comes to C, we need to clear and distinct names for the articles on the programming language article and for the book. C (programming language) and The C Programming Language (book) are those two names. They are unambiguous and (or is that because?) they conform with the Wikipedia standard. Anything else should be a redirect to one or disambig page to both. 'C programming language' should redirect to the language and 'C Programming Language' to the book or a disambig page. The existence of a book called 'The C Programming Language' is actually an argument in Support. Aaron McDaid (talk - contribs) 12:49, 4 September 2006 (UTC)
- ... Appending to own comment ... It's never referred to directly as 'C programming language'. It's always 'C' or 'the C programming language. Note the ' the '. The latter is of the form 'the X Y' where X is the name and Y is the type of object. 'the X Y' (or even 'X Y') is not a new name for the object, simply a way to refer to X where there may be some ambiguity. Aaron McDaid (talk - contribs) 13:07, 4 September 2006 (UTC)
- When it comes to C, we need to clear and distinct names for the articles on the programming language article and for the book. C (programming language) and The C Programming Language (book) are those two names. They are unambiguous and (or is that because?) they conform with the Wikipedia standard. Anything else should be a redirect to one or disambig page to both. 'C programming language' should redirect to the language and 'C Programming Language' to the book or a disambig page. The existence of a book called 'The C Programming Language' is actually an argument in Support. Aaron McDaid (talk - contribs) 12:49, 4 September 2006 (UTC)
-
[edit] Repsonse to Deco's comment
Imagine if you have a set of objects which all fall under the same category -- let's say they're all different types of Widgets. The types are Alboo, Kabloo, Hello, Wawoob, Baboon, Choogoo, Chimpanzee, etc. Because some will cause ambiguity -- Hello, Baboon, and Chimpanzee -- they need to be disambiguated. However, since the common name (in this case, the real name) is "Hello," "Baboon," and "Chimpanzee," wikipedia has an established precedent of using parentheses. Thus, the unique widgets, Alboo, Kabloo, Wawoob, Coogoo, can have articles simply at the name itself; but the ambiguous names should have articles at Hello (widget), Baboon (widget), and Chimpanzee (widget). Thus, the article titles will be uniform in that they are all "at" the name itself, but with a disambiguator on several of them. This is easier than making all of the articles at Alboo widget, Kabloo widget, Hello widget, etc. Also, it allows for the pipe trick, so links can easily be made with [[Hello (widget)|]] --> Hello. atanamir 23:54, 1 September 2006 (UTC)
- an example of this that's currently on wikipedia is colours. Some colours, such as Blue, Brown, and Red are at their articles, but colours like Orange (color) need the disambiguation part on them. It isn't at Orange color, althouh there is a redirect -- we can do the same thing with redirects. atanamir 23:57, 1 September 2006 (UTC)
- also, your examples -- Titan rocket is a redirect for Titan (rocket family). Your other examples do not incite ambiguity, otherwise they'd be at places like Contract bridge (card game) atanamir 00:33, 2 September 2006 (UTC)
- Titan rocket may now be a redirect, since it turned out to be a family of rockets rather than a single rocket, but there are still many rockets named that way (e.g. Angara rocket) and it's still cited on Wikipedia:Disambiguation specifically. The miniscule convenience of the pipe trick is not a reason for anything. My point is that this is a much wider concern than programming languages alone and represents a significant departure from the disambiguation guidelines. It would be radical to make such changes in a single area without raising them to the wider community, when your argument seems to apply to everything. The point of contract bridge and bread roll is that the more common names for these topics are "bridge" and "roll". Deco 07:48, 2 September 2006 (UTC)
[edit] Simpler disambiguation
Even if we add the parentheses, the guideline at Wikipedia:Disambiguation#Specific topic makes sense to me:
If there is a choice between disambiguating with a generic class or with a context, choose whichever is simpler. Use the same disambiguating phrase for other topics within the same context.
- For example, "(mythology)" rather than "(mythological figure)".
In this case, we could have the simpler and more widely applicable "(computing)" instead of the long "(programming language)". --TuukkaH 10:04, 2 September 2006 (UTC)
- I agree with the sentiment, but i think "(computing)" is too wide, with way too much opportunity for clashes:
- Curl versus cURL
- Curry versus Currying
- Icon versus Icon (computing)
- Leopard versus Leopard (DHT)
- Mercury versus Mercury (computer)
- Nice versus nice (Unix)
- Pico versus Pico (text editor)
- Ruby versus Ruby (hardware description language)
- "(programming language)" might lean towards the long side, but i don't think any alternative class comes close to being as simultaneously large, well-defined and well-populated. --Piet Delport 15:14, 2 September 2006 (UTC)
-
- I agree that if we were to use parentheses, "(computing)" is not specific enough. Your examples are excellent, particularly "Icon", which clashes with an already-existing article! Deco 10:40, 3 September 2006 (UTC)
-
-
- Perhaps you're right in that it's not specific enough. On the other hand, the disambiguation can never be perfect as there are several programming languages that share a name: NPL has three programming languages, The Language List has four programming languages called G. What about "(language)" then? --TuukkaH 22:02, 3 September 2006 (UTC)
- "Language" connotes something rather different from "programming language". "Lisp (language)" for example. "Programming language" is the accepted category in the industry, abbreviated to "PL" quite often in discussions (whereas "L" is never used for this). — DAGwyn 05:59, 4 September 2006 (UTC)
- Perhaps you're right in that it's not specific enough. On the other hand, the disambiguation can never be perfect as there are several programming languages that share a name: NPL has three programming languages, The Language List has four programming languages called G. What about "(language)" then? --TuukkaH 22:02, 3 September 2006 (UTC)
-
- What about just "(programming)"? Or is that too ambiuguous as well? atanamir 02:39, 5 September 2006 (UTC)
- The above discussion is preserved as an archive of the debate. Please do not modify it. Subsequent comments should be made in a new section on this talk page. No further edits should be made to this section.
[edit] Pages like C programming language, criticism
To meet the new standard, the pages should be moved to something like Criticism of C (programming language), right? examples are Georgia (U.S. State) and Politics of Georgia (U.S. state). atanamir 02:42, 5 September 2006 (UTC)
- Depends on the page in question, most likely; some would work like above, some (like C syntax) wouldn't require any changes, and some might want to use a different method to disambiguate. --Piet Delport 05:55, 5 September 2006 (UTC)
- Agreed with Piet; only the ones that would incite ambiguity -- simply "Criticism of C" would have ambiguity, but "C syntax" or "Syntax of C" are both rather unambiguous and would not need change. atanamir 06:01, 5 September 2006 (UTC)
- Surely, criticism of C is pretty unique and should be the article? Are there any other C's that would be criticized? Aaron McDaid (talk - contribs) 21:41, 5 September 2006 (UTC)
- I agree that the most likely "C" to be criticised is the programming language, but some may be looking for a criticism of the letter or magazine. Unlikely, but possible. This decision would be left up to the community, though. atanamir 01:57, 6 September 2006 (UTC)
- As of now, there is only one C that is criticized on Wikipedia, and I am not aware of anyone wanting to write an article criticizing any other Cs. Therefore, criticism of C is unique. The Wikipedia standard is to only disambiguate when necessary. That article should be moved to criticism of C at some point, but we should let this debate finish first. Aaron McDaid (talk - contribs) 09:16, 6 September 2006 (UTC)
- For the record, "Criticism of C" didn't even exist until I created the redirect yesterday. Was kind of surprised because it was at that wierd, longish name and is a pretty good article :). RN 10:19, 6 September 2006 (UTC)
- The C criticism article was split off from the main C article, where it had previously been embedded, in response to a requirement in order for the main C article to be designated a "Good Article". I picked the name with the idea that it was a sub-article of the main one. Once the discussion has settled, I don't object to some reasonable renaming, so long as the links between the two articles are fixed up so they still point to each other. — DAGwyn 21:51, 6 September 2006 (UTC)
- Aaargh! Whoever just renamed the main C article ignored this linking issue. I have edited the C criticism article so its link to the C article does not have to redirect. — DAGwyn 20:20, 7 September 2006 (UTC)
- The C criticism article was split off from the main C article, where it had previously been embedded, in response to a requirement in order for the main C article to be designated a "Good Article". I picked the name with the idea that it was a sub-article of the main one. Once the discussion has settled, I don't object to some reasonable renaming, so long as the links between the two articles are fixed up so they still point to each other. — DAGwyn 21:51, 6 September 2006 (UTC)
- I agree that the most likely "C" to be criticised is the programming language, but some may be looking for a criticism of the letter or magazine. Unlikely, but possible. This decision would be left up to the community, though. atanamir 01:57, 6 September 2006 (UTC)
- Surely, criticism of C is pretty unique and should be the article? Are there any other C's that would be criticized? Aaron McDaid (talk - contribs) 21:41, 5 September 2006 (UTC)
- Agreed with Piet; only the ones that would incite ambiguity -- simply "Criticism of C" would have ambiguity, but "C syntax" or "Syntax of C" are both rather unambiguous and would not need change. atanamir 06:01, 5 September 2006 (UTC)
- The term "criticism" should not be used (I've stated reasons for this on Talk:C (programming language); the more accurate term of "analysis" or something similar should be used. Dysprosia 03:54, 7 September 2006 (UTC)
- You also received feedback to the effect that criticism doesn't have to be negative, that the article is fairly balanced, and that a list of limitations has to seem somewhat negative no matter how well-intentioned it may be. The C criticisms article is not at all a complete analysis of the language, just a description of the many characteristics of C that have drawn reasonable criticism. Since C is so popular and wide-spread, it is a target for a lot of sniping and second-guessing, and it is undeniable that that has happened, which is part of what the C criticism article specifically addresses. One of the useful functions of the C criticism page is to bring some balance to that criticism. — DAGwyn 20:20, 7 September 2006 (UTC)
- I also responded to that comment by saying (and I'll repeat the comment here for the benefit of readers of this page) that the term "criticism" still has primarily a negative connotation and that because of this it is an undesirable term. The article in question has the potential to contain discussion on design points on the language and opinions on those who comment on these design points. That is an analysis of the design of the language, and has the potential to encompass views from all points on the spectrum on the matter. Dysprosia 07:43, 8 September 2006 (UTC)
- You also received feedback to the effect that criticism doesn't have to be negative, that the article is fairly balanced, and that a list of limitations has to seem somewhat negative no matter how well-intentioned it may be. The C criticisms article is not at all a complete analysis of the language, just a description of the many characteristics of C that have drawn reasonable criticism. Since C is so popular and wide-spread, it is a target for a lot of sniping and second-guessing, and it is undeniable that that has happened, which is part of what the C criticism article specifically addresses. One of the useful functions of the C criticism page is to bring some balance to that criticism. — DAGwyn 20:20, 7 September 2006 (UTC)
-
-
-
- I just want to chip in that i agree with DAGwyn that "criticism" does not carry negative any primarily negative connotations in this context. As the criticism article says:
- "In literary and academic contexts, the term most frequently refers to literary criticism, art criticism, or other such fields, and to scholars' attempts to understand the aesthetic object in depth."
- There are certain fields ("In politics, for instance [...]") where "criticism" connotes mainly negative criticism, but it should be reasonably clear that encyclopedias won't limit themselves to that. --Piet Delport 23:32, 10 September 2006 (UTC)
- Technically, it shouldn't carry any as you suggest but most seem to think it is a dumping ground for it. I would recommend "Analysis" as that's what I'm doing for criticism page I watch. RN 23:43, 10 September 2006 (UTC)
- I just want to chip in that i agree with DAGwyn that "criticism" does not carry negative any primarily negative connotations in this context. As the criticism article says:
-
-
-
-
-
-
-
- "Analysis" usually implies something more formal, complete and reductionistic, though. Is that what the article is aiming for? --Piet Delport 00:00, 11 September 2006 (UTC)
-
-
-
-
-
-
-
-
-
-
- It doesn't need to imply that. The article in question however should aim to examine as many viewpoints on as many language points as possible. Dysprosia 02:33, 11 September 2006 (UTC)
-
-
-
-
-
[edit] Mnesia
"Mnesia" redirects here, but this page does not explain it, and has a "see also" link to this redirect.
[edit] About typing
The article says Erlang uses single assignment and dynamic typing. Aren't these two characteristics mutually exclusive? --Pezezin 17:07, 18 November 2006 (UTC)
- No. Single assignment means that a name can have a value bound to it only once within a given scope. But it doesn't place any limits on what the type of the value being bound has to be. So I can write
-module(test). -export([testassign1/1, testassign2/1]). testassign1(A) -> B = A, B. testassign2(A) -> B = 1, B = A, B.
- and when I use these functions
testassign1
works just fine for values of various types
Eshell V5.5 (abort with ^G) 1> c(test.erl). {ok,test} 2> test:testassign1(256). 256 3> test:testassign1(3.1415927). 3.14159 4> test:testassign1("some text"). "some text"
- but
testassign2
spits up an error, since it's trying to bind a value to B twice
6> test1:testassign2(256). =ERROR REPORT==== 18-Nov-2006::18:33:41 === Error in process <0.31.0> with exit value: {{badmatch,256},[{test1,testassign2,1},{shell,exprs,6},{shell,eval_loop,3}]} ** exited: {{badmatch,256}, [{test1,testassign2,1},{shell,exprs,6},{shell,eval_loop,3}]} **
- As the example above shows, the function
testassign2
will fail even when the type of the new value I'm trying to bind is the same as the type that B is already bound to. The error isn't a type error, it's an attempt to assign different values to B. The only timetestassign2
doesn't generate an error is when the value passed to it is the same as the value it internally binds to B - in that case the second "assignment" simply confirms that B is already bound to '1'.
8> test1:testassign2(1). 1
- Dynamic typing means that the types of the values bound to a name aren't checked until runtime (dynamically). That means that I can write
-module(test). -export([testtypes/1]). testtypes(A) -> B = if A > 0 -> 5; A =< 0 -> "some text" end, A + B.
- which sometimes binds the value '5' to the name 'B', and other times binds "some text" to 'B'. This will compile just fine (you can try it if you install Erlang).
Eshell V5.5 (abort with ^G) 1> c(test.erl). {ok,test}
- But when I run the function
testtypes
I get an error when I pass it negative values, since addition isn't defined for the the string type.
2> test:testtypes(3). 8 3> test:testtypes(-3). =ERROR REPORT==== 18-Nov-2006::18:24:23 === Error in process <0.31.0> with exit value: {badarith,[{test,testtypes,1},{erl_eval,do_apply,5},{shell,exprs,6},{shell,eval_loop,3}]} ** exited: {badarith,[{test,testtypes,1}, {erl_eval,do_apply,5}, {shell,exprs,6}, {shell,eval_loop,3}]} **
- A statically checked language (like say Haskell) would have caught that problem at compile-time rather than runtime.
- Hope that clarifies things some. --Allan McInnes (talk) 01:51, 19 November 2006 (UTC)