Filters








336 Hits in 1.9 sec

An on-the-fly grammar modification mechanism for composing and defining extensible languages

Leonardo V.S. Reis, Vladimir O. Di Iorio, Roberto S. Bigonha
2015 Computer languages, systems & structures  
Adaptable Parsing Expression Grammar (APEG) is a formal method for defining the syntax of programming languages.  ...  It provides an on-the-fly mechanism to perform modifications of the syntax of the language during parsing time.  ...  Support for integrating APEG with IDEs and offering facilities to language-based tools, such as debugging and syntax highlighting, are also important future work.  ... 
doi:10.1016/j.cl.2015.01.002 fatcat:u5e3o7ox5rcoxactg2eww36vom

Adaptable Parsing Expression Grammars [chapter]

Leonardo Vieira dos Santos Reis, Roberto da Silva Bigonha, Vladimir Oliveira Di Iorio, Luis Eduardo de Souza Amorim
2012 Lecture Notes in Computer Science  
The Syntax of Fortress The main goals of the design of the Fortress language were to emulate mathematical syntax and to be extensible [Allen et al., 2009 ].  ...  Fortress allows the use of the syntax of A in the action part of B, as in line 6.  ...  Adaptability at a Low Complexity Cost Our model allows changing the grammar at parse time and it has a syntax as clear as Christiansen's Adaptable Grammars, because the same principles are used.  ... 
doi:10.1007/978-3-642-33182-4_7 fatcat:nrlhxpg2mzce7n5oa3bqsakoye

The formalization and implementation of Adaptable Parsing Expression Grammars

Leonardo V.S. Reis, Roberto S. Bigonha, Vladimir O. Di Iorio, Luis Eduardo S. Amorim
2014 Science of Computer Programming  
h i g h l i g h t s • We propose an adaptable model based on Parsing Expression Grammars. • We added attributes to PEG so extensibility is achieved by means of grammar attributes. • The model is formally  ...  Fig. 8 . 8 Syntax of block with declaration and use of variables (simplified). Fig. 9 . 9 Adaptable PEG for declaration and use of variables. Fig. 10 . 10 Fortress syntax grammar.  ...  It is an adapted version of the original grammar proposed in the open source Fortress project, considering only the parts related to syntax extension.  ... 
doi:10.1016/j.scico.2014.02.020 fatcat:iqhdlprtrfcvxc4na33mif3vm4

Growing a Language in Pattern Calculus

