Re:Performance of popular microcontroller boards running uLisp
by frozenwind on Tuesday October 22, 2024 @04:51AM
(#41912413)
I don't think I will ever use Lisp but I love the way this site documents different examples with all kinds of hardware. I wish there were more sites like these for other microcontroller/SoC languages like lua, mPython, Arduino derived boards etc.
Re:Performance of popular microcontroller boards running uLisp
by magicalhippo on Tuesday October 22, 2024 @05:39AM
(#41912676)
It's also sporting a much more advanced ARM core[1], Cortex-M7, compared to most of the other ARM boards which had Cortex-M0(+) cores.
The M7 supports cache unlike the M0(+), and the processor used[2] has 64kB of it, split evenly into instruction and data cache. It also supports branch speculation which the M0(+) does not.
While the Teensy has 4.5x the clock frequency of the Pico 1, the Teensy is 8x faster.
Main outlier is the Pico 2 with a Cortex-M33, though still at a reduced clockspeed compared to the Teensy. From what I can see[3] it does not have cache for its on-board memory, "just" branch speculation like the M7.
Re:Performance of popular microcontroller boards running uLisp
by weinzierl on Tuesday October 22, 2024 @07:29AM
(#41913234)
If you compare it to the only other board in the table with more than 300 MHz (and the only RISC-V) you can see that Teensy outperforms it by a margin even when the results are scaled by clock speed.
Of course it would only be a complete picture taking power consumption into consideration.
Re:Performance of popular microcontroller boards running uLisp
by Neywiny on Tuesday October 22, 2024 @08:35AM
(#41913602)
Also the M7 is a superscaler. It's not mentioned often, but if the task allows it, you can use what's essentially 1.5x the execution units of the smaller cores. It's not a complete 2x, but I'm sure it helps.
Re:Performance of popular microcontroller boards running uLisp
by anthk on Tuesday October 22, 2024 @07:59AM
(#41913395)
On the Mini text-adventure sample, I wonder if porting Malyon from Emacs' Elisp could be feasible, at least to run v3 Zmachine games, small enough to be fastly interpreted even under a C64.
Re:Performance of popular microcontroller boards running uLisp
by anthk on Tuesday October 22, 2024 @08:22AM
(#41913536)
This example in ANS Forth (restricted) interpreters gave me nightmares because I was
dancing with the stack back and forth. No pun intended.
With Lisp, it's a piece of cake.
Re:Performance of popular microcontroller boards running uLisp
by K0balt on Tuesday October 22, 2024 @08:27AM
(#41913556)
I understand the appeal from a hobby perspective, but is there any advantageous use cases where it would make sense to choose uLisp over other more common solutions for microcontroller software development?
I think it’s cool, and I’ve played with it a bit, but aside from using it as a fidget spinner to explore lisp, I’m wondering if there are applications for the language that would provide an edge in actual use.
Re:Performance of popular microcontroller boards running uLisp
by johnsondavies on Tuesday October 22, 2024 @09:26AM
(#41914020)
You're correct that the ESP32-C3 is based on a RISC-V processor, but it has more in common with the other ESP32 boards than it does with the boards supported by the RISC-V version of uLisp, so it made sense to support it with the ESP version of uLisp.
The M7 supports cache unlike the M0(+), and the processor used[2] has 64kB of it, split evenly into instruction and data cache. It also supports branch speculation which the M0(+) does not.
While the Teensy has 4.5x the clock frequency of the Pico 1, the Teensy is 8x faster.
Main outlier is the Pico 2 with a Cortex-M33, though still at a reduced clockspeed compared to the Teensy. From what I can see[3] it does not have cache for its on-board memory, "just" branch speculation like the M7.
[1]: https://en.wikipedia.org/wiki/ARM_Cortex-M
[2]: https://www.nxp.com/part/MIMXRT1062DVL6A
[3]: https://datasheets.raspberrypi.com/rp2350/rp2350-product-bri...
Of course it would only be a complete picture taking power consumption into consideration.
[1]: https://forums.raspberrypi.com/viewtopic.php?t=375975
https://emacs.crys.site/interactive-fiction-malyon/
The Sudoku example ran as-is under Common Lisp, maybe it's the same under Emacs.
A libre v3 game to freely test it would be Calypso, among Tristam Island.
http://www.ulisp.com/show?1FHA
I think it’s cool, and I’ve played with it a bit, but aside from using it as a fidget spinner to explore lisp, I’m wondering if there are applications for the language that would provide an edge in actual use.