Atomic program persistence system written in Janet
|
|
||
|---|---|---|
| jpm_tree | Initial commit | |
| src | Added alone hibernation | |
| gitignore | readded license and gitignore | |
| LICENSE | readded license and gitignore | |
| readme.md | Amend readme | |
rejette
Atomic program persistence system written in Janet
Objects were never meant to "die" and have to be "reinitialized" nor "files" "saved". /hyp
What
If you want to understand what this does, you need to either:
- read chapters 1.2.2 and 1.2.3 in this.
- or chapter 6.
- or read the whole thing. It's worth it.
Good luck. There's an example in src/video-example.janet right now, I'll tidy this repo up later.
Dependencies
- Janet (tested on 1.36.0-release , nixOS)
- Janet Package Manager (tested on 1.1.0, nixOS)
- A pretty good understanding of Lisp and Lisp-related languages
- Know what an "image" in the Smalltalk sense is
Inspirations
- OpenGenera, Lisp machines in general
- A frustration with all-the-Lisp-things that not-Lisps don't have, and when they do, they tend to implement them in frustrating, frail, specialized, weakened ways (Lispy macros wink wink)
- ... and a frustration with SQL
- ... and with Lisp not being used as often as it should
- Smalltalk images
Going further
Go ahead. It's AGPLv3 licensed last time I checked.