Prior SNOBOL4 resources: here
Oregon SNOBOL5: For 64bit Windows (7 and later) and 64bit Linux, nearly identical. This is an update from
the old Minnesota SNOBOL4 with many new features.
Beta version of SNOBOL5 for 64 bit Linux: executable md5sum:1dc13bb7705777f8473a9b34eccf4812 dated:2023-09-08 11:22:55.000
I suggest placing the program in the directory /usr/bin which should let your path environment variable find it. Also don't forget to set the permissions: chmod 555 /usr/bin/snobol5
Beta version of SNOBOL5 for 64 bit Windows 7 and up: executable md5sum:ce8b9ba9dcfdd383384e5a7bc8bfe6ef dated:2023-09-08 11:22:54.000
I suggest placing the program executable snobol5.exe in one of the directories specified in your PATH environment variable. Use "echo %PATH%" to see what those are.
Here is the draft version or the language documentation, still being updated: SNOBOL5 Language Documentation
This is preliminary documentation for the open source code for SNOBOL5: source documentation md5sum:06fbb7cf29117a0fdb76e6541d137b8b dated:2023-09-08 11:23:09.000
This is preliminary open source code for SNOBOL5: zip file md5sum:632056bf44fe713c3dc929093dc1e383 dated:2023-09-08 11:22:46.000
Look here to see what is new in SNOBOL5 compared to Green Book SNOBOL4.
Discussion groups: https://groups.io/g/snobol
and Discord- look for #SNOBOL4 under Unicon/Icon Programming
Downloading problems with some browsers can be solved by using "wget" instead.
Ubuntu includes wget and you can find a Windows version easily,
for example:from sourceforge.
The command I use is:
wget -nd http://snobol5.org/helloworld.sno
You can just substitute whatever url link you need there.
How to run a SNOBOL5 program:
To run a SNOBOL5 program in Linux: ./snobol5 programfile.sno -6 outputfile -7 punchfile
To run a SNOBOL5 program in Windows: snobol5.exe programfile.sno -6 outputfile -7 punchfile
Some initial help with: snobol5.exe --help
For verbose output including dump: snobol5 -v -d yourprogram.sno
If no program file is given, then it reads the program from standard input.
The snopath environment variable is where it looks for includes.
Comments / bugs to firstname.lastname@example.org - Viktors Berstis.
Some sample SNOBOL5 programs:
Hello World is a simple program to get started: source.
To run it, in a command prompt say: snobol5 helloworld.sno
To see the program listing and dump of variables afterwards use:
snobol5 -v -d helloworld.sno
An interactive program to let you enter statements and
immediately execute them: source
N-queens solving program: source
Non-IBM Personal Editor 3 written in SNOBOL5: details here.
Wordle game: source
I have build self-contained executables which include the worlde program with the snobol5 interpreter.
Later I plan to make a tool for users to create these for their own programs.
Single file Linux executable for wordle md5sum:003322c885f3f23652ae17003bad01fa dated:2022-11-29 18:09:33.000
Single file Windows executable for wordle.exe md5sum:a1573bce1f199a2b0592cb23e7e88b4c dated:2022-11-29 18:09:42.000
Sudoku solving program: source
The famous old Eliza psychologist program: source
Single file Linux executable for eliza md5sum:f150fa88d37605508f6085c86d4ed166 dated:2022-11-29 18:09:21.000
Single file Windows executable for eliza.exe md5sum:e3429d989e7c41863e9013cafa18a1eb dated:2022-11-29 18:09:27.000
Simple English syntax checker: source
Program to create a cross reference of your snobol program: source
Shortest self reproducing program ("quine") in snobol: source
Program to dump a file in hexadecimal: source
Program I use to make a video out of a series of jpg files: source
John Conway's FRACTRAN programming language might be one of the most compact of all.
A program is simply a list of rational fractions.
I have written an interpreter for the FRACTRAN language using SNOBOL5.
Here is Conway's 14 fraction FRACTRAN program to compute all prime numbers: source1
The source1 version quickly overflows the accumulator.
Using Gimpel's infinite precision integer code (INFINIP.INC) you can get much further,
but it runs incredibly slowly.
The following version, which uses symbolic prime factorization of
the accumulator, runs much faster: source2
This version by Devin Kilminster runs about 6 times faster yet using only 9 fractions: source3
Read more on the subject in WikipediA.
Getting Started With and Fun With Assembler Machine Language (x86 64-bit) for Windows and Linux:
Instructions for assembling are at the bottom of the hello.asm file.
hello.asm - Hello World assembler program for both Windows and Linux
debug64.inc - Assembler include for above and to make debugging easier
patmac.inc - A set of SNOBOL-like pattern matching assembler macros
pattest.asm - Assembler program to test pattern match macros and show usage
nq8.asm - N Queens solving program rewritten in assembler using patmac.inc
about the ml64.exe assembler is quite skimpy on certain details. I found the
ancient DOS version section on directives and macros more useful.
Of course you will also need the Intel Architecture manual.