Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
SNOBOL
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== SNOBOL4 === As SNOBOL3 became more popular, the authors received more and more requests for extensions to the language. They also began to receive complaints about incompatibility and bugs in versions that they hadn't written. To address this and to take advantage of the new computers being introduced in the late 1960s, the decision was taken to develop SNOBOL4 with many extra datatypes and features but based on a [[virtual machine]] to allow improved portability across computers.<ref>See Chapter 1 of ''The Macro Implementation of SNOBOL4''</ref> The SNOBOL4 language translator was still written in assembly language. However the macro features of the assembler were used to define the virtual machine instructions of the '''S'''NOBOL '''I'''mplementation '''L'''anguage, the SIL. This very much improved the portability of the language by making it relatively easy to port the virtual machine which hosted the translator by recreating its virtual instructions on any machine which included a macro assembler or indeed a high level language.<ref>SNOBOL4 has been implemented using C to recreate the virtual machine instructions.</ref> The machine-independent language SIL arose as a generalization of string manipulation macros by [[Douglas McIlroy]], which were used extensively in the initial SNOBOL implementation. In 1969, McIlroy influenced the language again by insisting on addition of the table type to SNOBOL4.<ref name="Gris78">{{cite journal |last=Griswold |first=Ralph |author-link=Ralph Griswold |title=A history of the SNOBOL programming languages |journal=ACM SIGPLAN Notices |pages=275β308 |volume=13 |number=8 |year=1978 |doi=10.1145/960118.808393 |s2cid=5413577 |url=http://pdfs.semanticscholar.org/a404/c09b14e2b03496604387f532fd33975179ec.pdf |archive-url=https://web.archive.org/web/20190302233559/http://pdfs.semanticscholar.org/a404/c09b14e2b03496604387f532fd33975179ec.pdf |url-status=dead |archive-date=2019-03-02 }}</ref><ref>{{cite book |editor-link=Richard Wexelblat|editor-first=Richard L. |editor-last=Wexelblat |title=History of Programming Languages |orig-year=1981 |year=2014 |publisher=Academic Press |isbn=9781483266169 |pages=784}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)