Content deleted Content added
Citation bot (talk | contribs) m Removed URL that duplicated unique identifier. | You can use this bot yourself. Report bugs here.| Activated by User:Nemo bis | via #UCB_webform |
m Open access bot: doi updated in citation with #oabot. |
||
Line 6:
The S/SL processor [[compiler|compiles]] this pseudocode into a table (byte-codes) that is interpreted by the S/SL table-walker ([[Interpreter (computing)|interpreter]]). The pseudocode 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>{{cite journal | last1 = Barnard | first1 = D.T. | last2 = Cordy | first2 = J.R. | year = 1988 | title = SL Parses the LR Languages | doi = 10.1016/0096-0551(88)90010-0 | journal = Computer Languages | volume = 13 | issue = 2| pages = 65–74 }}</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 compiling, 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>{{cite journal | last1 = Holt | first1 = Richard C. | last2 = Cordy | first2 = James R. | last3 = Wortman | first3 = David B. | year = 1982 | title = An Introduction to S/SL: Syntax/Semantic Language | journal = ACM Transactions on Programming Languages and Systems | volume = 4 | issue = 2| pages = 149–178| doi=10.1145/357162.357164| doi-access = free }}</ref>
S/SL has been used to implement production commercial [[compiler]]s for languages such as [[PL/I]], [[Euclid (programming language)|Euclid]], [[Turing (programming language)|Turing]], [[Ada (programming language)|Ada]], and [[COBOL]], as well as interpreters, command processors, and ___domain specific languages of many kinds. It is the primary technology used in [[IBM]]'s ILE/400 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.
|