#Scheme

2025-06-21

How Colts DC Lou Anarumo Will Scheme Open Laiatu Latu: Overload Fronts

The NFL is a matchup league. It’s a cliche—but there also is a lot of truth to it.…
#NFL #IndianapolisColts #Indianapolis #Colts #anarumo #blue #colts-film-analysis #dc #Football #front-page #Fronts #how #Laiatu #Latu #lou #Open #overload #Scheme #stampede #will
rawchili.com/nfl/147609/

Andrew Tropinabcdw@fosstodon.org
2025-06-20

@baleine and I have been messing around with Guile's Stack Traces and now they are freaking awesome.

trop.in/blog/actually-useful-s

#scheme #guile #lisp

Vassil Nikolovvnikolov@ieji.de
2025-06-19

> It's really stunning that it does not mention the Scheme language

So very, very true.

There are several large pieces of history in this regard that deserve not only to be published, but to be studied well.

Just a properly written history of closures in computer programming would be worth its weight in gold.
Even a short history.

#Algol
#BlockStructure
#CallByName
#Closures
#HistoryOfComputing
#Lisp
#Scheme

@kentpitman @amoroso

2025-06-16

What I’d like to have is getting asserts and types checked at compile time and at run time.

@khinsen It is interesting you say that, because I had just started reading this paper which seems to discuss a technique that does what you are asking:

“A Practical Soft Type System for Scheme.” Andrew K. Wright, Robert Cartwright

I haven’t read the whole paper yet, but their approach apparently rewrites a Scheme program to a new output file, and it does a type inference and static type checking pass in the process. They apparently declared types for every API in the R4RS Scheme standard library. The rewritten program also has assertions for runtime type checking inserted wherever the type checker deemed that it was not able to check the type statically.

@screwlisp @mdhughes

#tech #software #scheme #SchemeLang #TypeChecking #TypeTheory #StaticTypes #StaticTypeChecking

Adrian6lr61
2025-06-15

I'm excited to learn about another to read online : "Simply : Introducing Computer Science" people.eecs.berkeley.edu/~bh/s

mindsConnectedmindsConnected
2025-06-15

YouTube's war against ad-blockers continue, with another trick up their sleeve... mindsconnected.tech/index.php?

2025-06-14

Spent a little time messing with an extension for the #zed editor. I make heavy use of the todo.txt file format and a kind soul created a syntax highlighting extension for it.

I promptly added a simple but ham-fisted way to highlight kv strings and due dates: github.com/pursvir/zed-todo.tx

I feel like I know even less about #treesitter grammars than I did before and a mix of #scheme and #javascript is so weird.

Ethan Blantonelb@social.sdf.org
2025-06-13

About a year ago, I wrote a #guile #scheme UUID library (codeberg.org/elb/guile-uuid) as part of a personal project that is currently stalled, but I went ahead and released the UUID library as #OpenSource / #FreeSoftware because it seemed individually useful. A few months ago, a kind third-party individual started the process of packaging it for #Guix (which I use!). Today he had the packaging PR merged on @Codeberg (where my project is also hosted). This is why I love FLOSS!

2025-06-13

A former physician who operated out of several Virginia pain clinics was sentenced to 40 months in federal prison on Tuesday for his role in an opioid distribution and healthcare fraud scheme that endangered patients and exploited the medical system for profit.

newsmeapp.com/former-virginia-

Panicz Maciej GodekPaniczGodek@functional.cafe
2025-06-11

This is how I add safety to my code:

#GRASP #scheme #lisp

A screenshot from GRASP's repository on github showing a recent change set.
The phrase (unless (animation:advance! delta) ...) has been replaced with the phrase (unless (safely (animation:advance! delta)) ...) 3 times (once per each GRASP client).

Fun fact: the code works, because:
- the protocol for "advance!" in the Animation interface is that it ought to return #true if the animation is still supposed to be playing, and #false if it has finished and should be removed from the system
- the form "safely" (defined long ago by me) evaluates to #!null (Java's NULL) if it catches an exception
- #!null is treated as #false in the context of "if" in Kawa Scheme (and, by extension, "unless")

So now the animation will stop playing if its "advance!" method will either return #false or raise an exception.

Previously raising an exception from the "advance!" method crashed the entire animation system - so clearly this is an improvement, no?
Andrew Tropinabcdw@fosstodon.org
2025-06-11

