spry
hedgehog
spry | hedgehog | |
---|---|---|
3 | 3 | |
388 | 95 | |
- | - | |
5.6 | 10.0 | |
5 months ago | over 10 years ago | |
Nim | C | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
spry
-
How much do I really shoot myself in the leg by going with "non-mainstream" technologies?
Ehh, it's seeing interest even in very contemporary developments: https://github.com/gokr/spry
-
uLisp on the Raspberry Pi Pico
uLisp always seemed interesting to me, but I've never managed to have a good place to use it.
Lately I've been wanting to try running Spry [1] on an mcu. Or perhaps write a lisp-like language using msgpack as its datatype.
1: https://github.com/gokr/spry
- A Smalltalk and REBOL inspired language implemented as an AST interpreter in Nim
hedgehog
-
Bytecode interpreters for tiny computers (2007)
That is cool, it looks like Python, how did they get it so small? Is it garbage collected? Is the interpreter entirely resident in the Arduino or does it rely on an external communication app hosting the compiler? That approach is actually underutilized in my opinion.
I gotta say that AVR Arduino hardware is almost silly by now. The Raspberry Pi Pico is probably the successor basic MCU board these days. It costs $4 retail, and has a dual ARM M0+ cpu with 264KB of ram and 2MB of SPI flash, so it can run Micropython and other relatively full featured software.
Also check out my old favorite Hedgehog Lisp: https://github.com/sbp/hedgehog
It's a functional-style Lisp dialect whose VM is 20K bytes. It uses an external ahead-of-time compiler, no resident interpreter.
-
uLisp on the Raspberry Pi Pico
Ulisp is cute but (when I looked at it a while back) way too limited and inefficient. My favourite Lisp of this type is Hedgehog, which should run very nicely on a Pi Pico. Its main drawback is it has no REPL, but instead uses a separate byte-compiler that for some reason is written in C.
https://github.com/sbp/hedgehog
-
A small scheme VM, compiler, and REPL in 4k
The rib encoding looks very clever. I need to digest the full implications of that.
> 4KB is impressively tiny, but any machine where 4k vs 20k makes a big difference is unlikely to have enough ram to run garbage collected applications.
Yeah, the paper itself says that the heap was 240K. A 4K system isn't very helpful if your heap is 240K.
I'd like to see how this runs (if at all) with a 4K heap.
> I would like to have seen Hedgehog Lisp ( https://github.com/sbp/hedgehog ) in the comparison chart, since it has actually been used for practical projects
Links to projects?
What are some alternatives?
SwiftCheck - QuickCheck for Swift
ribbit - A small and portable Scheme implementation with AOT and incremental compilers that fits in 4K. It supports closures, tail calls, first-class continuations and a REPL.
gambit - Gambit is an efficient implementation of the Scheme programming language.