Jump to content

Talk:Parser combinator: Difference between revisions

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
Content deleted Content added
Jonhanson (talk | contribs)
No edit summary
Jonhanson (talk | contribs)
mNo edit summary
Line 28: Line 28:
The first sentence states that this idea is limited to functional programming, but several of the examples linked in the external links are to implementations that are not functional (e.g. the Java implementation of Parsec, which uses object composition as a replacement for first-class functions and monads). In general, the idea is not specific to functional programming, although it did originate in that field. I believe it should be changed to [[computer science]] rather than functional programming. Comments? [[Special:Contributions/212.159.69.4|212.159.69.4]] ([[User talk:212.159.69.4|talk]]) 14:30, 1 January 2016 (UTC)
The first sentence states that this idea is limited to functional programming, but several of the examples linked in the external links are to implementations that are not functional (e.g. the Java implementation of Parsec, which uses object composition as a replacement for first-class functions and monads). In general, the idea is not specific to functional programming, although it did originate in that field. I believe it should be changed to [[computer science]] rather than functional programming. Comments? [[Special:Contributions/212.159.69.4|212.159.69.4]] ([[User talk:212.159.69.4|talk]]) 14:30, 1 January 2016 (UTC)


As the article states, a combinator is higher order function. I.e. parser combinators are specific to functional programming. They might have application outside of FP, but their use originated in FP, and continue to be are predominantly used there. JParsec might be inspired by Parsec but doesn't appear to actually use combinators. See also <ref>http://www.cs.nott.ac.uk/~pszgmh/monparsing.pdf</ref> - "In functional programming, a popular approach to building recursive descent parsers is
As the article states, a combinator is higher order function. I.e. parser combinators are specific to functional programming. They might have application outside of FP, but their use originated in FP, and they continue to be used predominantly there. JParsec might be inspired by Parsec but doesn't appear to actually use combinators. See also <ref>http://www.cs.nott.ac.uk/~pszgmh/monparsing.pdf</ref> - "In functional programming, a popular approach to building recursive descent parsers is
to model parsers as functions, and to define higher-order functions (or combinators) that implement grammar constructions...".
to model parsers as functions, and to define higher-order functions (or combinators) that implement grammar constructions...".



Revision as of 22:03, 8 February 2016

WikiProject iconComputer science Unassessed
WikiProject iconThis article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
???This article has not yet received a rating on Wikipedia's content assessment scale.
???This article has not yet received a rating on the project's importance scale.
Things you can help WikiProject Computer science with:

Quote: "To keep the discussion relatively straight forward, we discuss parser combinators in terms of recognizer only" - this and other language looks like it is lifted straight out of an academic paper. Although this is a pretty rarefied subject perhaps some small edits would make this article sound slightly more like an encyclopedia, and less like a paper. I can't do it myself because I am far too ignorant on the subject to avoid changing the articles meaning in tandem with changing its style. 62.140.194.147 (talk) 14:19, 10 March 2010 (UTC)[reply]

You can do the changes, just learn: what a combinator is, which is a little confusing in the article, and find some simple examples of parsers. Learn about the problem of left recursion, and you are done. Good lock! I wont do it by my self because I in other articles my collaborations were erased due to be not in the wikipedia style, looking more academic. See my protest bellow.

This article now actually explains what a parser combinator is and does, something I felt it was lacking previously. 87.115.114.221 (talk) 23:34, 24 September 2011 (UTC) It is not totally correct your definition, learn what a combinator is, they are not called combinators because they combine functions, read an authoritative book like Barendregt's lambda-calculus book. Any way thanks for your enthusiasm.[reply]

I find this article fairly biased. Although I do not wish to diminish their achievements, the focus on Frost et al.'s research seems exaggerated and not suitable for an encyclopedia article. — Preceding unsigned comment added by Dominique.devriese (talkcontribs) 11:54, 18 June 2012 (UTC)[reply]

No, Dominique, this subject is not about politics where a left or right wing bias is detectable.
Who wrote this article was worried about a problem that consist of a non terminating parsing, due to left recursion (that is computer science, so you do not have to worry about that bias).
The person who wrote the article learned it in an article that presents a way to avoid this problem. That is not bad. This article should be expanded to explain the combinators way to write parsers, the advantages and disadvantages. But that sounds to lengthily to many volunteers who mutilate the articles because they support the trend that wikipedia should have only short superficial articles. If you think you can judge an article like this as biased, write it your self, spend some time searching about the subject and write your own perfect article.

wikipedia is an encyclopedia not an illustrated dictionary

I wanted to make some changes in this article to make it more clear. A work I won't do, because guys who do not know about the subject, don't look it fine by ignorance of the subject, and based in very absurd dogmas, of what should a wikipedia article look like. A criteria which in infecting this site with the trend to give a very superficial treatment to every subject. An encyclopedia is not an illustrated dictionary, it should enclose all human knowledge. Before some wiki-policeperso, come to erase my colaboration, I will refrain to improve any article in a subject I know (like this one) until that emerging policy is eradicated from wikipedia. Sorry guys but I perceive as threat comments like: I see above as seeing this article as biased, just because the bibliography or that looks like a paper and not an encyclopedia entry. I will not spend my time to wait that the skilled wiki-police, that place alarms on pages they are watching, come to erase all new information in the subject as soon as I have entered it.

I had that experience several times. Now I just protest for that attitude which I suspect is paid by commercial encyclopedia competitors. And I have decided to warn my students to not trust in wikipedia, due to such pseudo-official vandalism, by self-named authorities. Stop that actions and I will come back again to improve, not to oversimplify the subjects I know about.

In functional programming?

The first sentence states that this idea is limited to functional programming, but several of the examples linked in the external links are to implementations that are not functional (e.g. the Java implementation of Parsec, which uses object composition as a replacement for first-class functions and monads). In general, the idea is not specific to functional programming, although it did originate in that field. I believe it should be changed to computer science rather than functional programming. Comments? 212.159.69.4 (talk) 14:30, 1 January 2016 (UTC)[reply]

As the article states, a combinator is higher order function. I.e. parser combinators are specific to functional programming. They might have application outside of FP, but their use originated in FP, and they continue to be used predominantly there. JParsec might be inspired by Parsec but doesn't appear to actually use combinators. See also [1] - "In functional programming, a popular approach to building recursive descent parsers is to model parsers as functions, and to define higher-order functions (or combinators) that implement grammar constructions...".

____