stringie
This is the distribution for "stringie", an implementation of Underload in ANSI C.
History
Seeing that there was no non-pathological implementation of ais523's beautiful Underload language in C, I undertook that project one evening. (In the company of a bottle of really fine wine. Why, it cost almost twelve dollars.) The result is one of the most pedantic and boring Underload interpreters known to man. Perhaps the most interesting property of it is its name, "stringie", which was an accident.
Building
(cd src && make)
You can also pass ANSI=yes
to make
to have the C compiler treat the source
code as ANSI C, and this will work, because the source code is ANSI C.
It can also be build using DICE C under AmigaDOS 1.3; see the file build.seq for details.
Usage
./bin/stringie '(Hello, world!)S'
From this we can see that the Underload program to be interpreted is passed directly in the first command-line argument to the executable.
However, there is also a form by which the Underload program can be read from a file:
./bin/stringie from example.ul
Included materials
This distribution also contains a description of the Underload language
in the doc
directory, and a collection of example programs in the eg
directory. These were taken from public-domain sources.
License
The contents of this repository are in the public domain. See the file UNLICENSE for more information.
Acknowledgements
Thanks to stasoid for finding, and describing a fix for, a heap-corrupting bug.
Commit History
@a71f57fe61fecf75bbdf250dcb08aac7fe26f3c5
git clone https://git.catseye.tc/stringie/
- Remove advice which is now unnecessary. Chris Pressey 5 years ago
- Add ability to load Underload program from a file. Chris Pressey 5 years ago
- Include some example Underload programs in the distribution. Chris Pressey 5 years ago
- 80-column lines in README. Chris Pressey 5 years ago
- Add a description of Underload, so you know what you're getting into. Chris Pressey 5 years ago
- As elsewhere, I'm a bit sick of the strdup() nonsense, so, this. Chris Pressey 5 years ago
- Like the other projects, just force the bin/ directory to exist. Chris Pressey 5 years ago
- Merge pull request #1 from catseye/build-on-amigados-1.3 Chris Pressey (commit: GitHub) 5 years ago
- Add acknowledgements section to README. Chris Pressey 5 years ago
- Script for building this with DICE C under AmigaDOS 1.3. Chris Pressey 5 years ago