writing.exchange is one of the many independent Mastodon servers you can use to participate in the fediverse.
A small, intentional community for poets, authors, and every kind of writer.

Administered by:

Server stats:

330
active users

#commonlisp

8 posts7 participants0 posts today

Having packages/modules be defined as single files is a fundamental programming language design error. #Python, but also #Erlang, #Scheme, the misguided package-inferred-system extension for #CommonLisp… Because no one wants a 10k lines file mixing dozens of concepts, you end up with a multitude of small packages for no good reason.

At least in Erlang you can just use whatever was loaded without manually importing every single module you need everywhere, but Python is as usual the worst.

#LispyGopherClimate #lisp #ai #peertube
communitymedia.video/w/7KpDL8d

@kentpitman #haiku

Resurrected Sandewall's #softwareIndividuals from 2014.

This episode is dedicated to general purpose interaction in the software individual / #CAISOR paradigm.

Next will be porting the dynamicwindows zetalisp zwei to McCLIM #commonlisp.

@prahou #unix_surrealism next #openbsd release art??

Also @pesco and @dougmerritt on IPE '84

co guest and join in on #lambdaMOO as always!

@mdhughes @nosrednayduj @sacha

Replied in thread

@pedromj seeing your iterative and recursive ones helped me see what I was /meant/ to do with series (which should be lazy and declarative):
``` #commonLisp #series
(defun better-fibs
(n &optional (x-1 0) (x-0 1))
(let* ((range (scan-range))
(fibonacci-series
(#M(lambda (n)
(declare (ignore n))
(psetq x-1 x-0
x-0 (+ x-1 x-0))
(values x-0))
range)))
(collect-nth n fibonacci-series)))
```
CL-USER> (better-fibs 4)
8

(Edit: (scan-range) on its own is just 𝗡)

I realized that I should have two #slime repls open, one running a Sandewallian software individual clisp-repl and one McCLIM running ecl-repl (or what have you) and things are getting weird.

This is because the software individual with a beliefbase about using McCLIM is /not/ the McCLIM lisp image itself, it is a separate lisp image that contains beliefs and actions for using McCLIM in another image. Which is trivial in #emacs with slime. #commonLisp #notThatCommonThoughTeeBeeAitch

Replied to Jonathan Lamothe

@me You can find here 2 interviews of small teams using CL. One "secretly", one in a great open-source product:

"questions to Alex Nygren of Kina Knowledge, using Common Lisp extensively in their document processing stack"
lisp-journey.gitlab.io/blog/li

"Arnold Noronha of Screenshotbot: from Facebook and Java to Common Lisp."
lisp-journey.gitlab.io/blog/li

Lisp journey · Lisp Interview: questions to Alex Nygren of Kina Knowledge, using Common Lisp extensively in their document processing stack - Lisp journeyBy Lisp journey
Replied to Jonathan Lamothe

@me Personally, as a solo developer, I use CL more and more in my stack, ditching Python the more I can. I wrote about it: lisp-journey.gitlab.io/blog/ru

Instead of extending a Python software I write independent modules in CL. It works well for standalone scripts too (read a DB, process data, send everything to a FTP, to a web service, by email…) It's such a joy.

On Discord, we see some are in big tech©, wrote their personal tool in CL and now it's part of the team's stack.

Lisp journey · Running my 4th Common Lisp script in production© - you can do it too - Lisp journeyBy Lisp journey
https://tomscii.sig7.se/2025/04/The-Barium-Experiment

TLDR: All guis suck. Xwindows isn't going anywhere anytime soon.
Common lisp is the obvious language to use for reasons.

I agree with this whole blog post, and they have a new gui project:
I especially agree with the shittiness that is gui frameworks
(and other frameworks too i guess) intentionally obsoleting
their stuff before it even catches on. (gtk)
I assume the gui frameworks don't see it that way, but that
logic is pretty inescapable. Another example of my new
phrase "novelty chasers".

https://tomscii.sig7.se/barium/

#commonlisp
#techpost
tomscii.sig7.seThe Barium ExperimentThere’s been a lot of buzz about GUI stuff lately, which made mebriefly reflect on the state of the art and share something I’ve beenworking on as of late.

The port of my music player #Benben to #CommonLisp continues... and as of tonight, the original S-Lang TUI interface is working! ​:happyremi: I even managed to fix a bug with the scrolling text fields and Japanese text.

The only C bindings going on here are:
#libxmp (to play the .xm file), libao (final audio output), ZStandard (VGM decompression), and #S-Lang (TUI). The rest is pure Common Lisp, including the DSP effects and #VGM playback/chip emulation.

Normally you launch this from the command line (which is also working), but I did it with Emacs+Slime just to be fancy.

#LinuxAudio

Replied in thread

@simendsjo @jackdaniel #XMPP has all those features, and there's a fairly big #Lisp / #Scheme / #CommonLisp channel there - xmpp.link/#lisp@conference.a3.

It might not have everything that #Discord does, but it's vastly better than #IRC. And there's a cost to using #proprietary and #centralized services, which people constantly forget about in chasing convenience and shiny features.

Here's a guide to help you get started.
contrapunctus.codeberg.page/th

xmpp.linkXMPP Invitation

Lisp sucks. Tell me what's wrong here:

(DEFVAR x 0) ; GLOBAL BADNESS STAYS

(DEFUN dO-StuFf (NUMBer)
(LET ((rEsUlT 1))
(DECLARE (SPECIAL X)) ; THIS IS LEGAL HERE
(SETQ X NUMBER)
(TAGBODY
StaRT
(IF (< X 1) (GO ENDz))
(SETQ rEsUlT (* rEsUlT X))
(SETQ x (- x 1)) ; NOTE: STILL USING GLOBAL x INSTEAD OF LOCAL X
(GO StARt)
ENDz)
(pRiNt (lIsT 'FACtoRiAl-oF NUMBER 'iS rEsUlT))))

(DEFUN nOW-dO-AlL ()
(LET ((I 0))
(LOOP
(WHEN (> i 5) (RETURN))
(Do-sTUFF i)
(SETQ i (+ i 1)))))

(nOW-dO-AlL)

#commonlisp #lisp #sbcl #clisp @amszmidt @screwtape

Here's a new challenge for Lisp folks to figure out.

Why does this fail. And don't give the error message as the answer. WHY does this do what it does?

(defun who-am-i ()
(flet ((x () 'inner))
(labels ((x () (x))) ;;
(x))))

Is the third line calling inner or itself?

Okay you get one second hint: Yes, it overflows. Why?

That is the challenge.