bolha.us is one of the many independent Mastodon servers you can use to participate in the fediverse.
We're a Brazilian IT Community. We love IT/DevOps/Cloud, but we also love to talk about life, the universe, and more. | Nós somos uma comunidade de TI Brasileira, gostamos de Dev/DevOps/Cloud e mais!

Server stats:

252
active users

#scheme

7 posts6 participants0 posts today
Lisp & Scheme Weekly<p>Lisp &amp; Scheme recap for week 13/2025</p><p><a href="https://discu.eu/weekly/lisp/2025/13/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">discu.eu/weekly/lisp/2025/13/</span><span class="invisible"></span></a></p><p><a href="https://mastodon.social/tags/clojure" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>clojure</span></a> <a href="https://mastodon.social/tags/lisp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lisp</span></a> <a href="https://mastodon.social/tags/programming" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>programming</span></a> <a href="https://mastodon.social/tags/racket" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>racket</span></a> <a href="https://mastodon.social/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a></p><p>Get RSS feeds and support this bot with the premium plan: <a href="https://discu.eu/premium" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">discu.eu/premium</span><span class="invisible"></span></a></p>
David Wilson<p>🔴 On today's Crafter Hours stream, I'll show some progress I made on hosting both the emacspackages site and the new Guile-backed System Crafters site on the same Guix server.</p><p>I kinda made a mess with it though, so we'll have to find our way out of that, too :)</p><p>Join us here:</p><p>- <a href="https://youtube.com/live/OITQtQnz9X8" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">youtube.com/live/OITQtQnz9X8</span><span class="invisible"></span></a><br>- <a href="https://twitch.tv/SystemCrafters" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">twitch.tv/SystemCrafters</span><span class="invisible"></span></a></p><p><a href="https://fosstodon.org/tags/guile" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>guile</span></a> <a href="https://fosstodon.org/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a> <a href="https://fosstodon.org/tags/guix" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>guix</span></a> <a href="https://fosstodon.org/tags/programming" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>programming</span></a> <a href="https://fosstodon.org/tags/webdev" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>webdev</span></a> <a href="https://fosstodon.org/tags/sql" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>sql</span></a></p>
Digital Mark λ ☕️ 🕹 🙄<p><span class="h-card" translate="no"><a href="https://fe.disroot.org/users/ramin_hal9001" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>ramin_hal9001</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.sdf.org/@masso" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>masso</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.sdf.org/@screwtape" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>screwtape</span></a></span> <span class="h-card" translate="no"><a href="https://social.sachachua.com/@sacha" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>sacha</span></a></span> Linux and small Unices were really unsuitable for big binaries like LISP early on, in particular. You can't page out a gigantic mono binary as fast as a little one, so of course small editors like ed &amp; Vim and the GNU core utils were popular.</p><p>I had a couple friends who did use emacs on their systems, and it was kind of hilarious, but also annoying if they tried it on a shared system. PAGE GRONK someone's trying to meta-escape again.<br><a href="https://appdot.net/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a> <a href="https://appdot.net/tags/lisp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lisp</span></a> <a href="https://appdot.net/tags/emacs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>emacs</span></a></p>
Digital Mark λ ☕️ 🕹 🙄<p><span class="h-card" translate="no"><a href="https://fe.disroot.org/users/ramin_hal9001" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>ramin_hal9001</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.sdf.org/@masso" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>masso</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.sdf.org/@screwtape" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>screwtape</span></a></span> <span class="h-card" translate="no"><a href="https://social.sachachua.com/@sacha" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>sacha</span></a></span> As recounted in AI Memo 349, Scheme started in MacLisp 1.5 on PDP-10 (? probably?).</p><p>MIT-Scheme was originally (AI Memo 559) a Scheme-79 Chip emulator, then became a real Scheme with Edwin (Emacs but Scheme and doesn't eat all RAM). It had the virtue of soon running on PCs, or at least on small-system Unices, I dunno what year but I used it on ST MiNT in '88-ish?</p><p>Linus infamously still uses microemacs, but I dunno many people used Lisp on Linux.<br><a href="https://appdot.net/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a></p>
Andrew Tropin<p>TIL: There is an identifier-syntax macro that you can use to implement syntax-id-rules or do other fancy macro stuff.</p><p><a href="https://fosstodon.org/tags/scheme" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>scheme</span></a> <a href="https://fosstodon.org/tags/guile" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>guile</span></a> <a href="https://fosstodon.org/tags/racket" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>racket</span></a> <a href="https://fosstodon.org/tags/macros" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>macros</span></a></p>

I'm not sure I can trace how I got there, but something had me playing around with GNU Guile (I've always liked the idea of an embeddable Scheme, I just never got around to looking at it closely).

