I have been programming in all kinds of languages, from assembly to clojure, but in 25 years I never programmed stack languages, I was kind of scared of them, it wasn't until I read the book and made my own Forth I understood what I was missing. Since then I made few interpreters, with jit, or with types, etc, it was super fun, but most of all it allowed me to see a completely new paradigm of programming, kind of the first time you understand eval/apply from 13th page of the LISP 1.5 Programmer's Manual. A language that writes itself and it is written in itself.
If you are making your own Forth, this Brad Rodriguez's article is also really good [2].
[1]: https://archive.org/details/R.G.LoeligerThreadedInterpretive...
FORTH is the type of thing that probably exists all over the place but it's so deep and arcane that you would never know it.
OpenBOOT: https://openfirmware.info/OpenBOOT
That second link has a link to a git repository and you can see the forth code there.
Threaded Interpretive Languages (1981) [pdf] - https://news.ycombinator.com/item?id=17227466 - June 2018 (1 comment)
and to the second link:
Moving Forth (1993) - https://news.ycombinator.com/item?id=26900401 - April 2021 (7 comments)
Moving Forth, Part 1: Design Decisions in the Forth Kernel (1993) - https://news.ycombinator.com/item?id=10949339 - Jan 2016 (5 comments)
There are a number of proprietary payware Forths for desktop/server: vfxForth, [1] SwiftForth, [2] and iForth. [3]
There are also various Forths for all sorts of embedded platforms, many of them FOSS.
[0] https://github.com/philburk/pforth
and
https://github.com/ablevm/able-forth/tree/current
In addition to the others mentioned here. It's a shame the able gui was not open sourced.
It irks me to this day that various hardware ecosystems ended up going for things like UEFI and uBoot when OF already existed.
- Elegant and weird syntax and structure.
- Powerful pattern matching.
- It was the first GCed language I used.
- The Griswold, Poage and Polonsky book on Snobol4. A classic in the K&R mold, to my mind.
- Took 2 compiler courses from RBK Dewar who worked on the Spitbol implementation. Great teacher, fantastic courses, with lots of insight into the Spitbol project and his research on the SETL language.
- Wrote software for my MSc thesis in Snobol4. It used so much memory that I had to book the school’s IBM 370 at 4AM to run the software. I think I got something like 1-2 MB of memory.
It’s a shame that China is so singularly capable at making things
It can be found here: https://www.forth.org/tutorials.html
SNOBOL has patterns more powerful than regular expressions. The pattern matching can take exponential time, because it's a depth first search in a recursive space. Regular expressions, which have very limited backup, were adopted to put an upper bound on pattern match time.
I remember writing the Icon string manipulation in java in college, and I've hated regular expressions for a long time because Icon had it right, albeit verbose.
https://www.linuxjournal.com/article/5948
I had a period where I studied a new, obscure programming language almost daily; Icon stood out as one of the most interesting & relevant from a modern perspective.
Eliza in SNOBOL4 - https://news.ycombinator.com/item?id=41889284 - Oct 2024 (24 comments)
Spitbol 360: an implementation of SNOBOL4 for IBM 360 compatible computers - https://news.ycombinator.com/item?id=38234319 - Nov 2023 (6 comments)
SNOBOL (“StriNg Oriented and SymBOlic Language”) - https://news.ycombinator.com/item?id=35800936 - May 2023 (56 comments)
The SNOBOL4 Programming Language [pdf] - https://news.ycombinator.com/item?id=23345560 - May 2020 (6 comments)
SNOBOL4 - https://news.ycombinator.com/item?id=22233111 - Feb 2020 (1 comment)
Parsing with Snobol - https://news.ycombinator.com/item?id=20401576 - July 2019 (1 comment)
Dave Shields, the programmer maintaining SPITBOL - https://news.ycombinator.com/item?id=10211724 - Sept 2015 (23 comments)
SnoPy – Snobol Pattern Matching Extension for Python - https://news.ycombinator.com/item?id=10106008 - Aug 2015 (10 comments)
On being the maintainer and sole developer of SPITBOL (2012) - https://news.ycombinator.com/item?id=10103276 - Aug 2015 (95 comments)
cafard•7mo ago