@MinervasRefuge Fear of Macros is nice. I went through it on the stream and adapted to guile specifics: youtu.be/Ag4movPnGa8?list=PLZm

Also, take a look at syntax-rules primer: phyast.pitt.edu/~micheles/synt

And Writing Powerful Macros: mnieper.github.io/scheme-macro

#scheme #guile #macros

I sat down the other day to re-look through David Thompson guile-bstructs library, as a learning exercise.

I re-learnt a few things I didn't know before. Like how far it's possible to push syntax-rules/case. I've never quite seen anything like it before.

I've said it before, but scheme syntax-rule related stuff isn't the most intuitive thing. Fear of Macros is still the best explanation I've read; but doesn't show off the capability quite like that library does.

#Scheme #Guile #GuileScheme

2025-06-11

The previous owner of a fuel truck supply business has received a 12-month prison sentence and a $20,000 fine for masterminding a lengthy bid-rigging and market allocation scheme related to federal wildfire-fighting contracts throughout the Mountain West
newsmeapp.com/former-fuel-truc

Lisp & Scheme Weeklylisp_discussions
2025-06-10
Byggsteg Projectbyggsteg_project
2025-06-10

byggsteg ( the free ci/cd system ) now integrates nicely with and thanks to custom plugins we developed, performace is also great due to images and low amount of dependencies (and )

Easily submit a job (with retry mechanism) and poll for status, thus integrating the job at byggsteg and all logs, with the new actions at byggsteg-woodpecker:

codeberg.org/jjba23/byggsteg-w

Digital Mark λ ☕️ 🔪 🙄mdhughes@appdot.net
2025-06-10

SRFI-263: Prototype Object System
srfi.schemers.org/srfi-263/srf
#scheme

I have something similar, with less complexity, I don't think "resend" is necessary, just a utility "super" function. You don't ideally want to expose (obj 'foo args) as dispatch, but it's fine.

Self-type ("JavaScript-like", if you were born this millennium) objects really make a lot more sense for a light, dynamic language.

Digital Mark λ ☕️ 🔪 🙄mdhughes@appdot.net
2025-06-09

Items! I'm running out of steam to do equip right now, but it's the same selector function as drop.

Weirdly, there's no list-drop-nth function in Scheme, so I wrote one, kinda naively:
(define (list-drop-nth ls n)
(let loop [ (ls ls) (i 0) (out '()) ]
(if (null? ls)
(reverse out)
(loop (cdr ls) (inc i) (if (= i n) out (cons (car ls) out))
))))

(`delete` matches by equality, not index)

#gamedev #roguelike #scheme

Wide view map, with $ every so often🟨 🟥 🟨$🟨 🟨 🟨 🟨 🌵 🌵 🟨 🟨 🟨 🟥 🟨 🌵 🌵 🌵  $: rags
--------------------------------------------------------------------------------
? Get rags. Ready it if you want.
? Inventory
Name:       x
Score:        21
Strength:   13 [13]             Dexterity:   7 [ 7]
Endurance:  11 [11]             Tech:       12 [12]
Willpower:   8 [ 8]             Charisma:   10 [10]
Coins:        34                Disks:         0
Rations:       6                Bullets:      14
Weapon:     (none)              Armor:      (none)
Items:
A. small knife                  B. leather jacket
C. rags
--------------------------------------------------------------------------------
? Drop  (? for list, 0 to cancel)? C. rags: Dropped.
Digital Mark λ ☕️ 🔪 🙄mdhughes@appdot.net
2025-06-09

Everyone: Python is weird, main starts with:
if __name__=="__main__":
main(sys.argv[1:])

Me, side-eye:
(unless (member (program-name) '("chez" "petit" "scheme")) ;; is REPL
(main (command-line-arguments))
)

#scheme #repl

(I also sometimes use (member "--run" (command-line-arguments)) or the like, but program-name is clearer.
Some Schemes call main if you use it as a command-line program, not with load or include, but Chez leaves that up to you. RnRS specs are silent on the issue.)

Joseph Lim :mastodon:joseph11lim
2025-06-09

Slaying the zombie
🧐"Many up to 100 hours per week, more than double the 45-hour limit stipulated under the , largely due to high under 's 30-baht .. 455 doctors left the sector each year on average. With abt 24,000 doctors under the ministry, one doctor in the serves approximately 2,000 people -- double the 's recommended ratio"

bangkokpost.com/thailand/gener

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst