social.coop is one of the many independent Mastodon servers you can use to participate in the fediverse.
A Fediverse instance for people interested in cooperative and collective projects. If you are interested in joining our community, please apply at https://join.social.coop/registration-form.html.

Administered by:

Server stats:

489
active users

#PreScheme

0 posts0 participants0 posts today
Michel Lind :fedora: :debian:<p>Small Headed Programming by Pjotr Prins</p><p><a href="https://hachyderm.io/tags/PreScheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>PreScheme</span></a> looks really nice (for Pythonistas think Cython but this transpiles to proper C, just like <a href="https://hachyderm.io/tags/Vala" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Vala</span></a> transpiles a C# like language to C)</p><p>Readable Lisp, readable C</p><p><a href="https://fosdem.org/2025/schedule/event/fosdem-2025-5848-small-headed-programming-for-performance-with-prescheme-nim-and-zig/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">fosdem.org/2025/schedule/event</span><span class="invisible">/fosdem-2025-5848-small-headed-programming-for-performance-with-prescheme-nim-and-zig/</span></a> <a href="https://hachyderm.io/tags/FOSDEM" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FOSDEM</span></a><br><a href="https://hachyderm.io/tags/FOSDEM2025" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FOSDEM2025</span></a><br><a href="https://hachyderm.io/tags/FLOSSConf" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FLOSSConf</span></a><br><a href="https://hachyderm.io/tags/FLOSSConference" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FLOSSConference</span></a></p>
aziz<p>I merged the rework branch of <a href="https://functional.cafe/tags/letloop" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>letloop</span></a> </p><p>That rework has two parts:</p><p>- prefix all scheme command with scheme, so now to spawn a REPL you can do you: letloop scheme repl. This is done like that because there is another namespace in the cli, namely letloop root for container interaction, also because I *dream* of implementing vau on top of Chez but to do that in a way that is helpful, and easy, I will need to do it in another language hence another cli namespace. Got it?</p><p>- To avoid community fragmentation, and ease maintenance, I dropped the `(srfi)`, and `(scheme)` namespaces. That does not mean, no SRFI will land in letloop, it means they will not be under `(srfi)`, or `(scheme)` namespaces. Keeping up with changes in chez-srfi, and R7RS is difficult, it is better to rely on chez-srfi repository, or <a href="https://akkuscm.org" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">akkuscm.org</span><span class="invisible"></span></a> to use those. Happy?</p><p>Another dream I have is build my own okvs <a href="https://functional.cafe/tags/database" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>database</span></a>. I tried bigloo but it is slow 💔. Even Chez Scheme is too slow for that kind of work. That still looks foolish from on job market perspective to do that kind of low level work in Scheme. So that means I need to learn <a href="https://functional.cafe/tags/rust" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rust</span></a> or better... wait for <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a>.</p><p>In the meantime I will focus on the sub-command `letloop scheme serve` [0] to ease the deployment of scheme <a href="https://functional.cafe/tags/web" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>web</span></a> applications. Yes it is petit-cloud [1], instead foundationdb I will use <a href="https://functional.cafe/tags/lmdb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lmdb</span></a>, and the name is not final, I will prolly come back to petit-cloud 🌤️ By the way, if you know about a bootstrap-like css framework I am willing to consider your suggestions.</p><p>If you want to try letloop, I mean I know you want to try letloop! Checkout <a href="https://github.com/letloop/letloop/releases" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/letloop/letloop/rel</span><span class="invisible">eases</span></a> download the binary for your favorite linux or gnu/linux distro. Mind the fact that I dropped support for program.scm so you need to move all your logic inside a `library.scm` with say a `main` procedure, and execute it will: letloop exec /path/to/libraries /path/to/library.scm main -- command line arguments.</p><p>I will be very happy to get feedbacks, and patches 😁 </p><p>[0] diff view at <a href="https://github.com/letloop/letloop/pull/26/files" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/letloop/letloop/pul</span><span class="invisible">l/26/files</span></a></p><p>[1] <a href="https://amirouche.dev/2023/04/petit-cloud-specification/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">amirouche.dev/2023/04/petit-cl</span><span class="invisible">oud-specification/</span></a></p><p>Happy hacking!!1</p>
Artyom Bologov<p><span class="h-card" translate="no"><a href="https://mas.to/@Laauurraaa" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>Laauurraaa</span></a></span> the smallest binary footprint dream is actually quite close to <a href="https://merveilles.town/tags/BinaryLambdaCalculus" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>BinaryLambdaCalculus</span></a>—there are only three (relatively high-level!) primitives that are expressed by short patterns of bits. </p><p>And you might've seen me boasting a 350-bit sorting program already, so something taking a whole screen of C code fits into 50 bytes, actually!</p><p>Given some (relatively primitive) compiler building, one can have a strictly typed&amp;inferred language that compiles down to raw applicative <a href="https://merveilles.town/tags/LambdaCalculus" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LambdaCalculus</span></a> and actually looks easy on the eye! Something like Scheme &amp; <a href="https://merveilles.town/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a>, but even more minimalist in the computation basis! And yes, fast too, given a bit of (trivial) optimization and maybe your FPGA ideas :neofox_wink:</p>
Andrew Whatson<p><span class="h-card" translate="no"><a href="https://mastodon.bsd.cafe/@kaveman" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>kaveman</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@lisp_discussions" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>lisp_discussions</span></a></span> CRUNCH looks excellent! I'm very glad that the work on <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a> has encouraged others to experiment with the combination of static typing, minimal runtime, and Scheme metaprogramming. Felix has covered a lot of ground on the language design &amp; tooling, I'll definitely be keeping CRUNCH compatibility in mind as the Pre-Scheme restoration progresses.</p>
Andrew Whatson<p>Thanks <span class="h-card" translate="no"><a href="https://mastodon.social/@pjotrprins" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>pjotrprins</span></a></span>, <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a> is definitely lacking in documentation and examples right now, and I know that people are eager to dive in. Unfortunately it's not very user-friendly in its current state; the language didn't see much use outside of its initial use-case, and it shows!</p><p>After the port is complete, I'll be making a number of language and tooling changes to improve this situation. Once those are settled, I'll move on to documentation and guides to make the language accessible to a wider audience.</p><p>An outline of the planned changes can be found here: <a href="https://prescheme.org/roadmap.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">prescheme.org/roadmap.html</span><span class="invisible"></span></a></p><p><span class="h-card" translate="no"><a href="https://social.nlnet.nl/@nlnet" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>nlnet</span></a></span></p>
Andrew Whatson<p>It's time for an update on the Pre-Scheme Restoration project!</p><p>TL;DR: The compiler is approximately 75% ported to Chibi, Sagittarius and Guile, with Unsyntax expander integration underway. We've also got a new R7RS compatibility layer for Scheme 48, and a bunch of tooling written with Scsh.</p><p>Thanks to <span class="h-card" translate="no"><a href="https://social.nlnet.nl/@nlnet" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>nlnet</span></a></span> for supporting this project under the NGI Zero Core program.</p><p>See my update post for more details: <a href="https://prescheme.org/posts/first-report-on-the-pre-scheme-restoration.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">prescheme.org/posts/first-repo</span><span class="invisible">rt-on-the-pre-scheme-restoration.html</span></a></p><p><a href="https://functional.cafe/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a> <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a></p>
Andrew Whatson<p>Wow <span class="h-card" translate="no"><a href="https://merveilles.town/@aartaka" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>aartaka</span></a></span>, this is excellent, thanks!</p><p>This beautifully demonstrates a number of nice things about <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a>:</p><p> - The power of using <a href="https://functional.cafe/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a> macros to define language constructs.<br> - The flexibility of full type inference as the base model for static typing.<br> - The efficiency of having a proper optimizing compiler (in this case, dead code elimination).</p><p>Very cool!</p>
Andrew Whatson<p><span class="h-card" translate="no"><a href="https://merveilles.town/@aartaka" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>aartaka</span></a></span> I was curious how SRFI 253 could be supported without predicates, but I see the implementation-specific macros treat the predicates as identifier literals and translate them into the equivalent type names. That approach could definitely be made to work for <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a>, nice!</p><p>I think the situation with support for explicit types in Scheme can be explained by survivorship bias. Programmers who strongly prefer type declarations are better served by other languages, so we're left with a community that are generally happy to omit them. FFI's are just one place where they're really not optional.</p><p>Cheers!</p><p><span class="h-card" translate="no"><a href="https://fosstodon.org/@daviwil" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>daviwil</span></a></span></p>
Andrew Whatson<p><span class="h-card" translate="no"><a href="https://merveilles.town/@aartaka" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>aartaka</span></a></span> thanks for working on SRFI 253, and thanks for your interest in <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a>!</p><p>The original/legacy implementation of Pre-Scheme provides no support for runtime type checks. This is because there is no type information available at runtime; all types are inferred &amp; resolved at compile-time, and the type information is discarded when lowering to machine code. This reflects the functionality of C, which has no analogue for Scheme's `integer?`.</p><p>It does have explicit types in two places: the definition of record types (where each field must have a type), and the declaration of external identifiers. The notation for types uses `(=&gt; (integer integer) integer)` to represent a binary operation on integers, and `(^ integer)` to represent a pointer-to-integer. This resembles Chicken's notation (<a href="http://wiki.call-cc.org/man/5/Types" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">http://</span><span class="">wiki.call-cc.org/man/5/Types</span><span class="invisible"></span></a>) if `=&gt;` was an alias for `procedure`, though Chicken doesn't appear to support typed pointers.</p><p>Given this starting point, something like Chicken's `:` and `the` (which is also a Common Lisp-ism) would be the easiest way to extend Pre-Scheme with support for type annotations. As for Bigloo's `::` type suffixes, they're not compatible with Scheme's rules for identifier naming, and therefore not compatible with Pre-Scheme's goal of being a Scheme "subset".</p><p>I think the "holy grail" for a future version of Pre-Scheme would be to support Scheme's type predicates as compile-time checks. This would be the most natural system for Scheme programmers, and could form the basis of a lightweight type checking syntax compatible with SRFI 145 and SRFI 253. In addition to type checking, predicates would introduce a general mechanism for ad-hoc polymorphism to Pre-Scheme, which would be very useful, but has implications for type inference which need to be explored.</p><p>In the coming months I'll be working on some initial (simpler!) extensions for Pre-Scheme's type system to support sized numeric types, polymorphic arithmetic, and unions/sum types. These all touch on the same topic from slightly different directions, and I'll be in a better position to plan further extensions once they're done.</p><p><span class="h-card" translate="no"><a href="https://fosstodon.org/@daviwil" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>daviwil</span></a></span></p>
Andrew Whatson<p><span class="h-card" translate="no"><a href="https://fosstodon.org/@daviwil" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>daviwil</span></a></span> Sorry I couldn't catch this live, but I enjoyed watching the VOD!</p><p>Going "first principles" from the manual to a working program popping up a Raylib window is impressive, a valiant effort despite the arcane tooling!</p><p>You might be interested in looking at the <a href="https://codeberg.org/prescheme/prescheme-demo" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/prescheme/presche</span><span class="invisible">me-demo</span></a> repository, it has some basic examples tied together with a Guix manifest and a simple Makefile which makes for a slightly more comfortable workflow.</p><p>For the Scheme 48 REPL, you can leave error levels with `,reset`, equivalent to Guile's `,q` or `,quit`. I also find it useful to run scheme48 inside rlwrap to get some completion and history:</p><p><a href="https://codeberg.org/prescheme/s48-r7rs/src/branch/main/bin/run-s48" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/prescheme/s48-r7r</span><span class="invisible">s/src/branch/main/bin/run-s48</span></a></p><p>Really appreciate the stream and getting some more hands and eyeballs on <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a> :blobcatscience:</p>
Life is Tetris<p><span class="h-card"><a href="https://emacs.ch/@ramin_hal9001" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>ramin_hal9001</span></a></span></p><p>&gt; <a href="https://qoto.org/tags/Scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Scheme</span></a> on top of <a href="https://qoto.org/tags/PreScheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>PreScheme</span></a><br>Ah, you are a minimalist that way. Sort of what <a href="https://qoto.org/tags/Squeak" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Squeak</span></a> <a href="https://qoto.org/tags/Smalltalk" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Smalltalk</span></a> does with its VM development (based on C). I'd want the high-level language to do heavy-lifting, so maybe <a href="https://qoto.org/tags/LispFlavouredErlang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LispFlavouredErlang</span></a> on top of PreScheme.</p><p>&gt; OS in PreScheme and Scheme<br>GNU Mes and <a href="https://qoto.org/tags/Guix" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Guix</span></a> must be on that track.</p><p><span class="h-card"><a href="https://emacs.ch/@louis" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>louis</span></a></span> <span class="h-card"><a href="https://emacs.ch/@craigbro" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>craigbro</span></a></span></p>
Life is Tetris<p><span class="h-card"><a href="https://emacs.ch/@ramin_hal9001" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>ramin_hal9001</span></a></span><br>As a <a href="https://qoto.org/tags/Zig" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Zig</span></a> fan, and also unhappy about NIH, yours is a very sobering take. I guess you imply that only code to bootstrap a higher-level language should be written in a lower-level language and <a href="https://qoto.org/tags/PreScheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>PreScheme</span></a> is enough for that. But what do you typically use for everything on top of that?<br><span class="h-card"><a href="https://emacs.ch/@louis" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>louis</span></a></span> <span class="h-card"><a href="https://emacs.ch/@craigbro" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>craigbro</span></a></span></p>
Eugen<p>Hey <span class="h-card" translate="no"><a href="https://social.sdf.org/@elb" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>elb</span></a></span> , you might be interested in this <a href="https://mas.to/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a> project <a href="https://prescheme.org" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">prescheme.org</span><span class="invisible"></span></a> . don't know if they accept contributions, but seems to be in your area of interest.</p>
Andrew Whatson<p><span class="h-card" translate="no"><a href="https://writing.exchange/@lechner" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>lechner</span></a></span> It depends how you want to define "arrival"!</p><p>The compiler has been around for a long time, and you can use <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a> today; the easiest way is the scheme48-prescheme package in Guix, as shown here: <a href="https://codeberg.org/prescheme/prescheme-demo" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/prescheme/presche</span><span class="invisible">me-demo</span></a></p><p>There are plenty of rough edges, hence the Pre-Scheme Restoration project. I expect to be done with initial porting work in the next month, and then continue with the other improvements outlined. There will be posts along the way so you can follow my progress, and this should culminate in a release early 2025.</p>
Andrew Whatson<p><span class="h-card" translate="no"><a href="https://hachyderm.io/@jamiejennings" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>jamiejennings</span></a></span> Thanks Jamie, it's great to hear from people with hands-on experience in this space.</p><p>I haven't looked into Kali Scheme closely, but a distributed Scheme system reminds me a lot of what the <span class="h-card" translate="no"><a href="https://octodon.social/@spritelyinst" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>spritelyinst</span></a></span> are working on with the Goblins framework. Very cool stuff!</p><p>Running the Pre-Scheme compiler on Scheme 48 is a bit easier these days, the scheme48-prescheme package in Guix hides most of the messy details, and the prescheme-demo repository has some simple examples tied together with a Makefile.</p><p><a href="https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/scheme.scm#n428" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">git.savannah.gnu.org/cgit/guix</span><span class="invisible">.git/tree/gnu/packages/scheme.scm#n428</span></a></p><p><a href="https://codeberg.org/prescheme/prescheme-demo" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/prescheme/presche</span><span class="invisible">me-demo</span></a></p><p><a href="https://functional.cafe/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a> <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a></p>
Andrew Whatson<p><span class="h-card" translate="no"><a href="https://fosstodon.org/@mirkoh" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>mirkoh</span></a></span> Yes, this limitation is one of the first things that will be addressed after the initial porting work is complete. The plan is to expose the full set of signed and unsigned 8/16/32/64-bit integers (stdint.h), float, and double, along with polymorphic arithmetic operators so you can use them together in the same program, as you would in C.</p><p><a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a></p>
Andrew Whatson<p><span class="h-card" translate="no"><a href="https://functional.cafe/@filip" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>filip</span></a></span> The current project is focused on running the compiler in a Scheme implementation, and generating native code with a C compiler.</p><p>The bootstrapping story is really a question of "how much Scheme" and "how much C". I'd love for Pre-Scheme to run on GNU Mes, but that hasn't been investigated yet. I'm in touch with folks in the bootstrapping community who are experts in minimal C compilers, and intend to do a detailed analysis of compatibility at some point. Early diagnosis is that Pre-Scheme isn't very demanding of a C compiler and targeting minimal compilers should be possible.</p><p>Beyond that, there's the possibility for adding new backends to the Pre-Scheme compiler. The original compiler described in "Compilation By Program Transformation" emitted m68k assembly. The paper "A Tractable Native-Code Scheme System" describes re-purposing the compiler as a bytecode optimizer, which involved writing a backend to emit Scheme 48 bytecode. I also have colleagues who are very interested in the possibility of a WebAssembly backend.</p><p><a href="https://prescheme.org/references.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">prescheme.org/references.html</span><span class="invisible"></span></a></p><p><a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a> <a href="https://functional.cafe/tags/bootstrappablebuilds" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>bootstrappablebuilds</span></a></p>
Luis Felipe<p>Maybe the denizens of Guix and Guile worlds are interested in this</p><p>«Announcing the Pre-Scheme Restoration project! Many thanks to @nlnet who have made this project possible.» </p><p>«The primary objective of the Pre-Scheme Restoration project is to make Pre-Scheme available as a practical alternative to C for the wider Scheme community.»</p><p>— <span class="h-card" translate="no"><a href="https://functional.cafe/@flatwhatson" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>flatwhatson</span></a></span> </p><p><a href="https://prescheme.org/posts/announcing-the-pre-scheme-restoration.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">prescheme.org/posts/announcing</span><span class="invisible">-the-pre-scheme-restoration.html</span></a></p><p><a href="https://mastodon.online/tags/gnu" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gnu</span></a> <a href="https://mastodon.online/tags/guix" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>guix</span></a> <a href="https://mastodon.online/tags/guile" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>guile</span></a> <a href="https://mastodon.online/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a> <a href="https://mastodon.online/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a></p>
Andrew Whatson<p>Announcing the Pre-Scheme Restoration project! Many thanks to <span class="h-card" translate="no"><a href="https://social.nlnet.nl/@nlnet" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>nlnet</span></a></span> who have made this project possible.</p><p><a href="https://prescheme.org/posts/announcing-the-pre-scheme-restoration.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">prescheme.org/posts/announcing</span><span class="invisible">-the-pre-scheme-restoration.html</span></a></p><p><a href="https://functional.cafe/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a> <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a></p>
blake shaw 🇵🇸<p>after finishing LiSP I might have a stab at reading along with <a href="https://functional.cafe/tags/prescheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>prescheme</span></a></p>