Hacker GitHub

← All repos

JohnEarnest/Mako

View on GitHub ↗ ★ 599 Forth

A simple virtual game console

39 mentions on Hacker News by 9 people: 5 stories, 34 comments · first 2011-07-03 · latest 2026-02-26

Mentions per year 39 mentions · busiest year 2012 (8)
20082026
  1. Try https://github.com/JohnEarnest/Mako/blob/master/docs/makoBas... 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.
    comment by alexisread · 2025-05-13 · in I learned Snobol and then wrote a toy Forth
  2. Not sure that will swing it, have a look at https://github.com/JohnEarnest/Mako/tree/master Which is basically a Forth for games, that runs on the JVM, and in the browser. The issue as I see it, is that you have to have a model of the…
  3. Not any sources/overview as such, I just looked at the VM code. So for Mako: https://github.com/JohnEarnest/Mako/blob/master/src/MakoVM.j... Freeforth: https://github.com/dan4thewin/FreeForth2/blob/master/ff.asm Jonesforth:…
    comment by alexisread · 2024-03-02 · in Konilo: A personal computing system in Forth
  4. On a related note, here's a Logo interpreter I implemented many years ago using a dialect of Forth: https://github.com/JohnEarnest/Mako/blob/master/demos/Loko/L...
    comment by RodgerTheGreat · 2021-04-20 · in Lisp in Forth
  5. Some similarities to one of my old projects, MakoVM: https://github.com/JohnEarnest/Mako It is also Forth-based, and has an ecosystem of interesting little games, programs, and libraries. The CPU, GPU, and other IO facilities fit in a…
    comment by RodgerTheGreat · 2021-04-11 · in 8-bit stack-machine emulated by 200 lines of C
  6. I wrote a dungeon-crawling puzzle game based on (and implemented in) Forth called "Forth Warrior": https://github.com/JohnEarnest/Mako/tree/master/games/Warrio... You can play a browser-based build here:…
    comment by RodgerTheGreat · 2020-09-30 · in Why Forth Isn't Slow (1985)
  7. …://www.forth.com/resources/space-applications/ [3] http://johnearnest.github.io/Mako.js/?rom=Loko [4] https://github.com/JohnEarnest/Mako/tree/master/demos/Loko [5] http://johnearnest.github.io/Mako.js/?rom=Yar [6]…
  8. …particularly concatenative languages. [0] https://github.com/JohnEarnest/ok/blob/gh-pages/oK.js [1] https://github.com/JohnEarnest/Mako/blob/master/demos/FiDo.f... [2] http://nsl.com
  9. …abstractions you like in Forth. Some time ago I did a number of experiments with lazy generators: https://github.com/JohnEarnest/Mako/blob/master/lib/Algorith... The above dialect uses { } to delimit anonymous inline word definitions.…
    comment by RodgerTheGreat · 2020-01-15 · in Stack-Oriented Programming
  10. …incredibly underrated), but an example of something he wrote in Forth is Mako, an entire console: https://github.com/JohnEarnest/Mako During the days of the U.S.S.R., the Russians independently discovered Forth in DSSP, an incredibly…
    comment by kick · 2019-12-18 · in Thoughts on Forth Programming
  11. As another example, here's a simple GC I wrote quite a while ago in Forth: https://github.com/JohnEarnest/Mako/blob/master/lib/Algorith... This one is a precise, copying GC, with a reserved arena for persistent references into…
    comment by RodgerTheGreat · 2019-12-15 · in Writing a Simple Garbage Collector in C
  12. …I wrote using this system were a variety of compilers and interpreters. FiDo, a tiny JIT compiler: https://github.com/JohnEarnest/Mako/blob/master/demos/FiDo.f... A Logo interpreter: https://github.com/JohnEarnest/Mako/blob/master/demos/Lok…
    comment by RodgerTheGreat · 2016-06-07 · in Bone Lisp – Lisp Without Garbage Collection
  13. …go - gems inside :P), and you may also be interested in http://thinking-forth.sourceforge.net and https://github.com/JohnEarnest/Mako . (I have about ~20 more Forth bookmarks so far.) > I'm also wondering if Life Sciences might have some…
  14. How about a puzzle game about Forth, written in Forth, running on a Forth machine? https://github.com/JohnEarnest/Mako/tree/master/games/Warrio... Obligatory Javascript implementation of said Forth VM:…
    comment by RodgerTheGreat · 2015-09-01 · in Forth – The Early Years (1991)
  15. You could write videogames: https://github.com/JohnEarnest/Mako
    comment by RodgerTheGreat · 2015-08-31 · in Forth – The Early Years (1991)
  16. It's a bit more difficult to write a Scheme in Forth than the other way around, but how about a Logo? https://github.com/JohnEarnest/Mako/tree/master/demos/Loko I also wrote a browser based VM so you can give it a spin without compiling…
    comment by RodgerTheGreat · 2015-07-07 · in Thinking Forth (1984)
  17. I've built a few games along these lines, the most publicized of which is Forth Warrior: https://github.com/JohnEarnest/Mako/tree/master/games/Warrio... I have some slow backburner plans for a game with similar mechanics but an easier…
    comment by RodgerTheGreat · 2013-09-07 · in Games That Teach Programming: A Brief Overview
  18. …with Moore's tradition of just whipping up a new dialect whenever he has a new problem domain. [1]: https://github.com/JohnEarnest/Mako/tree/master/games/Warrio... [2]: http://git.annexia.org/?p=jonesforth.git;a=blob_plain;f=jone... [3]:…
    comment by swdunlop · 2013-07-26 · in Chuck Moore: The Invention of Forth
  19. …of a function. If done properly you get fantastically readable functions, such as this gem from https://github.com/JohnEarnest/Mako/blob/master/games/Deep/D... : move-player fire waves bounce think draw-score spawn-crab storm This snippet…
  20. …Mako is only a couple hundred lines of Java, and features like sound and file I/O are optional: https://github.com/JohnEarnest/Mako/blob/master/src/MakoVM.j...
    comment by RodgerTheGreat · 2013-02-17 · in Forth Warrior: A Programming Puzzle Game
  21. I've used a very similar trick for adding partial function application to Forth: https://github.com/JohnEarnest/Mako/blob/master/lib/Algorith... If I understand correctly, though, your implementation leaks memory. In my case I use a GC to…
  22. …quirks and complex features of popular "real" languages. BASIC is small, Python will never be. [1]https://github.com/JohnEarnest/Mako/tree/master/demos/Masica [2]https://github.com/JohnEarnest/Mako/tree/master/demos/Loko
    comment by RodgerTheGreat · 2012-12-01 · in Is Python The New Basic? ("Python For Kids")
  23. I use my Forth system for writing video games: https://github.com/JohnEarnest/Mako It's also fun to implement features conventionally associated with high-level functional languages, such as lazy generators:…
    comment by RodgerTheGreat · 2012-10-07 · in 1x Forth by Charles Moore (1999)
  24. …special-case syntax for string constants and the like. I do have a quick-start manual available: https://github.com/JohnEarnest/Mako/blob/master/docs/makoBas...
    comment by RodgerTheGreat · 2012-05-12 · in My History With Forth And Stack Machines
  25. …case for the language. If anybody's curious, all my development tools and forth code are on github: https://github.com/JohnEarnest/Mako
    comment by RodgerTheGreat · 2012-05-12 · in My History With Forth And Stack Machines
  26. …simple unit testing system called the Test Anything Protocol (TAP). Here's an example of a fixture: https://github.com/JohnEarnest/Mako/blob/master/lib/Test/tes...
    comment by RodgerTheGreat · 2012-04-09 · in A Forth Story...
  27. …counting all the list utility routines) is about 60 lines long and fairly easy to understand. [1] https://github.com/JohnEarnest/Mako/blob/master/lib/Algorith...
    comment by RodgerTheGreat · 2012-04-04 · in Notch's Specification for the In-Game DCPU-16
  28. …to playing games[2][3][4](etc) you'll be able to play with an interactive Forth prompt.[5] [1]https://github.com/JohnEarnest/Mako [2]http://i.imgur.com/IVNdt.png [3]http://i.imgur.com/mJ1ZD.png [4]http://i.imgur.com/XumXi.png…
    comment by RodgerTheGreat · 2012-03-27 · in Girls and Computers
  29. …Trying to recompile Ngaro bytecode to run on Mako could be an interesting weekend project... [1] https://github.com/JohnEarnest/Mako/blob/master/examples/Thr...
    comment by RodgerTheGreat · 2012-01-01 · in IBNIZ - A hardcore audiovisual VM
  30. …keyboard and mouse input- I wonder how hard it would be to write some simple games for this VM? [1] https://github.com/JohnEarnest/Mako
    comment by RodgerTheGreat · 2011-12-31 · in IBNIZ - A hardcore audiovisual VM
  31. …a bit messy, but you can still write code like 100 upto sum dup * 100 upto { dup * } map sum - ( https://github.com/JohnEarnest/Mako/blob/master/examples/Alg... )
  32. …with plans for an ALGOL-60 implementation and a classical Lisp. Perhaps this will interest someone: https://github.com/JohnEarnest/Mako
  33. If you find TinyVM interesting, one of my own projects might be worth checking out: https://github.com/JohnEarnest/Mako/blob/master/MakoVM.java It's a stack-oriented VM, similarly designed to be as simple as possible, but my goal was to…
  34. I have a project that's kinda along those lines, but it's not based on the 6502: https://github.com/JohnEarnest/Mako