How to replace failure by a list of successes
Proc. of a conference on Functional programming languages and computer architecture
An introduction to Trellis/Owl
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Object structure in the Emerald system
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Packrat parsing:: simple, powerful, lazy, linear time, functional pearl
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Parsing expression grammars: a recognition-based syntactic foundation
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Virtual class support at the virtual machine level
Proceedings of the Third Workshop on Virtual Machines and Intermediate Languages
Tackling software navigation issues of the Smalltalk IDE
IWST '09 Proceedings of the International Workshop on Smalltalk Technologies
Why Smalltalk wins the host languages shootout
IWST '09 Proceedings of the International Workshop on Smalltalk Technologies
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
Pure delta-oriented programming
FOSD '10 Proceedings of the 2nd International Workshop on Feature-Oriented Software Development
Embedding languages without breaking tools
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Delta-oriented programming of software product lines
SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
Flexible object layouts: enabling lightweight language extensions by intercepting slot access
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Language boxes: bending the host language with modular language changes
SLE'09 Proceedings of the Second international conference on Software Language Engineering
Hi-index | 0.00 |
We describe the design and implementation of a parser combinator library in Newspeak, a new language in the Smalltalk family. Parsers written using our library are remarkably similar to BNF; they are almost entirely free of solution-space (i.e., programming language) artifacts. Our system allows the grammar to be specified as a separate class or mixin, independent of tools that rely upon it such as parsers, syntax colorizers etc. Thus, our grammars serve as a shared executable specification for a variety of language processing tools. This motivates our use of the term executable grammar. We discuss the language features that enable these pleasing results, and, in contrast, the challenge our library poses for static type systems.