Barry Jay, Jose Vergara
2013 2013 International Symposium on Theoretical Aspects of Software Engineering  
that supports mixing of all the programming styles required for language implementation, including imperative programming (for handling input streams), functional programming (for transforming abstract syntax  ...  illustrated by growing a small combinatory language in which each language feature, i.e. each production of each grammar, is isolated within a single object-oriented class that captures the rules for parsing  ...  For example, grammar K extends { Expression, Type } Expr |:= { K } => <[ fn x => fn y => x ]> end displays Fortress syntax that could be used to implement the K operator, with K expanded to the core syntax  ... 
doi:10.1109/tase.2013.37 dblp:conf/tase/JayV13 fatcat:ehufdakoajhb7jb63x32q5hkry

SugarJ

Sebastian Erdweg, Tillmann Rendel, Christian Kästner, Klaus Ostermann
2011 Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications - OOPSLA '11  
SugarJ employs a novel incremental parsing technique, which allows changing the syntax within a source file.  ...  A fundamental difference to SugarJ is the lack of self-applicability for syntactic extensions in Fortress. Fortress parses all grammar extensions in one go using the base grammar.  ...  It is unclear whether a similar embedding of XML Schema is possible in Fortress.  ... 
doi:10.1145/2048066.2048099 dblp:conf/oopsla/ErdwegRKO11 fatcat:oj5xcaa5qjg5ni2xbgb4elpece

SugarJ

Sebastian Erdweg, Tillmann Rendel, Christian Kästner, Klaus Ostermann
2011 SIGPLAN notices  
SugarJ employs a novel incremental parsing technique, which allows changing the syntax within a source file.  ...  A fundamental difference to SugarJ is the lack of self-applicability for syntactic extensions in Fortress. Fortress parses all grammar extensions in one go using the base grammar.  ...  It is unclear whether a similar embedding of XML Schema is possible in Fortress.  ... 
doi:10.1145/2076021.2048099 fatcat:5xbgyf64qzeyti3m6x3hm3esui

Honu

Jon Rafkind, Matthew Flatt
2012 Proceedings of the 11th International Conference on Generative Programming and Component Engineering - GPCE '12  
A key element of Honu's design is an enforestation parsing step, which converts a flat stream of tokens into an S-expressionlike tree, in addition to the initial "read" phase of parsing and interleaved  ...  We present the design of Honu, explain its parsing and macro-extension algorithm, and show example syntactic extensions.  ...  Honu adds a precedence-based parsing step to a Lisp-like parsing pipeline to support infix operators and syntax unconstrained by parentheses.  ... 
doi:10.1145/2371401.2371420 dblp:conf/gpce/RafkindF12 fatcat:sbkmdzvzxjfg7oefff63wkkemu

XPL: A language for modular homogeneous language embedding

Tony Clark
2015 Science of Computer Programming  
SLE languages offer features for constructing and processing syntax and defining the semantics of language features.  ...  Emerging languages such as Fortress [7] include language extension mechanisms. Although there are many different technologies that support SLE, they have many similar features.  ...  ( 'x ' ,[]) −→ 10 ( g6 + g7 ) . parse ( 'y ' ,[]) −→ ERROR ( g7 + g6 ) . parse ( 'x ' ,[]) −→ ERROR ( g7 + g6 ) . parse ( 'y ' ,[]) −→ 20 ( g8 + g9 ) . parse ( 'x ' ,[]) −→ 10 ( g8 + g9 ) . parse ( 'y  ... 
doi:10.1016/j.scico.2014.08.005 fatcat:myllnxij3zdrlguxh3f6dslska

ManyDSL: A Host for Many Languages [article]

Piotr Danilewski Intel Visual Computing Institute, Germany, Theoretical Computer Science, Jagiellonian University, Poland,
2016 arXiv   pre-print
We achieve this through a novel concept of Syntax-Directed Execution. A language grammar includes semantic actions that are pieces of functional code executed immediately during parsing.  ...  These languages are able to modify their own syntax and semantics on the fly, thus becoming a more flexible host for DSLs.  ...  Syntax-Directed Execution We use a new syntax-directed execution scheme (SDE) as a basis of our parsing process.  ... 
arXiv:1612.03488v1 fatcat:v5bptykdcbafdbrxa75ng4y26a

ABI compatibility through a customizable language

Kevin Atkinson, Matthew Flatt, Gary Lindstrom
2011 SIGPLAN notices  
Fortress [23] is a new language with hygienic macro support and the ability to extend the syntax of the language; however, Fortress's macros are not procedural.  ...  To deal with C's idiosyncratic syntax while also allowing the syntax to be extensible, ZL does not parse a program in a single pass. Instead, it uses an iterative-deepening approach to parsing.  ... 
doi:10.1145/1942788.1868316 fatcat:yhcxr43jgzbutoohxbl47mz7lm

ABI compatibility through a customizable language

Kevin Atkinson, Matthew Flatt, Gary Lindstrom
2010 Proceedings of the ninth international conference on Generative programming and component engineering - GPCE '10  
Fortress [23] is a new language with hygienic macro support and the ability to extend the syntax of the language; however, Fortress's macros are not procedural.  ...  To deal with C's idiosyncratic syntax while also allowing the syntax to be extensible, ZL does not parse a program in a single pass. Instead, it uses an iterative-deepening approach to parsing.  ... 
doi:10.1145/1868294.1868316 dblp:conf/gpce/AtkinsonFL10 fatcat:7mda4o65kjaohhl64sfpakuoyq

Beyond Annotations: A Proposal for Extensible Java (XJ)

Tony Clark, Paul Sammut, James Willans
2008 2008 Eighth IEEE International Working Conference on Source Code Analysis and Manipulation  
A DSL that extends the syntax of a language typically uses a parsing framework to deal with the new concrete syntax.  ...  The Fortress language [17] is an example of a new language that has included features that support LOP.  ... 
doi:10.1109/scam.2008.34 dblp:conf/scam/ClarkSW08 fatcat:eg6smtceuzfzbbgg2h7oxiwkmy

Patterns as objects in grace

Michael Homer, James Noble, Kim B. Bruce, Andrew P. Black, David J. Pearce
2012 Proceedings of the 8th symposium on Dynamic languages - DLS '12  
Like Thorn and Scala, but unlike Grace, patterns in Fortress may be used freely in definitions, rather that just in a match statement (in Fortress, a typecase statement).  ...  The key difference is that while patterns are matched against whole objects, combinator parsers typically parse an input sequence, and a successful parse may consume some, all, or none of the remaining  ... 
doi:10.1145/2384577.2384581 dblp:conf/dls/HomerNBBP12 fatcat:hqdts6pphbekxojtlubwk2fr2a

Parsing Architecture within Plan Drawings with Application to Medieval Castles and Fortresses [article]

Andrew Willis, Yunfeng Sui, Katharina Galor
2009 VAST: International Symposium on Virtual Reality  
We demonstrate the utility of this approach by parsing several plan drawings of medieval castles and fortresses and generating 3D reconstructions of these structures and detail typical circumstances that  ...  While this article represents initial work on this topic with limited scope (castles/fortresses), we envision that subsequent enhancements to this method will be a valuable tool for efficiently generating  ...  We cast the estimation as a parsing problem, typically encountered in computer languages and linguistics, where parsing algorithms extract tokens, e.g., words or syntax elements, to determine their functional  ... 
doi:10.2312/vast/vast09/017-024 fatcat:myzytfqo4bgonfu2kdlv43m34y

Beyond Notations: Hygienic Macro Expansion for Theorem Proving Languages [article]

Sebastian Ullrich, Leonardo de Moura
2022 arXiv   pre-print
sugars to elaboration of formerly baked-in syntax.  ...  Most ITPs support such extensions in the form of restrictive "syntax sugar" substitutions and other ad hoc mechanisms, which are too rudimentary to support many desirable abstractions.  ...  While trivial to parse, there is no way to implement this syntax as 1:14 S. Ullrich and L. de Moura Vol. 18:2 a macro if expansion is done strictly prior to elaboration.  ... 
arXiv:2001.10490v7 fatcat:zxtipoh4svcypfopxzei3bmkam
« Previous Showing results 1 — 15 out of 336 results