Re: [racket-users] Boot To Racket
Probably just on a Raspberry Pi, yes. On Saturday, July 8, 2017 at 5:15:12 PM UTC-7, Deren Dohoda wrote: > I actually use Racket in an embedded linux scenario on a 32-bit ARM. The > board has Debian installed but without twiddling boots under busybox. Once > upon a time I thought about giving a 5-minute presentation at Racketcon on > the experience of using Racket in this way but it never happened. It's very > hard to say what my hypothetical minimum requirements would be for such a > system without thinking of the hardware that would exist. Filesystem, > USB/RS232 serial/ whatever else the chip offers, and network seem like the > bare minimum. Are you thinking about some kind of minimal racket running on a > Raspberry Pi or something more abstract? > > > Deren > > > On Fri, Jul 7, 2017 at 8:16 PM, Lehi Toskin wrote: > I have this idea, this vision. I wish to create a small system that would > more or less only be to turn on the machine (probably an RPi) and then you'd > immediately be inside a Racket REPL. Probably wouldn't be very interesting by > itself, but that seems to be almost exactly what eLua and MicroPython are. > > > > Say, for the sake of discussion, such a tiny system were created. What > functionality would you expect to be available? Filesystem access? > Networking? Or simply just the racket/base REPL and that's it? > > > > -- > > You received this message because you are subscribed to the Google Groups > "Racket Users" group. > > To unsubscribe from this group and stop receiving emails from it, send an > email to racket-users...@googlegroups.com. > > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Boot To Racket
I actually use Racket in an embedded linux scenario on a 32-bit ARM. The board has Debian installed but without twiddling boots under busybox. Once upon a time I thought about giving a 5-minute presentation at Racketcon on the experience of using Racket in this way but it never happened. It's very hard to say what my hypothetical minimum requirements would be for such a system without thinking of the hardware that would exist. Filesystem, USB/RS232 serial/ whatever else the chip offers, and network seem like the bare minimum. Are you thinking about some kind of minimal racket running on a Raspberry Pi or something more abstract? Deren On Fri, Jul 7, 2017 at 8:16 PM, Lehi Toskin wrote: > I have this idea, this vision. I wish to create a small system that would > more or less only be to turn on the machine (probably an RPi) and then > you'd immediately be inside a Racket REPL. Probably wouldn't be very > interesting by itself, but that seems to be almost exactly what eLua and > MicroPython are. > > Say, for the sake of discussion, such a tiny system were created. What > functionality would you expect to be available? Filesystem access? > Networking? Or simply just the racket/base REPL and that's it? > > -- > You received this message because you are subscribed to the Google Groups > "Racket Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to racket-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Boot To Racket
I would love to see a Racket unikernel, and be able to essentially run a modern Lisp machine. That seems like a really big project, but I guess I have no real understanding of how big it would be, or what parts you could use off the shelf (eg. from OS-kit. I understand this was done before in Racket some years ago). But I recall some talk about MirageOS (I think) where they said something about it taking something like 2 years to rewrite the IP/TCP stack in OCaml. But whatever the timeline I would *love* to see it. On Fri, Jul 07, 2017 at 06:19:52PM -0700, Lehi Toskin wrote: Well there is the racket-rash project[1]. So you're thinking of more a *NIX environment inside the REPL? Just FYI, Rash is near the end of a major rewrite, so the documentation that is up (what there is of it) is all wrong, and the language is very different now. But it does aim to do everything that a unix shell (eg. bash) does, as well as much more, embeddable in any Racket program at the expression or module level (also you can escape to normal Racket, embedding any normal Racket code inside Rash). Also eventually I hope to have a nicer interactive repl with completion, etc, as half of the purpose is to have a better interactive shell environment. But the language part is close to being more or less done. If someone did make a Racket unikernel, I suppose the parts for running Unix (or Windows, if you're into that kind of thing) programs and pipelining them wouldn't work on it. But pipelines of Racket functions would still work normally. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Boot To Racket
That's an interesting project. It's a little too inclusive, so to speak, for what I was thinking of implementing. On Friday, July 7, 2017 at 7:33:32 PM UTC-7, Neil Van Dyke wrote: > I've made a boot-to-Racket-app appliance image for x86 before, based on > Debian Live. The bootable filesystem image was under 400 MB, including > Linux, X, Racket, various other native programs and libraries, and the > app itself. > > It would boot to a full-screen display that would display a hostname or > IP address at which you should point your smartphone/tablet/laptop Web > browser, to get a remote control UI "HTML5 mobile app". But I could > also have had it run "racket" REPL or DrRacket rather than the app. > > (This appliance was going to be an example for my abandoned book, but I > did release a few independently reusable Racket packages from it, in > keeping with the methodology the book was to promote.) > > One clean way to implement boot-to-Racket is with the "build-lildeb" > script of an earlier GNU/Linux distro -- one script file shows and > implements all the changes made to strip down and customize Debian > Live. There's also an "update-lildeb" flashing script, which goes to a > lot of trouble to tweak the partition table of the flashed device. > http://www.neilvandyke.org/lildeb/ > > If you want something smaller than a stripped-down Debian, there's > OpenWrt. There are signs that someone unknown once put considerable > work into getting Racket to run on hardware architectures like some > small OpenWrt devices have, because Racket REPL came up a little too > easily once I got OpenWrt building working. The OpenWrt package for > Racket turned out to be less than 6 MB, though the bigger concern is the > runtime RAM footprint. I didn't test this much. > http://www.neilvandyke.org/racket-openwrt/ > > There's also various other projects for embedded Linux. Some of them > get into messier and more questionable toolchains, and can involve a lot > more work and sometimes sketchy provenance. Personally, if your target > hardware is even a modest, well-supported x86 or ARM device (not > something very small or strange), I'd probably start with Debian Live > (probably copying and modifying my "build-lildeb" script), and see how > that works. > > Or you could just have instructions (or a script) for how to modify a > stock Debian, Raspian, Arch, etc. install to boot-to-Racket, in a manner > of speaking. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Boot To Racket
I've made a boot-to-Racket-app appliance image for x86 before, based on Debian Live. The bootable filesystem image was under 400 MB, including Linux, X, Racket, various other native programs and libraries, and the app itself. It would boot to a full-screen display that would display a hostname or IP address at which you should point your smartphone/tablet/laptop Web browser, to get a remote control UI "HTML5 mobile app". But I could also have had it run "racket" REPL or DrRacket rather than the app. (This appliance was going to be an example for my abandoned book, but I did release a few independently reusable Racket packages from it, in keeping with the methodology the book was to promote.) One clean way to implement boot-to-Racket is with the "build-lildeb" script of an earlier GNU/Linux distro -- one script file shows and implements all the changes made to strip down and customize Debian Live. There's also an "update-lildeb" flashing script, which goes to a lot of trouble to tweak the partition table of the flashed device. http://www.neilvandyke.org/lildeb/ If you want something smaller than a stripped-down Debian, there's OpenWrt. There are signs that someone unknown once put considerable work into getting Racket to run on hardware architectures like some small OpenWrt devices have, because Racket REPL came up a little too easily once I got OpenWrt building working. The OpenWrt package for Racket turned out to be less than 6 MB, though the bigger concern is the runtime RAM footprint. I didn't test this much. http://www.neilvandyke.org/racket-openwrt/ There's also various other projects for embedded Linux. Some of them get into messier and more questionable toolchains, and can involve a lot more work and sometimes sketchy provenance. Personally, if your target hardware is even a modest, well-supported x86 or ARM device (not something very small or strange), I'd probably start with Debian Live (probably copying and modifying my "build-lildeb" script), and see how that works. Or you could just have instructions (or a script) for how to modify a stock Debian, Raspian, Arch, etc. install to boot-to-Racket, in a manner of speaking. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Boot To Racket
Well there is the racket-rash project[1]. So you're thinking of more a *NIX environment inside the REPL? [1] https://github.com/willghatch/racket-rash On Friday, July 7, 2017 at 5:38:51 PM UTC-7, Royall Spence wrote: > How about a full suite of all the usual shell commands? I believe this > is the approach scsh takes. Come to think of it, I'm going to give that > a try now... > -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [racket-users] Boot To Racket
How about a full suite of all the usual shell commands? I believe this is the approach scsh takes. Come to think of it, I'm going to give that a try now... On Fri, Jul 7, 2017, at 08:16 PM, Lehi Toskin wrote: > I have this idea, this vision. I wish to create a small system that would > more or less only be to turn on the machine (probably an RPi) and then > you'd immediately be inside a Racket REPL. Probably wouldn't be very > interesting by itself, but that seems to be almost exactly what eLua and > MicroPython are. > > Say, for the sake of discussion, such a tiny system were created. What > functionality would you expect to be available? Filesystem access? > Networking? Or simply just the racket/base REPL and that's it? > > -- > You received this message because you are subscribed to the Google Groups > "Racket Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to racket-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[racket-users] Boot To Racket
I have this idea, this vision. I wish to create a small system that would more or less only be to turn on the machine (probably an RPi) and then you'd immediately be inside a Racket REPL. Probably wouldn't be very interesting by itself, but that seems to be almost exactly what eLua and MicroPython are. Say, for the sake of discussion, such a tiny system were created. What functionality would you expect to be available? Filesystem access? Networking? Or simply just the racket/base REPL and that's it? -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.