Skip to main content
edited body
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179

Test the parser pLOVEFOOD for the highest level rule (  <lovefood>) with a list of sentences:

Test the parser pLOVEFOOD for the highest level rule (  ) with a list of sentences:

Test the parser pLOVEFOOD for the highest level rule (<lovefood>) with a list of sentences:

deleted 1 character in body
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179

Give an EBNF description of a DSL for food craviingscravings:

Generate parsesparsers from EBNF string:

Give an EBNF description of a DSL for food craviings:

Generate parses from EBNF string:

Give an EBNF description of a DSL for food cravings:

Generate parsers from EBNF string:

replaced http://mathematica.stackexchange.com/ with https://mathematica.stackexchange.com/
Source Link

As Leonid mentions in one of his answersone of his answers one of the methods of managing complexity is using Domain Specific Languages (DSLs). In this answer I will provide links to documents, packages, blog posts, and discussions of creating and utilizing DSLs in Mathematica.

  1. This answerThis answer to the question "How to parse a clojure expression?""How to parse a clojure expression?" provides two concise examples of programming and/or generating parsers for a small grammar.

  2. A small part, from 17:30 to 21:00, of the WTC 2012 "Spatial Access Methods and Route Finding" presentation shows a DSL for points of interest queries.

  3. The answeranswer of the MSE question "CSS Selectors for Symbolic XML""CSS Selectors for Symbolic XML" uses FunctionalParsers.m.

As Leonid mentions in one of his answers one of the methods of managing complexity is using Domain Specific Languages (DSLs). In this answer I will provide links to documents, packages, blog posts, and discussions of creating and utilizing DSLs in Mathematica.

  1. This answer to the question "How to parse a clojure expression?" provides two concise examples of programming and/or generating parsers for a small grammar.

  2. A small part, from 17:30 to 21:00, of the WTC 2012 "Spatial Access Methods and Route Finding" presentation shows a DSL for points of interest queries.

  3. The answer of the MSE question "CSS Selectors for Symbolic XML" uses FunctionalParsers.m.

As Leonid mentions in one of his answers one of the methods of managing complexity is using Domain Specific Languages (DSLs). In this answer I will provide links to documents, packages, blog posts, and discussions of creating and utilizing DSLs in Mathematica.

  1. This answer to the question "How to parse a clojure expression?" provides two concise examples of programming and/or generating parsers for a small grammar.

  2. A small part, from 17:30 to 21:00, of the WTC 2012 "Spatial Access Methods and Route Finding" presentation shows a DSL for points of interest queries.

  3. The answer of the MSE question "CSS Selectors for Symbolic XML" uses FunctionalParsers.m.

Added link to the Method option answer.
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
Updated discussions section
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
added 234 characters in body
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
added 35 characters in body
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
Better grammar and explanations.
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
Added links to R and Lua implementations of FunctionalParsers.m .
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
added 172 characters in body
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
added 10 characters in body
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
Better descriptions.
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
Added parser generation code and interpreters.
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
added 87 characters in body
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
added 261 characters in body
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading
Source Link
Anton Antonov
  • 38k
  • 3
  • 103
  • 179
Loading