Hacker News new | past | comments | ask | show | jobs | submit login
Visible Lisp Computer: embedded real-time display of Lisp workspace using uLisp (technoblogy.com)
55 points by Gollapalli on March 9, 2022 | hide | past | favorite | 7 comments



I've been having a lot of fun building out, and playing with uLisp. I enjoy adding low level functionality in C, and then interacting with it at the uLisp REPL. Very satisfying.

I really wish there were a handheld device like the Precursor, or Solder Party Keyboard Featherwing[0] that was available in a robust form factor, like a graphing calculator, or wedge keyboard. Ideally with a Teensy 4.1, or similarly spec'ed microcontroller. Bonus points for a LoRa module for messaging/mesh networking with other devices.

[0]https://www.adafruit.com/product/4818


How about the Lisp Badge?

[0]http://www.technoblogy.com/show?2AEE


Hey johnsondavies! Definitely lusting after this, is it available anywhere for purchase? If not, any interest in doing a group buy on pcbs and components?

It would be nice if the display had more real estate, at least 80 characters wide ideally so that it could be used as a vt100 terminal.


I’ve been loving this guy’s site for some time, particularly the sound & audio projects. And the tiny circuit photography is awesome!


It reminds me running the code in video address space on Atari.


Oh oh oh! You mean like this?

http://www.oldskool.org/tales

> Fun with the Atari ST

> Fred Butzen writes:

> "Here's one of my stories. Not really old school, but it's funny.

> In the mid-80s, MWC wrote one of the first C compilers for the Atari ST -- the "Jackintosh", so called because Jack Tremiel (formerly of Commodore) designed it with Atari as a rip-off of the Macintosh. It had a GUI built around Digital Research's GEM interface. It had two floppies, a 68000 CPU, and 512 kilobytes of RAM -- which in those days was a lot of memory. To save money, the hardware was totally sleezy. From time to time it would simply stop working, and you'd have to open up the unit and reseat all of the chips in their sockets. If you were in a hurry, you'd just lift up the unit about six inches and drop it. A total piece of junk.

> Part of the savings was that the machine had no MMU and no parity on the memory. This meant that the machine was totally unreliable; however, it also meant that a kid hacker could do anything to the hardware, and there's no way the machine would stop him. (Mind you, that anything included smoking the tube, but that's another story.) For example, I wrote a little program that reset the base address of video memory to zero, which was where the operating system lived. (Video used RAM, of course, rather than memory on a separate card.) It was kind of cool, because when you ran a program that allocated memory -- say, a sort program, you could see the memory being allocated and deallocated on the screen. The difference between qsort and shellsort was really obvious just by the patterns they drew on the screen.

> Anyway, as a programming exercise I wrote a version of the game of life for this machine. It ran fine; however, I made one mistake: I forgot to set the clipping rectangle around the screen. So, the first time I built a glider gun, the glider went creeping off the screen, and just kept on going, crashing through memory. Mind you, there's no MMU, so the machine is still running while the glider is rampaging through memory. Because the 68000 used memory-mapped ports for its hardware, you could see where the glider was going because the disk drives starting running, the lights flashed on the keyboard, the tube blinked, and so on. Finally, the glider hit something really vital and the machine died with "streaky bombs" -- a sign that the operating system was really, really sick.

> Of course, I had to show this to all the other guys. We laughed ourselves sick watching that happen."

I have been wondering what those "streaky bombs" would have looked like for years!


Are there any videos/tutorials on this? This sounds like it would be super interesting to see.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: