News for hackers. Stuff that matters.

romforth

Re:Tumble Forth – from assembly to OS with C compiler on Saturday August 22, 2026 @01:07PM (#49401607)
https://github.com/romforth/romforth already has a port to RISV-V for both 32 and 64 bit, (among many others). So if you don't mind lowering your language implementation to romforth (or even rewriting your compiler to directly generate it), you should be able to use it "for free", no funds required ;)
Re:Build Your Own Forth Interpreter on Tuesday February 24, 2026 @06:34PM (#47145096)
You jest, but I did end up doing just that in my implementation (https://github.com/romforth/romforth) trying to shoehorn a Forth implementation into a MSP430 device with just 2KB ROM + 128 byte RAM
Re: on Saturday January 24, 2026 @11:06AM (#46744724)
So you had your heart set on running Forth on a microcontroller with 512 bytes of ROM and 64 bytes of RAM? Here you go!
Re:Booting a PC from a Vinyl Record on Saturday January 24, 2026 @11:02AM (#46744691)
This one boots from the parallel port: https://github.com/climatex/BootLPT (more details here https://boginjr.com/it/sw/dev/bootlpt-86/)
Re:Vibecoded x86_64 Forth "OS" on Thursday November 27, 2025 @05:57PM (#46073910)
It will be interesting to see how much further this can be taken.

Show HN: Romforth Ported to the IBM 1130

https://github.com/romforth/romforth

romforth is a dialect of Forth which is meant to be easily portable.The IBM 1130 holds a special place in Forth history since it was one of the earliest systems on which Chuck Moore prototyped his initial versions of Forth.I wanted to retrace Chuck Moore's footsteps as he created Forth on the IBM 1130 and decided to try porting romforth to the IBM 1130 (using the excellent SIMH/ibm1130...

( Read More... | no comments | on HN )
Re:Forth Day 2025 on Saturday November 15, 2025 @08:22AM (#45937277)
For anyone interested in attending the meeting today. Past meeting notes are at: https://www.forth.org/svfig/kk/kk.html
Hello HN,

Tree Walk Format (TWF) is a flat file format to describe your family tree. It allows you to describe your family tree in one (or more) files which are editable using your favorite text editor.

I see it as a viable alternative to GUIs such as Gramps or TUIs such as llines(Lifelines).

Currently it is Unix/Linux only since it uses groff/dot to generate the graph depicting the family tree. The git repo has a script that turns the flat file you created into a pdf depicting your family tree. I assume Windows users may be able to use it too using WSL.

It should be possible to generate an equivalent GEDCOM from the TWF input, but that is not implemented yet.

Some additional usage info including examples of family trees from the Bible which are denoted using the TWF format are available at: https://ces.mataroa.blog/blog/twf_ftwmd

Re:Hosting a website on a disposable vape on Monday September 15, 2025 @10:08PM (#45257232)
Allow me to brag about romforth (https://github.com/romforth/romforth) which I ported to the "3c" Padauk and can run on really small rom/ram microcontrollers. Caveats: - tested only on an emulator SDCC/ucsim_pdk, not on real hardware - given how small the ram is, there is no user dictionary but new words can be defined and tested using what the Forth folks refer to as "umbilical hosting".
Re:Tribblix – The Retro Illumos Distribution on Sunday August 10, 2025 @10:37PM (#44860322)
Feel free to check out https://github.com/olvwm/xview/ as well.

I wanted to run olvwm on Linux (when it went out of support on Ubuntu 16.04) and I'd managed to get this running on Ubuntu 20.04 (and more recently on Gentoo, as documented at https://ces.mataroa.blog/blog/gentoo-olvwm-bye-ubuntu/).

A survey of available olwvm implementations available on github at the time I created the repo is in the README of https://github.com/olvwm/xview/

Currently this works on an ancient 32-bit laptop (running NixOS 22.05 as documented in https://ces.mataroa.blog/blog/distro_hoppingmd/) as well.

Re:10biForthOS: A full 8086 OS in 46 bytes on Tuesday May 27, 2025 @10:55PM (#44112380)
By that metric, my implementation of romforth for x86 clocks in at just 12 bytes (see https://github.com/romforth/romforth/x86/forth.s)

The "bug" in the counting used here is that the overall Kolmogorov(?) complexity is not being accounted for because it is shunted elsewhere.

This is true for the other "tinyforth" implementations as well - such as sectorforth and milliforth, because the actual code ends up in the "input part of the Turing tape" if you want to think of it that way.

The right way to count it might be to measure the closure of all your dependencies (in this case, all of the input bytes that are needed plus the bytes in the BIOS that are needed).

Re:The Future Is Niri on Wednesday March 12, 2025 @12:17PM (#43344810)
I've been faithfully using the same window manager [olvwm] for ~30 years and counting. In fact the decision about which [distro] I pick for daily use is totally dependent on whether it can be coaxed into running [xview]+olvwm.

[olvwm]: https://en.wikipedia.org/wiki/Olvwm [distro]: https://ces.mataroa.blog/blog/distro_hoppingmd [xview]: https://github.com/olvwm/xview

Re:Building a Tiny Linux from Scratch on Tuesday January 21, 2025 @02:01PM (#42783963)
To build minimal linux systems, I've found Minimal Linux Live [^1] and Floppinux [^2] useful. There was a list of build steps for 486 [^3] as well, in case you are targeting older machines.

[1]: https://github.com/ivandavidov/minimal-linux-script [2]: https://github.com/w84death/floppinux [3]: https://www.insentricity.com/a.cl/283/booting-a-486-from-flo...

Re:My history with Forth and stack machines (2010) on Saturday December 28, 2024 @04:29PM (#42534925)
Something like an automated proof assistant to help annotate the stack while coding would be awesome, but I'm not aware of any.

These might be famous last words, but if switching between compile/interpret modes is ignored, I think it shouldn't be too hard to implement it though.

Re:My history with Forth and stack machines (2010) on Saturday December 28, 2024 @01:34PM (#42533260)
I have ported Forth to a dozen small microcontrollers and my experience writing much of the bootstrap code in Forth tells me that you are better off coding Forth in a "vertical" style (ie one word per line with stack picture comments), rather than the terse "horizontal" code of "everything on one line" that many of the folks using Forth (including @yosefk, the author) seem to prefer.

Given how close Forth is to assembly (seen from an implementer's point of view) it makes sense to write Forth in a "vertical" style which reflects the "vertical" style in which assembly code is written. This has the advantage that the "stack picture comments" on each line of code can stand in for Hoare triplets so that the code and its - I'll call it - "proof" can be written hand in hand at the same time.

This is how all of the Forth code that I've written in https://github.com/romforth/romforth is structured.

It does make the code appear less compact though so you are not going to win any code golf prizes.