Content deleted Content added
No edit summary |
Andrewman327 (talk | contribs) Reverted good faith edit(s) by 117.198.11.2 using STiki. Unsourced content. |
||
Line 6:
The S/SL processor [[compiler|compiles]] this pseudo-code into a table (byte-codes) that is interpreted by the S/SL table-walker ([[Interpreter (computing)|interpreter]]). The pseudo-code language processes the input language in [[LL(1)]] [[recursive descent]] style but extensions allow it to process any [[LR parser|LR(k)]] language relatively easily.<ref>D.T. Barnard and J.R. Cordy, "SL Parses the LR Languages", Computer Languages 13,2 (April 1988), pp. 65-74 http://dx.doi.org/10.1016/0096-0551(88)90010-0</ref> S/SL is designed to provide excellent syntax error recovery and repair. It is more powerful and transparent than [[Yacc]] but can be slower.
S/SL's "semantic mechanisms" extend its capabilities to all phases of compilation, and it has been used to implement all phases of compilation, including [[Lexical analysis|scanners]], [[parser]]s, [[semantic analysis (compilers)|semantic analyzers]], [[code generation (compiler)|code generators]] and [[virtual machine]] interpreters in multi-pass language processors.<ref>Richard C. Holt, James R. Cordy and David B. Wortman, "An Introduction to S/SL: Syntax/Semantic Language", ACM Transactions on Programming Languages and Systems 4,2 (April 1982) http://doi.acm.org/10.1145/357162.357164</ref>
S/SL has been used to implement production commercial [[compilers]] for languages such as [[PL/I]], [[Euclid programming language|Euclid]], [[Turing programming language|Turing]], [[Ada programming language|Ada]], and [[COBOL programming language|COBOL]], as well as interpreters, command processors, and ___domain specific languages of many kinds. It is the primary technology used in [[IBM|IBM's]] ILE/400 [[COBOL programming language|COBOL]] compiler,<ref>Ian H. Carmichael and Stephen Perelgut. S/SL revisited. Proc. CASCON'95, Conference of the Centre for Advanced Studies on Collaborative Research, Toronto, Canada, November 1995 http://portal.acm.org/citation.cfm?id=781915.781926</ref> and the [[ZMailer]] [[mail transfer agent]] uses S/SL<ref>ZMailer the Manual, http://www.zmailer.org/zman/zmanual.shtml</ref> for defining both its mail router processing language and its RFC 822 email address validation.
==References==
|