Browse files


  • Loading branch information...
2 parents cb9e11c + 0c168ce commit eedaeb985cee2ee342c7d1bf437dc8eb2eabf526 @tvdstorm tvdstorm committed Mar 21, 2012
Showing with 14 additions and 2 deletions.
  1. +0 −2 doc/papers/data/ensodata.tex
  2. +14 −0 doc/papers/grammar/ensogrammars.tex
2 doc/papers/data/ensodata.tex
@@ -51,8 +51,6 @@
14 doc/papers/grammar/ensogrammars.tex
@@ -21,11 +21,25 @@
+<<<<<<< HEAD
\enso is a programming environment based on interpretation of
domain-specific languages (DSLs). The abstract syntax of a DSL is
represented as an object-oriented information model. We present a
detailed description of \enso grammars, which are used to serialize
and deserialize such models to and from textual representation.
+ \enso is a programming system based on definition, interpretation, and composition of
+ domain-specific languages (DSLs). In \enso, the problem of parsing and pretty-printing
+ is viewed as a potentially complex mapping between abstract models and textual presentations.
+ \enso grammars enable both parsing and printing by specifying both the abstract model
+ structure and the textual presentation declaratively. The system supports automatic
+ resolution of names to handle cases where the abstract model is a graph, but the
+ text presentation uses names to connect concepts. Predicates on the abstract model
+ can be used to provide additional control over the mapping. The \enso parser handles arbitrary
+ context-free grammars, which facilitates composition of grammars.
+ Finally, we show how grammars can be checked statically for consistency with the
+ corresponding abstract model structure.
+>>>>>>> 0c168ceb6911dbd549060dffe329eb908c01c9d1
\category{D.x.y}{Programming Languages}{To be done}

0 comments on commit eedaeb9

Please sign in to comment.