Anyway, Guile is way cooler than I thought -- way more "unix-y" than other Schemes I've known.

But the real surprise was a static site generator -- Haunt (dthompson.us/projects/haunt.ht) -- and a full-blown web framework -- Artanis (artanis.dev/)!

I am so glad both of these things exist.

dthompson.usHaunt — dthompson

My small overview of "JRM’s Syntax-rules Primer for the Merely Eccentric" paper about Scheme macros and useful tricks for writing them. Difficulty: medium-easy.

mpv youtu.be/A2vi3vQ15kM

Paper:
- phyast.pitt.edu/~micheles/synt
- hipster.home.xs4all.nl/lib/sch

Spoiler: at the end of the paper a minimal scheme evaluator implemented purely with macros.

youtu.be- YouTubeEnjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
Replied to Tariq

What I don’t like:

  • some stuff breaks “everything is a list” model
  • Common Lisp is not minimal, includes overlapping and legacy stuff

does #scheme address this?

@rzeta0 I would say yes, Scheme sort of addresses those issues.

Scheme’s biggest advantage is that it is minimal enough that you can understand the whole language specification top-to-bottom, inside and out. But that is also it’s greatest drawback: is that it is too minimal to be practical. So for a long time, every single Scheme implementation has a it’s own large and unique set of libraries for solving practical programming problems that were incompatible with other Scheme implementations, making the Scheme ecosystem very fragmented. The Scheme Request for Implementation (SRFI) process is meant to address this fragmentation issue. Fragmentation is still (in my opinion) a pretty big problem, though things are much better than they were 20 years ago.

The R6RS standard, as I understand it, tried to make Scheme more practical, but it started to become too Common Lisp-like in complexity so it was mostly rejected by the Scheme community — with a few notable exceptions, like the Chez Scheme compiler.

The next standard, R7RS, split the language into two parts: “R7RS small,” ratified in 2014, which is more like the original minimal core of the Scheme language, but just a few new features, in particular the define-library macro, for modularizing parts of Scheme programs into immutable environment objects. Then they took a collection of “SRFIs” and declared them to be part of the “R7RS large” language standard. The full “large” language specification is not yet fully ratified, even 11 years after the completion of R7RS “small,” but I think the SRFIs they have ratified so far already make the latest Scheme standard a very practical language. The final R7RS standard may end up being larger than Common Lisp, but that is fine with me since it can be almost completely implemented in the R7RS “small” Scheme standard.

R7RS “small” Scheme, in my opinion, is a powerful but minimal language that exists to implement other languages, but is still useful in it’s own right as a progeny of Lisp. The “R7RS large” language then adds the useful features of larger languages like Python or Common Lisp as a layer on top of the “R7RS small” language.

The current chair of the R7RS working group is Daphne Preston Kendal, and is often on Mastodon as @dpk . She can tell you if I got anything in this post wrong.

srfi.schemers.orgScheme Requests for Implementation

Finally got to chapter 14 of the #lisp course ... people say this is the power of lisp.

So far what I like about lisp:

* simple syntax, so not a lot to learn to read others code

* some constructs hit sweet spot of simple vs general eg DO, COND, LAMBDA

* simple conceptual model (almost everything is a list)

What I don't like (i'm a beginner)

* some stuff breaks "everything is a list" model

* Common Lisp is not minimal, includes overlapping and legacy stuff

does #scheme address this?

What are the best materials on hygienic macros?

I went through the greghendershott.com/fear-of-ma

I think I got the basics, but still very puzzled. For example I faced syntax-id-rules in a paper, which is Racket-specific and now I'm curious how to implement the same functionality in non-racket Scheme?

Also, plan to go through
mnieper.github.io/scheme-macro

www.greghendershott.comFear of MacrosPractical Racket macros

🔴 On today's Crafter Hours stream, we'll split out some of the code we've been building for our project into separate Guile libraries so that they can be used in other projects (like the new systemcrafters.net!)

Let's figure out how to ship multiple libraries from a single repository, all packaged using Guix!

Join us here:

- youtube.com/live/XFyGylqEz3Q
- twitch.tv/SystemCrafters

#guile#scheme#guix