← Home ← Back to /g/

Thread 106288815

307 posts 146 images /g/
Anonymous No.106288815 >>106288902 >>106292262 >>106295313 >>106307320 >>106350861
(λ) - Lisp General
>Lisp is a family of programming languages with a long history and a distinctive parenthesized prefix notation. There are many dialects of Lisp, including Common Lisp, Scheme, Clojure and Elisp.

>Emacs is an extensible, customizable, self-documenting free/libre text editor and computing environment, with a Lisp interpreter at its core.

>Emacs Resources
https://gnu.org/s/emacs
https://github.com/emacs-tw/awesome-emacs
https://github.com/systemcrafters/crafted-emacs

>Learning Emacs
C-h t (Interactive Tutorial)
https://emacs.amodernist.com
https://systemcrafters.net/emacs-from-scratch
http://xahlee.info/emacs
https://emacs.tv

>Emacs Distros
https://spacemacs.org
https://doomemacs.org

>Elisp
Docs: C-h f [function] C-h v [variable] C-h k [keybinding] C-h m [mode] M-x ielm [REPL]
https://gnu.org/s/emacs/manual/eintr.html
https://gnu.org/s/emacs/manual/elisp.html
https://github.com/emacs-tw/awesome-elisp

>Common Lisp
https://lispcookbook.github.io/cl-cookbook
https://cs.cmu.edu/~dst/LispBook
https://gigamonkeys.com/book
https://lem-project.github.io
https://stumpwm.github.io
https://nyxt-browser.com
https://awesome-cl.com

>Scheme
https://scheme.org
https://try.scheme.org
https://get.scheme.org
https://books.scheme.org
https://standards.scheme.org
https://go.scheme.org/awesome
https://research.scheme.org/lambda-papers

>Clojure
https://clojure.org
https://tryclojure.org
https://clojure-doc.org
https://calva.io
https://clojure.land
https://www.clojure-toolbox.com
https://mooc.fi/courses/2014/clojure
https://clojure.org/community/resources

>Other
https://github.com/dundalek/awesome-lisp-languages

>Guix
https://guix.gnu.org
https://nonguix.org
https://systemcrafters.net/craft-your-system-with-guix
https://futurile.net/resources/guix
https://github.com/franzos/awesome-guix

>SICP/HtDP
https://web.mit.edu/6.001/6.037/sicp.pdf
https://htdp.org

>More Lisp Resources
https://lisp.nexus
https://rentry.org/lispresources

(set! prev-bread (quote >>106191893))
Anonymous No.106288875 >>106346617 >>106393664
>>106281955
>https://github.com/HeeJay1/Lovecraftian_Lisp
Beautiful
Anonymous No.106288902 >>106293548 >>106293601 >>106307320 >>106387393
>>106288815 (OP)
Do any Rosebuds know if Rosemi will return to Miki or if she'll reincarnate, or if she's retiring like Mumei?
Anonymous No.106288936 >>106288954 >>106293677 >>106310798 >>106315897 >>106401708
I came across an Emacs using zoomer doing a laptop review on a super small laptop I've never seen before.
https://www.youtube.com/watch?v=7JQblQGiIoQ
Anonymous No.106288954 >>106293677
>>106288936
https://liliputing.com/one-mix-3-pro-is-the-first-mini-laptop-with-a-10th-gen-intel-comet-lake-processor/
Anonymous No.106289416 >>106290523 >>106302432 >>106307320 >>106365726
>>106286105
I'm having a little more fun with this. This isn't quite right, because the official naval flag doesn't do perfect 11.25 degree intervals. Instead, they opted to tweak some of the angles so that the rays on the corner line up cleaner, but I have no idea what angle adjustments they made.
(define (japan-naval [width 300]
#:fg [fg (make-color 188 0 45)]
#:bg [bg "white"])
(let* ([height (/ width 3/2)]
[offset (/ height 4)]
;;[radius (/ width (* 2 (/ 10 3)))]
[radius (/ width 6)]
[uncropped (overlay/offset
(overlay
(circle radius "solid" fg)
(polygon
(map (lambda (xy) (apply make-posn xy))
(rays 16 width)) "solid" fg))
;; move rectangle $offset pixels to the right
offset 0
(rectangle width height "solid" bg))]
[x (- (/ (image-width uncropped) 2) (* offset 2))]
[y (- (/ (image-height uncropped) 2) (/ height 2))]
[cropped (crop x y width height uncropped)])
cropped))

I tried some alternate colors out, too.
(define j (japan-naval 900 #:fg (make-color 252 158 79) #:bg (make-color 2 1 34)))


Reference:
https://www.crwflags.com/fotw/flags/jp%5E.html
https://ja.wikipedia.org/wiki/%E6%97%AD%E6%97%A5%E6%97%97#/media/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Naval_Ensign_of_Japan.svg
Anonymous No.106289617 >>106289698 >>106289942
What re good books on elisp? the book that comes with emacs is not very good. it seems focused on teaching basic lisp programming and not a lot of the emacs stuff.
Anonymous No.106289698 >>106291973
>>106289617
Read the org version of Emacs Lisp Elements by prot. I recommend reading the org version, because you get syntax highlighting for the code examples, and you can execute them too with C-c C-c.
https://github.com/protesilaos/emacs-lisp-elements
Anonymous No.106289942 >>106297709
>>106289617
>not a lot of the emacs stuff.
I don't know if anyone has written a good book on like practical application development in Emacs.
Anonymous No.106290010 >>106358967
Can i make money with this
Anonymous No.106290523
>>106289416
This is a fun way to do a little graphics programming.
https://docs.racket-lang.org/teachpack/2htdpimage.html
Anonymous No.106290783
reposting >>106289474, I found that there was a presentation video in the article about macros I was reading
Anonymous No.106291973
>>106289698
>prot
M-x prot-mode
Anonymous No.106292262
>>106288815 (OP)
rosemi's pussy is very very hairy
Anonymous No.106293508 >>106296478
>>106287525
> something that'll work with Guile using regular fold
I’ll be honest, this looks waay cleaner without all the racket specials
Anonymous No.106293548
>>106288902
There's no way she's retiring. She'll either return to a redesigned Miki or go with a new identity entirely.
Anonymous No.106293601
>>106288902
good question, but pay attention to the upcoming Glitch Stars gen
Anonymous No.106293677
>>106288936
>>106288954
I would have loved that in the 80s.
I used to make these cheat sheets on the laserwriter in 6pt font.

Now, of course, I use a huge 720p flatscreen TV. Sigh. Times will change.
Anonymous No.106294699 >>106367301
I've patched Babashka to run on Termux. Could one of you try if this runs on your phone as well?
https://0x0.st/KrCj.7z
Anonymous No.106294718 >>106295122
Im around midway through chapter 3 of SICP and its been quite the uphill battle.
Is most of the value in this book from the first three chapters or would you recommend finishing the whole thing ?

Trying to follow the teachyourselfcs recommended resource list and eventually get a job
Anonymous No.106295122 >>106295242 >>106296210
>>106294718
If you're trying to get a job, skip SICP and learn something actually useful. Nobody will pay you to write lisp of any dialect, except maybe possibly clojure if you're brazilian. And nobody cares
Anonymous No.106295242 >>106296210
>>106295122
true sar vibe coding with java or python is the only true path to redeem a h1b visa job
learning computer science doesn’t matter anymore just become weapon of python 'n java with vibe coding saars
Anonymous No.106295313
>>106288815 (OP)
da wose
Anonymous No.106296146
>>106288352
>racket-xp-mode
Why are the racket-mode authors hiding such a nice piece of functionality?
Anonymous No.106296210 >>106296348 >>106296568 >>106303454
>>106295122
>>106295242
No I realize I need to enter the js/python/go mines eventually.

Im just hoping that Im good enough at that point and picking up those languages and building projects wont be too hard.

Current thought process for working through SICP is just to try and differentiate myself from the masses since I dont have and CS degress and Im in my late 20s
Anonymous No.106296298 >>106296361
https://www.gnu.org/software/emacs/manual/html_node/elisp/Parsing-Expression-Grammars.html
^-- Is this new or has Elisp come with a PEG parser for a while?
Anonymous No.106296348
>>106296210
iff you're serious about wanting to get good enough for a job, then learn programming sure, Lisp will be cool. but also learn fucking SQL databases. this is of vital importance. being able to write complicated queries with many joins will
(1) allow you to develop more useful software and
(2) differentiate you from retards that barely understand what their ORM is doing
Anonymous No.106296361
>>106296298
Answering my own question:
;;; peg.el --- Parsing Expression Grammars in Emacs Lisp -*- lexical-binding:t -*-

;; Copyright (C) 2008-2025 Free Software Foundation, Inc.
;;
;; Author: Helmut Eller
;; Maintainer: Stefan Monnier
;; Version: 1.0.1
Anonymous No.106296478
>>106293508
Back when I first wrote this, I didn't know where to find fold in Racket. I'm not a Scheme guy, so I didn't know I had to pull in a SRFI. However, I did find for/fold and decided that was close enough.
https://docs.racket-lang.org/reference/for.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._for%2Ffold%29%29
Anonymous No.106296568
>>106296210
> no cs degree
Some of the best people I worked with never completed their degree.
CS proper is not about coding. It’s a sub-discipline of mathematics.
When I went, about half the time you could do an assignment in almost any language you wanted.
One course I took, we had to use GPSS but the entirety of the course’s knowledge that we learned was “shortest job first minimizes global wait times”
I just saved someone 4 months of college.
Anonymous No.106297226 >>106299331 >>106300145 >>106300881
It's getting slightly more active.
Share your thoughts with other Emacs appreciators.
https://github.com/tanrax/org-social
https://github.com/tanrax/org-social.el
Anonymous No.106297709
>>106289942
If you can read Spanish, this covers widget.el.
https://programadorwebvalencia.com/cursos/ui-emacs-lisp/introducci%C3%B3n/
Anonymous No.106299331 >>106300394
>>106297226
IRC with extra steps?
Anonymous No.106300145 >>106300365
>>106297226
is it read-only? what prevents me from editing others' files?
Anonymous No.106300365 >>106300620
>>106300145
Typically, the top of your social.org file contains a list of everyone you follow that looks like this.
#+FOLLOW: https://andros.dev/static/social.org
#+FOLLOW: https://rossabaker.com/social.org
#+FOLLOW: https://omidmash.de/social.org
#+FOLLOW: https://johnhame.link/social.org
#+FOLLOW: https://eoin.site/social.org
#+FOLLOW: https://adsan.dev/social.org
#+FOLLOW: https://emillo.net/social.org

That's where other people's posts are. Your own posts are in your own social.org file.
Anonymous No.106300394
>>106299331
It's more like this thread with extra steps, because your posting longer content than a chat message with other Emacs users.
Anonymous No.106300620 >>106300628
>>106300365
what does that #+FOLLOW do? Do they insert the remote org files to my local orgmode buffer?
Anonymous No.106300628 >>106300639
>>106300620
It's used by org-social-timeline to know where to fetch other people's posts from when it generates a new timeline view.
Anonymous No.106300639 >>106300671
>>106300628
Is there a video reviewing the thing? It is quite difficult to visualize its concepts. And I cannot be arsed to install and try it right now.
Anonymous No.106300671
>>106300639
I'm not aware of any video. There's not that much to it, though.
- Posts are stored in social.org files that are served over HTTP.
- To participate in the network (even as a reader) you need to make your own social.org file.
- When you run `M-x org-social-timeline`, everyone you follow will.
1. have their posts fetched.
2. have their posts (and your own posts) be sorted by date and time
3. be displayed in an *Org Social Timeline* buffer which is in org-mode but not assosciated with any file.

That's all it does.
Anonymous No.106300881 >>106305491
>>106297226
still waiting for org-4chan
Anonymous No.106302432
>>106289416
When did Racket turn gay?
https://x.com/racketlang
Anonymous No.106302510 >>106408173
After many months of inactivity, Shibuya.lisp is having another meetup on 8/28.
https://lisp.connpass.com/event/365507/
We've interacted with the speaker before.
>>106158255
Anonymous No.106303142 >>106306662
Tried learning macros in racket and found it difficult. A redditor phrased it as "there's no reflective access to the runtime environment in racket." This was counter to my intuition that I should be able to build the equivalent of a macro without even using "syntax" forms, just by dynamically constructing the datum I want and then eval'ing it against the current env as if that datum had been hardcoded as a form/procedure application.
Now I have to learn "phases" and "syntax objects" and all these complications.
Anonymous No.106303454 >>106410471
>>106296210
Look, man, what people pay you for is to solve their problems, not to know arcane esoteric stuff. Read picrel instead, then a book on operating systems, then leverage whatever other domain expertise you have.
Anonymous No.106305491
>>106300881
Get in line buddy
Anonymous No.106306662
>>106303142
> macros have no access to the runtime
That’s pretty typical, historically.
Look at some traditional macro processors like m4 and cpp. I used to use m4 on an assembler I wrote instead of building in a macro facility. I’ve also used the CPP as a pure macro facility on other things that aren’t C. But usually C-like things :-)
In the olden days, these were separate processes / passes because you couldn’t fit (or didn’t want to fit) the compiler and the macro preprocessor in memory at the same time.
Also, it’s often convenient/instructive to just examine/save/cache the pure “generated” output, especially for interpreters.
Anonymous No.106307320 >>106308052
>>106288815 (OP)
Evalsemi Lambdalock
>>106288902
Many things are possible (she has friends in almost as many places as Mint does) but retiring is very unlikely.
>>106289416
Instead of trying to figure out the angles, measure the coordinates and use trigonometry to aim towards them.
Anonymous No.106308052 >>106311541
>>106307320
>Instead of trying to figure out the angles, measure the coordinates and use trigonometry to aim towards them.
I'm going to have to reteach myself some minimal trig for that. It's been a while. I did work on it a bit more, and noticed my offset for the circle wasn't quite right so I fixed that, and that alone made things much closer as the attached gif will show.
- Red is the official naval flag, and
- Blue is my flag with perfectly even intervals for the rays.
- The angular differences are very small.

(define (japan-naval #:width [width 300]
#:fg [fg (make-color 188 0 45)]
#:bg [bg "white"])
(let* ([height (/ width 3/2)]
[radius (/ width 6)]
[offset (- radius (/ radius 3))]
[uncropped (overlay/offset
(overlay
(circle radius "solid" fg)
(polygon
(map (lambda (xy) (apply make-posn xy))
(rays 16 width)) "solid" fg))
;; move rectangle $offset pixels to the right
offset 0
(rectangle width height "solid" bg))]
[x (- (/ (image-width uncropped) 2) (/ width 2) (- offset))]
[y (- (/ (image-height uncropped) 2) (/ height 2))]
[cropped (crop x y width height uncropped)])
cropped))
Anonymous No.106309175 >>106309191 >>106309782
Anyone here combined Lua with a lisp dialect? There is a project I'm really interested in writing something on top of but it's C+Lua. It expects you to do all the scripting through Lua. I don't really mind Lua but what I want to build on top of it will be in a lisp dialect and I'd prefer being able to script everything in lisp instead of requiring the user to know Lua on top of it.

When it's done I want the kernel and this small little core for the display server to be pure C. Then everything else on top of it in lisp so it can be modified at run time. I can't rip out the Lua and replace it because the author of the project chose it long ago and I know he'll never change his mind. I'd try to convince him otherwise but honestly he's a higher level wizard than I am.
Anonymous No.106309191 >>106309258
>>106309175
The most mature lisp that compiles to lua is Fennel.
https://fennel-lang.org/
https://dev.fennel-lang.org/
Anonymous No.106309254 >>106312074 >>106312124
>fennel
>hy
>LFE
>clojure
Is it just me or is lisp becoming an increasingly important and present paradigm in software, almost mainstream at this point? (as opposed to the niche family of languages few would bother with)
Anonymous No.106309258 >>106311267 >>106311336 >>106312096
>>106309191
I'll check it out thanks. If you're interested I'm building a DE on top of Arcan.

https://arcan-fe.com/about/

Well it's more than a DE really. Arcan and the surrounding applications do a lot of stuff that's not possible in X11/Wayland. Like being able to have a real time clock in the terminal.

It's a really interesting project that I've been following the development of for over a decade now and it's finally stable enough to use for daily use. But I'm not a huge fan of the reference WM/DE. I want to build one similar to StumpWM+Openbox on top of it in lisp. I really fell in love with StumpWM because everything could be modified in real time. Attempting to do something similar for users familiar with more Windows/MacOS type of DE.

There are a lot of interesting projects not getting much attention these days due to the rampant shilling and lies on most major tech news outlets. I really like s6 and GNU Shepard as well but you hardly hear anything about them and almost no one packages them. I dislike s6's scripting language but it isn't a big deal because you can use whatever you want with it. I'd really love to see a distro using s6 that allows you to build services and control the built-in stuff through lisp like Shepard does. s6 has a really neat dbus replacement.
Anonymous No.106309782 >>106309833
>>106309175
Yep, fennel. Also, for Guile there's gLua.
https://gitlab.com/NalaGinrut/guile-lua-rebirth
Anonymous No.106309833 >>106309930
>>106309782
> Glua
That's one way to take advantage of the only good thing to come out of lua: the luajit machine.
Anonymous No.106309930
>>106309833
LuaJIT is nice, indeed.
Well, Guile has top-notch integration with Guix/Shepherd and other GNU projects. To each his own, I suppose.
Anonymous No.106310059 >>106311310 >>106320228
>Emacs takes a minute to indent 180 lines of C code
I wanna kms
Anonymous No.106310798 >>106312109
>>106288936
This guy is the funniest zoomer retard on youtube. Constantly obsessed with being "productive". Uses five trillion different tools and editors, has a notebook and mobile phone for every usecase to be maximally productive.
Anonymous No.106311267
>>106309258
>I really like s6 and GNU Shepard as well but you hardly hear anything about them and almost no one packages them. I dislike s6's scripting language but it isn't a big deal because you can use whatever you want with it. I'd really love to see a distro using s6 that allows you to build services and control the built-in stuff through lisp like Shepard does. s6 has a really neat dbus replacement.
I didn't know about shepherd, but I did know about s6. For a very long time, I used its cousin runit for user-level services. (I still do, actually.) However, I finally relented and learned how to make user-level services with SystemD, and ...it wasn't that bad.
https://www.gnu.org/software/shepherd/
https://skarnet.org/software/s6/overview.html
I love a good init system. It sure beats writing SysV-styled init scripts like the old days.

PS: Another way I handle starting programs on boot (especially on systems where I don't have root access) is to use crontab's @reboot directive. If you don't need process supervision, it can do an adequate job of starting a process on boot.
Anonymous No.106311310
>>106310059
That's not normal. I checked indentation speed with a 300+ line .c file, and it took way under a second to reindent.

C-x h (mark-whole-buffer)
C-M-\ (indent-region)
Anonymous No.106311336
>>106309258
>I'll check it out thanks. If you're interested I'm building a DE on top of Arcan.
>https://arcan-fe.com/about/
I took a look at Arcan about 3 years ago. Even back then, NixOS had packages for it, so I think I installed it that way and checked it out.
https://search.nixos.org/packages?channel=25.05&show=arcan&
I liked the idea, but my vague recollection of my experience was that it was quite rough around the edges.
Anonymous No.106311541 >>106342450 >>106408851
>>106308052
Complete example you can paste into DrRacket:
#lang racket
(require 2htdp/image)
(require lang/posn)

;; Convert degrees to radians
(define (radians degree)
(* degree (/ pi 180)))

;; https://www.mathsisfun.com/polar-cartesian-coordinates.html
(define (coord length degree)
(list (* length (cos (radians degree)))
(* length (sin (radians degree)))))

;; algorithmically generate
(define (rays [count 4] [length 100])
(let* ([width (/ 360 (* 2 count))]
[initial (- 0 (/ width 2))])
(for/fold ([posns '()])
([i (range count)])
(append posns (list (list 0 0)
(coord length (- (* (* 2 i) width) (/ width 2)))
(coord length (+ (* (* 2 i) width) (/ width 2))))))))

(define (japan-naval #:width [width 300]
#:fg [fg (make-color 188 0 45)]
#:bg [bg "white"])
(let* ([height (/ width 3/2)]
[radius (/ width 6)]
[offset (- radius (/ radius 3))]
[uncropped (overlay/offset
(overlay
(circle radius "solid" fg)
(polygon
(map (lambda (xy) (apply make-posn xy))
(rays 16 width)) "solid" fg))
;; move rectangle $offset pixels to the right
offset 0
(rectangle width height "solid" bg))]
[x (- (/ (image-width uncropped) 2) (/ width 2) (- offset))]
[y (- (/ (image-height uncropped) 2) (/ height 2))]
[cropped (crop x y width height uncropped)])
cropped))

https://racket-lang.org/
Anonymous No.106311614 >>106311625 >>106311686 >>106311799 >>106315766
I've never tried emacs before. Can someone explain the interplay between emacs and lisp? I enjoy writing lisp
Anonymous No.106311625
>>106311614
Most of the built-in functionality and any emacs add-on is written in emacs lisp.
Emacs also has add-ons for more-or-less every extant lisp.
Anonymous No.106311686
>>106311614
Imagine you're writing lisp, and your codebase has the function (show-editor foo.txt) which opens up an editor with foo.txt loaded.
Now, as you edit foo.txt you run commands like (mark-text 0 end-of-foo), or (move-pointer :one-line-down).

That's Emacs
Anonymous No.106311799 >>106311928 >>106314970
>>106311614
Emacs includes many conveniences for manipulating and evaluating s-expressions. If you're a lisp programmer, you owe it to yourself to give Emacs a sincere try.

After starting emacs, try this:
C-x 3 :: setup vertical split
C-x o :: switch windows
M-x ielm :: start elisp repl
C-x 2 :: setup horizontal split
C-x o :: switch window
C-x b *Messages* :: switch to *Messages* buffer

For extra credit, you can `M-x scroll-bar-mode` to toggle the scroll bars off. I'm not a fan.

Then, over in the *scratch* buffer, type in some code.
(message "Hello, %s!" "world")

(defun hello (s)
"Say hello to S."
(message "Hello, %s!" s))


You can run this code in a variety of ways.
- The first way most people learn is to put their cursor at the end of an expression and hit `C-x C-e`.
- Another way is to put your cursor inside an expression and hit `C-M-x`.

Play around with it.
Anonymous No.106311928 >>106314970 >>106323614
>>106311799
>After starting emacs, try this:
>C-x 3 :: setup vertical split
>C-x o :: switch windows
>M-x ielm :: start elisp repl
>C-x 2 :: setup horizontal split
>C-x o :: switch window
>C-x b *Messages* :: switch to *Messages* buffer

If you thought, "What a fucking pain in the ass," that's normal. What's great about Emacs is that all that annoying key pressing can be collected into a single interactive function.
- First, to figure out what function is being called, you're going to use `C-h k`.
- For example, `C-h k C-x 3` will tell you that `C-x 3` is bound to the split-window-right function.
- You can do that for any key combo you don't know.
(defun elisp-scratch ()
"Setup frame for recreational Elisp development."
(interactive)
(scratch-buffer)
(delete-other-windows)
(split-window-right)
(other-window 1)
(ielm)
(split-window-below)
(other-window 1)
(switch-to-buffer "*Messages*")
(other-window 1))

Now, any time you want to setup your windows for recreational Elisp development, you can say:
M-x elisp-scratch

If that's still too much typing, you can bind it to a key.
;; Now you just have to press F9 to summon this layout.
(keymap-global-set "" #'elisp-scratch)
Anonymous No.106312074
>>106309254
Out of those, only Clojure is making a significant difference in the software development landscape. Also, Fennel and Hy are heavily Clojure-inspired. They're also really niche.
Anonymous No.106312096
>>106309258

I think there's quite a few hacking on Arcan stuff in silence by now. What I did find was setting Durden default to stacking, enable the control socket then parse output from the monitor command and turn that into /target/window/move_resize/set_x=100 and so on to write my WM that way. Then it becomes like all the X11 ConfigureWindow stuff but more capable and higher level.
Anonymous No.106312109
>>106310798
At least he's enjoying himself.
Anonymous No.106312124
>>106309254
>LFE
.....needs a champion to do something cool with it.
Anonymous No.106313295
>>106276502
>https://github.com/attila-lendvai/maru
Maruvelous! ( ̄▽ ̄)b
Anonymous No.106314229 >>106327830
wiki faggotry
https://x.com/stylewarning/status/1956645539036196886
Anonymous No.106314970
>>106311799
>>106311928
Thanks bro you're a saint
Anonymous No.106315766 >>106315897
>>106311614
>I enjoy writing lisp
Something that can increase your enjoyment even more is paredit. It comes with Emacs, and lets you edit lisp code structurally.
Anonymous No.106315897 >>106315984 >>106317973
>>106288936
i wonder what percentage of emac users are gen Z

>>106315766
>It comes with Emacs
it doesn't, at least not on 30.1
Anonymous No.106315984 >>106322889
>>106315897
>it doesn't, at least not on 30.1
You're right. I didn't see it in my init.el, so that led me to think it was built-in. However, I probably manually `M-x package-install`d it and forgot I did that.
http://paredit.org/
Either way... it's pretty sweet. It does take a little practice to use though.
Anonymous No.106316457
fsbot turns on its masters.
>>106316424
Anonymous No.106317973
>>106315897
>Z
Zmacs
https://bitsavers.computerhistory.org/pdf/ti/explorer/2243192-0001A_Zmacs_Jun87.pdf
Anonymous No.106318447 >>106319262
daily reminder that zun is an emac user
Anonymous No.106319262
>>106318447
>zutto zutto emacsu
https://youtu.be/RPeFQwBFURk?t=1623
Anonymous No.106320228
>>106310059
werks on my ᵋmachine
Anonymous No.106321782 >>106322083 >>106322856 >>106377695
https://github.com/ebeem/guile-swayer
Anonymous No.106322083
>>106321782
One of these days I will go full Lisp autistic and install Guix and a lispy WM.
Anonymous No.106322856
>>106321782
I should give this a try, because I use i3 and sway, but I don't have the energy right now.
Anonymous No.106322889
>>106315984
The most important paredit skill that no one talks about is how to recover when your parentheses become unbalanced.
- It shouldn't happen, but when it does, paredit becomes unusable until you get the parentheses rebalanced.
- The first thing to try is undo.
- If that gets you to a balanced state, consider yourself lucky and move on.
- If that didn't work, the next easiest thing to do is to temporarily turn off paredit, manually reblance the parentheses by inserting the missing paren where ever it happens to be, and then re-enabling paredit.
Anonymous No.106323614
>>106311928
A nice addition to this is winner-mode. Suppose you switch to this layout but then later change your mind and want your windows to go back to how they were.
C-c
It's also nice for when Emacs does something crazy to your window layout, and you want to go back to what you had.
C-c
Anonymous No.106324802
>>106277698
>I look at something like Racket and I wonder if you can just use it as a plain scheme?
The main reason I use Racket is to have access to its large standard library.
Anonymous No.106326081 >>106330180 >>106338594
https://orgmode.org/tools.html
...where is Scheme?
Anonymous No.106327830
>>106314229
Using Common Lisp Libraries from Coalton
https://coalton-lang.github.io/20250812-lisp-libraries/

>One of Coalton’s headline features is that it’s embedded in Common Lisp, and allows the use of Common Lisp code via the lisp operator. However, it’s not immediately obvious how one can use Common Lisp when Coalton is strongly typed. How do we do it?
>Here we describe an approach to using a Common Lisp library from Coalton step-by-step. This post is an introduction to the matter with a first non-trivial example, and serves as a jumping-off point for more advanced Coalton–Common Lisp interactions.
Anonymous No.106328169 >>106328179 >>106357251
Cool white Guix logo you can use to replace the start icon.
Anonymous No.106328179 >>106357251
>>106328169
Cool black ish version
Anonymous No.106328512 >>106330280
scheme
Anonymous No.106330180
>>106326081
What virtually *every* language should do is:
1. Implement scheme R7 in their language.
2. Drop their language for the most part.
3. Write everything in scheme, except "calling out" to to inline code when necessary or convenient. The scheme implementation in (1) emits the native language it was written in which is then compiled, bytecoded, optimized, JITted, etc as the native language is capable of.

Another reason to accept embedded code so easily is for things that weren't re-written in scheme *yet* but still want it to work.

I means who needs argument parsing to be fast? Who needs that re-written every time in every language every time? Nobody. Another reason to leave some embedded native language is for ultra-critical performance things like using OpenMP in C (i.e. for CHICKEN)...

At least until the day those implementations are done in native C.

It took many years to adopt C due to the optimizations and native vector processing stuff resident in your friendly neighborhood FORTRAN compiler.
Anonymous No.106330280
>>106328512
Anonymous No.106330830 >>106331106 >>106331365 >>106331545 >>106331598 >>106331651 >>106331690
What is the difference between melpa and elpa? How long does it take to get a package accepted into either?
Anonymous No.106331106
>>106330830
what's your package?
it's still preferable that your package be self-contained in a single .el file so we can download it and put it in our .emacs.d/lisp directory and load it in our init.

also, some of are running old version of emacs, so don't depend on any new features in either emacs or other dependent libraries unless you absolutely have to.

generally packages are out there on the internet for several years or decades until they get adopted. Some guy here was recently titillated that which-key was finally adopted into the core-emacs sumo.
Anonymous No.106331365
>>106330830
>How long does it take to get a package accepted into either?
Melpa isn't long afaik. It's just a PR to review for them.
Anonymous No.106331545 >>106331556 >>106331640
>>106330830
>How long does it take to get a package accepted into either?
For ELPA,
>After 48 hours, or once any issues have been addressed, someone will push
>your changes for you. You should probably also subscribe to
>[[https://lists.gnu.org/mailman/listinfo/emacs-devel][emacs-devel@gnu.org]], since that's where we discuss about GNU ELPA, and
>to [[https://lists.gnu.org/mailman/listinfo/bug-gnu-emacs][bug-gnu-emacs@gnu.org]], since that's where people will report bugs
>about your package.
Anonymous No.106331556
>>106331545
https://lists.gnu.org/mailman/listinfo/emacs-devel
Anonymous No.106331598 >>106331635 >>106331640
>>106330830
Is this right? Do you have to hand your stuff over to the FSF to be on ELPA?

>The Copyright notice should specify "Free Software Foundation, Inc." as
>the copyright holder. Ensure that all the code has the proper copyright:
>if it is not your own code, make sure the author has signed the relevant
>copyright papers (for non-trivial contributions), and indicate the author
>correctly in the commit.
Anonymous No.106331635 >>106331651
>>106331598
it is part of GNU so it's not surprising. but there's also nongnu elpa
Anonymous No.106331640
>>106331545
>>106331598
The screenshots were based on the content of:
https://cgit.git.savannah.gnu.org/cgit/emacs/elpa.git/plain/README
Anonymous No.106331651
>>106330830
>>106331635
http://elpa.gnu.org/
http://elpa.nongnu.org/
https://melpa.org/ (not included by default in emacs, but it has the most packages)
Anonymous No.106331690 >>106334115
>>106330830
I dislike those package downloaders because it promotes the idea that your machine can and should be connected to the internet at all times.
No wonder there's so many security problems and companies taking advantage of the model.
Anonymous No.106332087 >>106342559
we should make lisp more like FORTH in that it ignores everything between parentheses.
Anonymous No.106332758
This would be cool to model in lisp.
https://www.youtube.com/watch?v=43KRqMoVM1I
Anonymous No.106333918 >>106335476
Prot Asks: Dimos about Emacs interconnectedness, collective work, and The Conspiracy Club
https://www.youtube.com/watch?v=c5KV_P7K73Y&list=PL8Bwba5vnQK14z96Gil86pLMDO2GnOhQ6&index=1
Anonymous No.106334115 >>106342618
>>106331690
Do you ever use `M-x package-install`?
Anonymous No.106334204
The l1sp.org domain just expired. I didn't even know it existed.
https://web.archive.org/web/20250000000000*/l1sp.org
Anonymous No.106335276 >>106337084
Client-side Common Lisp?
https://turtleware.eu/posts/Using-Common-Lisp-from-inside-the-Browser.html



Web Embeddable Common Lisp
https://turtleware.eu/static/misc/wecl-20250821/easy.css" />






Anonymous No.106335476 >>106336569
>>106333918
does prot get any pussy?
Anonymous No.106336569 >>106336586
>>106335476
only dog pussy
Anonymous No.106336586
>>106336569
he gets "bitches"
Anonymous No.106337084
>>106335276
>https://turtleware.eu/posts/Using-Common-Lisp-from-inside-the-Browser.html

Daniel Kochmanski is doing God's work
Anonymous No.106338594 >>106340283
>>106326081
>https://picolisp.com
Interesting
Anonymous No.106339165 >>106340100
i just found Bartosz Milewski's lectures, and i'm going in solely to shit on functional programming. i'll report back in about 60 hours, or a week. don't wish me luck, i'm doing this purely out of contempt.
Anonymous No.106339871 >>106339966
New thing at job will use geopackages. Since they are a sqlite db I can just use emacs to inspect and change shit.

Very nice.
Anonymous No.106339966
>>106339871
Tangentially, did you know that ob-sql and ob-sqlite (introduced in Emacs 30) are very similar but distinct?
- https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-sql.html
- https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-sqlite.html

I was a little surprised that they didn't just add SQLite support to ob-sql.
Anonymous No.106340100 >>106340169
>>106339165
what's so bad about functional programming
Anonymous No.106340169
>>106340100
don't know yet
Anonymous No.106340283 >>106340400 >>106413366
>>106338594
>>https://picolisp.com/
>Interesting
It was more interesting than I expected. The author has been using it professionally since 1988. It's not just a toy.
https://github.com/picolisp/pil21
>_PI_co Lisp is not _CO_mmon Lisp
Anonymous No.106340331
I miss schemebbs
somebody please bring it back
Anonymous No.106340400 >>106342372 >>106343725
>>106340283
Every once in a while, I run into someone who doesn't like syntax highlighting. However, the PicoLisp author has a valid reason for his stance.
https://www.mail-archive.com/picolisp@software-lab.de/msg05019.html
Apparently, PicoLisp doesn't have any keywords. Even a symbol like `if` can change its meaning depending on context. It rarely happens in practice, but there's no fixed meaning for `if` or anything else.
Anonymous No.106342200 >>106344497 >>106345149
https://sharplispers.github.io/lparallel/ was finally deployed today.
Anonymous No.106342372
>>106340400
Yeah that's the same as Common Lisp. All the standard symbols are in a package & you can shadow them if you want.
Anonymous No.106342450 >>106345366 >>106345366
>>106311541
I tried this on terminal racket the command line version and it prints out something like
<#pict>
which is weird.
what it should do is create a sixel image containing the picture and output that to the terminal…
…either that, or, alternately, emit tektronics graphics control codes.

Their racket graphics language isn’t that great. Is that the same one that’s used in slideshow?

It’s hard to beat Postscript if you want to learn and write in a top-tier graphics language. Or even something based on PDF primitives, although there’s no control structures in there really.

Another thing they could do is adopt an opengl interface in lisp and use that. Also SDL would probably be a acceptable.

Just for fun, I generated an .exe for my hello world program. 60 MB. Nice.

Antone else remember when adobe was legit?
Anonymous No.106342559
>>106332087
> like FORTH
Yeah, and like postscript!
I think I’d prefer Forth be made more like scheme.
I expected there would be more embedded systems using scheme given the similarities between lisp and forth, but most of the minimal interpreters for scheme are pretty fat for unknown reasons, but it’s worth exploring I think.
Anonymous No.106342568 >>106343530
which LISP or other functional language is likely to land me a j*b?
thanks
Anonymous No.106342618 >>106342837 >>106343538 >>106365986 >>106365997
>>106334115
> package install?
No, I always copy in the .el file.
I look for and use lisp code that works on my old emacs 20.1, so usually I have to go back a few years to get one that work.
Well written .el’s I can use the latest.
A lot of them on github are just continually fucked with with random changes by people that measure their worth as a man by the amount of bright green dots on their github contribution tile on their profile.
Some of them went 10 years with no changes and then some retard makes a minor non-functional change to use the latest x-windows frame fringe decoration and breaks it for everyone not using 30.2 on X windows.
A good artist knows when to stop fucking with it.

Also, these days, it’s probably good to look through elisp and make sure there us no bullshit in there until they implement something like per-module containment headers like openbsd ‘pledge’
Anonymous No.106342837 >>106343538 >>106352356
>>106342618
Emacs 20.1 might be older than some people in this thread. What kind of system is that running on?
Anonymous No.106343530
>>106342568
Clojure
Anonymous No.106343538
>>106342618
>>106342837
>1997-09-15 • Emacs 20.1 • Support for non-ASCII text.
Jesus Christ anon.
Anonymous No.106343725 >>106359020
>>106340400
> picolisp
Picolisp guy is a vi guy, ROFLMAO….
Anonymous No.106344372 >>106391073
>lisp.nexus is already in the OP pasta
oh. i guess i have to build some no-JS forum in Lisp now, huh?
Anonymous No.106344497 >>106345149 >>106345149
>>106342200
Cool. Do you know what kind of overhead it has? Useful in realtime programs?
Anonymous No.106345149
>>106342200
From start to finish, It took a while, but most of it was waiting. The github notifications are probably lost to the void. Mentioning this in passing in #commonlisp go things moving again.
https://github.com/sharplispers/lparallel/issues/11

>>106344497
>Do you know what kind of overhead it has?
I don't know the difference in time between:
- calling a function to get a value AND
- sending and receiving a message to a thread to get a value.
Maybe someone could whip up a quick little benchmark that can quantify this for us.

However, there are some benchmarks already that show that despite the existence of overhead, being able to execute in parallel can be a win when scaled up.
https://sharplispers.github.io/lparallel/Benchmarks.html
You can see that as the number of operations goes up, the parallel versions overtake the serial versions.

>>106344497
>Useful in realtime programs?
Why do you think people have been wishing for real threads in Emacs for all these years? (To be fair to Emacs, the cooperative threads that already do exist are severely underutilized. I believe they can solve the class of Emacs performance problems that are IO intensive rather than CPU intensive.)
Anonymous No.106345366 >>106348690 >>106353081
>>106342450
>I tried this on terminal racket the command line version and it prints out something like
><#pict>
>which is weird.
You're not really surprised. What REPL in any language supports that today?
>what it should do is create a sixel image containing the picture and output that to the terminal…
That would be cool.

>>106342450
>Their racket graphics language isn’t that great.
https://docs.racket-lang.org/teachpack/2htdpimage.html
I'm looking at their API, and it looks reasonable to me. It lets me declaratively manage 2D vectors with a sane API. It certainly beats manually writing SVG.
Anonymous No.106346192
i'm considering trying out qtile with hy.
Anonymous No.106346569
Lem has a new webview frontend.
https://github.com/lem-project/lem/pull/1851
Its sdl2 frontend is getting deprecated.
https://github.com/lem-project/lem/issues/1867
Anonymous No.106346617 >>106347990 >>106403578
>>106288875
>https://github.com/HeeJay1
>An opera singer
Holy based
https://x.com/Janne_HG/status/1476895217601159169
Anonymous No.106347990 >>106403578
>>106346617
https://www.youtube.com/@jannehagglund8284
Anonymous No.106348299 >>106348678 >>106350747 >>106352242
Why did lisp 1.5/lisp 2 move functions to their own namespace? Doesn't that kind of defeat the point of first class functions? For lisp 2 users, what do you like about it?
Anonymous No.106348678
>>106348299
>For lisp 2 users, what do you like about it?

I can name my vars and functions (and methods, and classes, and packages) in any way I want, no conflicts.

To refer to a function i need to use #' as prefix, but it's not annoying to me.
Anonymous No.106348690
>>106345366
>You're not really surprised. What REPL in any language supports that today?

Common Lisp when you are using a CLIM REPL.
Anonymous No.106349776 >>106351314
why the FUCK does term-mode rebind the C-c [a-z] keys
Anonymous No.106350747
>>106348299
Better performance, that's basically it.
I dislike it since it makes binding functions ugly.
The entire shadowing issue is solved just with namespaces.
Anonymous No.106350861
>>106288815 (OP)
Da Wose will soon be free
Anonymous No.106351314 >>106352228
>>106349776
I don't see it.
https://github.com/emacs-mirror/emacs/blob/master/lisp/term.el#L634-L694

All the C-c bindings use another C-letter binding which is allowed.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Conventions.html

Maybe something else took those bindings.
Anonymous No.106352228 >>106352349
>>106351314
the keys are rebound in char mode, and it's done programmatically. i'm pretty sure these are the relevant parts
https://github.com/emacs-mirror/emacs/blob/master/lisp/term.el#L1074
https://github.com/emacs-mirror/emacs/blob/master/lisp/term.el#L4567

anyway, the manual corroborates my original point
>C-c char
> This is equivalent to C-x char in normal Emacs. For example, C-c o invokes the global binding of C-x o, which is normally ‘other-window’.
https://www.gnu.org/software/emacs/manual/html_node/emacs/Term-Mode.html
Anonymous No.106352242
>>106348299
With you purists, you’d eventually turn lisp into scheme.
This is why we have scheme.
Also, I see a bunch of people using loop macros/specials in scheme, there’s no need.
Anonymous No.106352349
>>106352228
hm. they broke their own rules.
Anonymous No.106352356
>>106342837
It’s on the sparcstations under solaris.
we support old software and drivers since people still run these things in industrial environments.
They’re not hooked up to the internet, we have to get things on there through ftp on a shared system so we can’t use elpa very effectively.

My emacs on my mac is 22.1.1.
I just tried the latest one (30.1) on my mac and it is GLACIAL.
Interestingly, it works on mac ui natively.
Whenever I switch to the emacs window, I get a rainbow kernel-busy spinner for a second.
Everything works though, no crashes. Impressive.
Luckily, in emacs you never have to switch away from it’s window… it does everything.
Anonymous No.106352492 >>106353008 >>106353349 >>106353349 >>106353349 >>106354597 >>106407706
What is the appeal of lisp for you? I want to get into it, but I don't like all the brackets and nesting needed...
Why can't some things have semi-colon or braces instead?
Is there away around this? Will I ever get over this?

Also what lisp version do lispers use? Is guile good?
What can I do with lisp?
I have no clue what to doooo
Anonymous No.106353008 >>106353522
>>106352492
>What can I do with lisp?
>I have no clue what to doooo
You mentioned Guile and that's a good place to start. It's the canonical extension language of the GNU system, so there's various ways you could make use of it. You can install Guix on top of your current system to manage your "home configuration" in Guile.
https://guix.gnu.org/manual/en/html_node/Home-Configuration.html
At the same time you can install GNU Shepherd and mcron to write user-level services and cron jobs in Guile.
Anonymous No.106353081
>>106345366
Python when you define __repr__.
Anonymous No.106353349 >>106353360 >>106353522
>>106352492
>Why can't some things have semi-colon or braces instead?
You will understand pretty early into your lisp journey why this is the case.
>>106352492
>Also what lisp version do lispers use? Is guile good?
I dont' know what anyone else uses, but I really like clojure. Some will argue it isn't even a lisp, but I don't really understand why, and I don't care. I just like it bro.
>>106352492
>What can I do with lisp?
You can make computers do computer things? Whatever you would normally do, just do it in lisp instead. Make something useful, unlike most lispers.
Anonymous No.106353360
>>106353349
I am a retarded faggot who doesn't know how to internet.
Anonymous No.106353522 >>106353534 >>106353570 >>106359183 >>106410388
>>106353008
>cron jobs
>>106353349
>Whatever you would normally do

this is the problem. I have no life, no friends, no reason to run a cron job, no reason for anything.
I was hoping to find a reason to learn a language / do programming.
What are some of your reasons for when you have programmed recently?
I just want to do something that requires programming and find enjoyment in it...
But trying to do gamedev / develop some kind of software is not working.

I want to play little big planet 2 create mode again. I'd make a playable level this time, for sure.
Anonymous No.106353534 >>106353556
>>106353522
Sounds like you need Prozac, not Lisp.
Anonymous No.106353556
>>106353534
I'm afraid of mind altering drugs.
Anonymous No.106353570 >>106353739
>>106353522
The most universal reason to learn programming is just to operate your own computer. things like
>I want to download a lot of files
>I want to organize things by tags and search for them
>I want to display a bunch of statistics in a custom format
etc...
Basically you just have things you do on a computer normally, and then you want to automate them, and then you get frustrated with trying to download and configure other people's programs to do it and just want to program it directly yourself.

If you're interested in graphics or making games, the simplest path is to just start. Just make literally anything and you'll find a bottomless pit of things you can work on. You really can't finish a project, only lose interest or get frustrated.

For the more autistic among us you can get into programming as a hobby in an of itself, like you just learn about and implement algorithms just for fun, or even make your own interpreters or compilers. This is the realm of lisp, it's by far the best language for working on and building programming languages.
Anonymous No.106353572
Can Lisp be used for loosh extraction?
http://whale.to/c/loosh.pdf
Anonymous No.106353739 >>106354155
>>106353570
>lose interest or get frustrated
it happens very near the beginning.
I just can't commit to making a project.
I throw it all away.
I looked at the tiniest amount of code I wrote trying to make a compiler awhile ago and instantly had to get away from it.
I had no interest in building upon it.

>best language for working on and building programming languages.
Won't the language share the syntax of lisp?
Would it really be any good for writing a compiler for c-like language for example?
Anonymous No.106354155 >>106354498
>>106353739
A compiler is parse -> transform -> emit, the input syntax is only a single step, it ultimately doesn't matter that much to 99% of the compiler. But also why would you want to make a C style language in the first place?

>can't commit
That's a bad way of thinking. Don't commit to any end result, do things for the work itself. Or at the very least set many extremely small goals and develop iteratively.
For instance there's no real purpose to writing your own compiler except to learn new techniques and practice them. So the end result doesn't really matter at all, the process itself is the goal. Even ripping out and replacing everything is productive if you feel you're finding and solving problems by doing it.
If something is frustrating or too complicated, just break it down into smaller pieces until it isn't anymore. Even the process of figuring out how to break something down itself can be broken down into smaller pieces.
Anonymous No.106354498 >>106354535
>>106354155
Then I don't understand why lisp is particularly suited.
>why would you want to make a C style language in the first place
I like writing in that syntax. As simple as that. It looks aesthetic to me and I'm used to it.
I'd consider skipping some of the brackets/commas though, but then I may lose some clarity.

>do things for the work itself
It is hard to do something expecting to throw it away; although I guess there could be snippets of code I can still take from it and use elsewhere.
You do work, and feel good for the result. Here the result would be improving if it's not the software itself. But is such a result certain?
It's hard to convince myself.
Without feeling good for doing the work, I suffer.
I just can't find enjoyment in it...

>If something is frustrating or too complicated
I've spent a lot of time chasing my tail, trying to fix trivial bugs in the past.
I feel as though the experiences have affected me negatively in this area.
Anonymous No.106354535 >>106354730
>>106354498
lisp is suited for it because of the syntax and macro system. Basically lisp is extremely easy to parse, to the point of having a built in parser. It also contains it's own compiler, and you can write code, later it like data, compile it, and execute it from inside your program.
Essentially a lisp compiler entirely skips input and readout and can focus entirely on transformation, which it can do with it's native syntax and data structures since how the compiler represents code and how the programmer writes code is the same format.

>certain
Obviously not, certainty means you don't have to act. If you're certain about something, it means you can ignore it and focus on something else you're uncertain about.
>fixing bugs
This too is programming. Both the finding, the fixing, and the attempts to avoid having to do it in the future all improve your ability to program. Nothing has ever elevated my intimate understanding of a program than having to debug it. It enforces a complete intuitive understanding of all the working parts and encourages modularity and useful comments.
Anonymous No.106354597 >>106365582
>>106352492
https://borretti.me/article/why-lisp-syntax-works
Anonymous No.106354730 >>106355094
>>106354535
>write code, later it like data, compile it, and execute it from inside your program.
I find it hard to understand how it will map to assembly.
You're saying to use lisps built in compiler not your own compilation process?? So what's executing is not your own assembly? If so then are any optimizations you've done valid?
Anonymous No.106355094
>>106354730
You can generate your own assembly directly without using the optimizing compiler if you really want to, I mean that's literally what the builtin compiler is doing.
Mapping to assembly is quite simple. You literally just output to a string and have the processor execute it. There's no real work being done in that process, it's just like parsing input code, but in reverse.
The meat of any compiler is transforming the code structure and altering it to perform checks and optimizations. Lisp makes that really easy since code is just data and you can manipulate it like any other data structure.
Anonymous No.106355741
https://gist.github.com/mnuessler/e1036908ef313a3a6ad7701765f71d7d
(defun unix-timestamp-to-date ()
"Prompts for a unix epoch time stamp and converts it to a human-readable date"
(interactive)
(let* ((time-zone "UTC")
(time-unix (seconds-to-time (read-number "Unix epoch time stamp: ")))
(time-str (format-time-string "<%Y-%m-%d %a %H:%M:%S>" time-unix time-zone)))
(message "Date: %s (%s)" time-str time-zone)))
Anonymous No.106356580
Any aidermacs users? With ollama?
Anonymous No.106356626
https://wh40k.lexicanum.com/wiki/Abominable_Intelligence
Anonymous No.106357055 >>106357188
Guys, how do I change the language in Portacle to Racket? DrRacket is fucking cancer and going through HTDP has been a painful experience with it
Anonymous No.106357188 >>106357546
>>106357055
Portacle hasn't been maintained for years.
https://github.com/portacle/portacle/issues/182

Just use regular Emacs with racket-mode.
https://www.racket-mode.com/
(use-package racket-mode
:hook ((racket-mode . eldoc-mode)
(racket-mode . racket-xp-mode))
:ensure t)

https://pastebin.com/eV01AcvM <- barebones init.el with racket-mode (and sly in case you still want to use Common Lisp).

To use it, load a .rkt file and then run `M-x racket-run`.
Anonymous No.106357251 >>106358777
>>106328169
>>106328179
Did you make these?
Anonymous No.106357546
>>106357188
Thanks for the warning. I just wanted something easy to go along, but guess I'll just continue with that shitty IDE anyway
Anonymous No.106358762 >>106358859
not related to emacs/lisp, but asking here because you guys seem like the least retarded people on this website:
For a few months now I've been seeing more and more filenames like IMG_4929.png and so on, basically always following the pattern IMG_nnnn. This happens on all 4chan boards I visit.

Are these bot posts, or is there just some browser extension, 4chan app or phone OS that renames files after this pattern when you upload them here?
Anonymous No.106358777
>>106357251
I just placed a white/black gradient over the original logo.
The original .svg I found here: https://www.cbaines.net/projects/guix/freenode-live-2017/presentation/Guix.svg
Anonymous No.106358859 >>106361094
>>106358762
>IMG_nnnn
I did a little searching, and it seems the iOS uses this file naming scheme.
https://apple.stackexchange.com/questions/94501/how-can-i-reset-iphone-camera-roll-to-img-0001-jpg
Anonymous No.106358967
>>106290010
http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/book/2316430/838600/professional-automated-trading-theory-and-practice.html
Anonymous No.106359020
>>106343725
>Picolisp guy is a vi guy, ROFLMAO….
https://github.com/flexibeast/plisp-mode?tab=readme-ov-file#note-highlighting
At least the Emacs-basd PicoLisp programmers get syntax highlighting.
Anonymous No.106359183 >>106359509 >>106359664
>>106353522
Data fuckery and game dev. That's it. I don't really care about programming outside of these areas. I wanted to get into embedded, but I can't be bothered to read datasheets all day. Some people love that shit, but I find it incredibly tedious. If I had a project that I just HAD to realize, I'd just deal with it, but I don't, I just wanted to mess around. If you don't like programming, don't bother. If you think you do like programming, but you don't like your projects, don't feel like to have to keep working on them. Try something else. Don't do this autistic nerd shit that trannies in these threads go on and on about if that's not what you're into. Or, get some programming socks if that is what you're into.
Anonymous No.106359391 >>106359408 >>106359623
can lisp fix my life and give me a job? (im a neet and my resume is empty)
Anonymous No.106359408
>>106359391
no
Anonymous No.106359509 >>106359539
>>106359183
>programming socks
The Gigachad FSF/GNU sock is all you need
https://www.fsf.org/blogs/gnu-press/support-userfreedom-by-purchasing-gifts-from-the-gnu-press-shop
Anonymous No.106359539 >>106373997
>>106359509
As Saint iGNUcius intended.
http://xahlee.info/emacs/misc/Richard_Stallman_at_MIT_dancing.html
Anonymous No.106359623 >>106383971
>>106359391
Learn Clojure. Build some cool projects.
Eval & Apply.
https://clojurejobboard.com
Anonymous No.106359664 >>106359729
>>106359183
I think I do.
I think I want to mess around too; I don't think I have the guts to do a serious project.
I'm interested in gamedev too. But it takes too much effort to do all the non-programming parts.
Anonymous No.106359729
>>106359664
You don't have to do the non-programming parts yourself. While you're learning, just use free assets. When you're getting to a point where you want to release something, hire someone to do the parts you don't want to, or just make shitty dev art.
Anonymous No.106359756 >>106371387
Could someone explain to me what is the point of failing the rebuild when something is declared twice? Shouldn't Guix just ignore the second one instead of outright refusing to reconfigure?
Anonymous No.106360896
https://www.youtube.com/watch?v=80Tf0hqynxQ
Anonymous No.106361094
>>106358859
that might be it, thanks
Anonymous No.106362914 >>106363326 >>106366399
M-x strokes-mode

https://karthinks.com/software/more-batteries-included-with-emacs/#strokes--m-x-strokes-help
Anonymous No.106363326 >>106369883
>>106362914
does ts (this shit) work with the android version?
Anonymous No.106364809 >>106365184
Nice.
https://clojure.org/news/2025/08/19/deref
>deps.clj - A faithful port of the clojure CLI bash script to Clojure (https://github.com/borkdude/deps.clj)
Anonymous No.106365136 >>106365146 >>106380118 >>106397294
Ive been reading Common Lisp a gentle introduction for like a year and a half now and always have extended breaks inbetween and I just cant anymore. Its soooooooo drawn out and boring and you never do cool stuff.
Can someone recommend me another book that teaches me common lisp but also lets practical experience? LIke ive been reading for 200 pages and i still couldnt do one project.
Is it really the best book for tat?
Anonymous No.106365146
>>106365136
You should know enough to make your own projects or copying from other and implementing yourself. That is the real way to learn programming.
Anonymous No.106365184
>>106364809
More projects could use something like Deref. I always learn about new stuff with each release.
Anonymous No.106365582 >>106365653
>>106354597
>Rust
>macOS
>Claude
And here I was hoping you sent a based blog
Anonymous No.106365653
>>106365582
The true & only based blog is http://xahlee.info
Anonymous No.106365726 >>106365909
>>106289416
>sunrise japan flag
kill your self
Anonymous No.106365909 >>106366072 >>106367689
>>106365726
Banzai, nigger!
https://www.youtube.com/watch?v=lWb--Ftilg8
Anonymous No.106365986 >>106365997
>>106342618
I know what you're talking about and it is a huge problem everywhere. These retards now use their github profiles on their resumes. So they want to make it look like they've worked on tons of shit. But all they ever do is change something in the UI and make it worse. I have no idea why these new people can't design functional UIs and constantly take features away, move shit around or assume the user is using mouse/touchpad. So everything ends up being massive buttons when it could have been a simple key binding (that they don't include because they never use their own keyboards).

The schools have churned out useless code monkeys that can even understand HTML most of the time. It's horrible. I know people that say they're "UI/UX front end developers". In reality they sit at a computer and switch out pre-made templates for wordpress. They just manage a ton of shitty websites running on wordpress.

Why? Dunno. Plenty of them running on phpbb and old vBulletin as well. Entire websites build on those old forum and blog engines. The people that get paid to baby sit them can't even read the HTML or PHP code involved. They don't know javascript either. They always use some framework or something for it.

I don't know why modern "developers" never step out of their little niche that shouldn't exist in the first place. When I learned how to do web shit we learned everything from what they now call the "back end" to the "front end". I didn't need a framework to do it either.
Anonymous No.106365997
>>106342618
>>106365986
I wrote all that and didn't get to my main point: I agree with you. At some point the code is what you need and it's done. At that point it should be left alone barring major security issue.

These new "programmers" think projects are dead and the software is useless if it hasn't been touched by someone in the last 2 week. I see them running around all the time fear mongering because things haven't gotten a modification in the last year or two. They don't understand that it's already perfect and if something major happens one of the 10,000 current users will probably step up and fix it.
Anonymous No.106366072 >>106366384
>>106365909
I hope you are bloody buried by a 10 ton truck seriously
Anonymous No.106366288 >>106366299 >>106366316
Can whoever creates the next thread remove emacs.amodernist.com from the sticky, as the site is down?
Anonymous No.106366299
>>106366288
>as the site is down
lulwut?
werks on my machine
Anonymous No.106366316
>>106366288
I just submitted the form w/ the defaults, and it generated this.
;;; Personal configuration -*- lexical-binding: t -*-

;; Save the contents of this file under ~/.emacs.d/init.el
;; Do not forget to use Emacs' built-in help system:
;; Use C-h C-h to get an overview of all help commands. All you
;; need to know about Emacs (what commands exist, what functions do,
;; what variables specify), the help system can provide.

;; Use whatever the default monospace font is
(setq font-use-system-font t)

;; Miscellaneous options
(setq-default major-mode
(lambda () ; guess major mode from file name
(unless buffer-file-name
(let ((buffer-file-name (buffer-name)))
(set-auto-mode)))))
(setq confirm-kill-emacs #'yes-or-no-p)
(setq window-resize-pixelwise t)
(setq frame-resize-pixelwise t)
(save-place-mode t)
(savehist-mode t)
(recentf-mode t)
(defalias 'yes-or-no #'y-or-n-p)

;; Store automatic customisation options elsewhere
(setq custom-file (locate-user-emacs-file "custom.el"))
(when (file-exists-p custom-file)
(load custom-file))
Anonymous No.106366384
>>106366072
Isekai'd? Not before you try Caveman.
https://github.com/fukamachi/caveman
Anonymous No.106366399 >>106369883
>>106362914
I couldn't get this to work on Termux.

Not gonna try the native Android version because I find vanilla emacs unusable.
Anonymous No.106367301
>>106294699
Nice work, anon.
Anonymous No.106367689
>>106365909
Anonymous No.106368873 >>106373739 >>106396887
my new Lisp will be built
>he has to regularly hit the shift key
Anonymous No.106369883 >>106369968
>>106363326 (me)
>>106366399
it doesn't work on android, strokes-mode requires a mouse apparently
Anonymous No.106369968
>>106369883
>it doesn't work on android
in the trash it goes, then. I specifically use emacs because it's keyboard-focused.
The only use-case on the desktop I can think of is if I were to write Japanese with character recognition via a tablet and wanted to control emacs without reaching for the keyboard.
Anonymous No.106370983 >>106371747
Man Guix + nVidia is just way too hard, I think I'll give up.
Everything I try to do has their own guix caveats and issues and when I fix them I still have to deal with nVidia stuff.
>sway
Can't figure out where the fuck to put --unsupported-gpu since the .desktop file location is read only and when you change sddm's wayland-sessions to another location with a custom sway.desktop it just fucking doesn't show anything.
>waydroid
Managed to install after hunting off random dependencies and stealing someone's wayland package and service definitions but it kept failing to boot and it turned out you cant do hw acceleration with nvidia.
After "fixing" (disabling hw acceleration) that I managed to boot it but then if I try to launch a game it actually fucks the whole system up and EVERYTHING stops working, it doesn't hang but I can't open or interact with anything, I don't even know how that's possible.

All that just because I bought an used 3060 because it was the cheapest decent thing available...
Anonymous No.106371025
Check this out, if a terminal was already open I can try loading Firefox but it just says that there's no GPUs detected...
I can trigger this just by launching an application on Waydroid, how is that even possible...
Anonymous No.106371387
>>106359756
you have two different glib packages in your dependency tree
in your operating-system's packages you're likely using something like (specification->package "glib") which produces the glib-with-documentation package, and network-manager propagates the other variant of glib
import the (gnu packages glib) module and use the variable named glib instead
Anonymous No.106371747
>>106370983
Nvidia is hell anyways, do you really need something more than Nouveau or whatever is the current situation can't offer?
Guix is a great idea but testing it with the worst driver provider possible is a challenge you shouldn't put yourself into.
Anonymous No.106373739 >>106374161
>>106368873
>siepl
???
Anonymous No.106373997
>>106359539
this picture made me dream that I was trying some clothes on because I wanted to make "exotic dances" for money. I was wearing very different clothes in my dream but I was thinking of exactly this picture.
Anonymous No.106374161 >>106375848 >>106390182 >>106396565
>>106373739
it's an acronym
Anonymous No.106375848
>>106374161
Elixir? Nice.
Anonymous No.106377695
>>106321782
>https://github.com/ebeem/guile-swayer#which-key
Neat
Anonymous No.106378408
Emacs threading code needs a dedicated maintainer.
>Let me just state the obvious, if you haven't figured that out
already: we don't have on board anyone who takes care of this part of
Emacs. I've been fixing thread-related problems here and there since
this stuff has landed on master, because no one else would. What we
have now might be not ideal, but the basic features work, and I'm not
aware of any glaring bugs (of which there were several in the
beginning). So the only way I'll agree to changes that modify the
design and expand this further (i.e. not changes that fix clear bugs)
is if someone steps forward to be the responsible maintainer of this
part of Emacs, and will thereafter keep the promise by picking up any
and all bug reports and other discussions related to threads, and
working on them actively and efficiently. I cannot be that person, so
someone else will have to volunteer. Maybe you.
https://lists.gnu.org/archive/html/emacs-devel/2025-08/msg00536.html
Anonymous No.106378423
Emacs threading code needs a dedicated maintainer.
>Let me just state the obvious, if you haven't figured that out already: we don't have on board anyone who takes care of this part of Emacs. I've been fixing thread-related problems here and there since this stuff has landed on master, because no one else would. What we have now might be not ideal, but the basic features work, and I'm not aware of any glaring bugs (of which there were several in the beginning). So the only way I'll agree to changes that modify the design and expand this further (i.e. not changes that fix clear bugs) is if someone steps forward to be the responsible maintainer of this part of Emacs, and will thereafter keep the promise by picking up any and all bug reports and other discussions related to threads, and working on them actively and efficiently. I cannot be that person, so someone else will have to volunteer. Maybe you.
https://lists.gnu.org/archive/html/emacs-devel/2025-08/msg00536.html
Anonymous No.106378879
This might be useful to people developing UIs in Emacs.
https://github.com/ichernyshovvv/grid.el
Anonymous No.106380118
>>106365136
Practical Common Lisp.
https://gigamonkeys.com/book
Anonymous No.106381750
https://org-roam.discourse.group/t/org-roam-ui-lite/3852
Anonymous No.106382047 >>106382222
Hi guys. are there any lisp-based operating systems? I just tried Mezzano but it's horrible and abandoned.
Anonymous No.106382222 >>106383788
>>106382047
Medley Interlisp -> https://interlisp.org
Try it here: https://online.interlisp.org
Source code: https://github.com/interlisp/medley
Anonymous No.106382283
herd start cow-store /mnt
Anonymous No.106383788
>>106382222
>https://online.interlisp.org

Wow!

A new reason to live!
Anonymous No.106383971 >>106384078 >>106384195 >>106384202
>>106359623
>cool projects
See, that's where I'm coming up short.
Anonymous No.106384078 >>106384195
>>106383971
How does one develop creativity?
Sometimes, I feel like it's less about developing and more about tuning in. It's like when the same invention is invented my multiple people at around the same time despite not being in physical communication with each other.[1] There are ideas in the ether, and it's up to you to tune into them.

Depending on what skills you've developed, some ideas may be easier to tune into than others.

[1] https://www.nutsvolts.com/?/magazine/article/tesla_inventerd_radio_not_marconi
Anonymous No.106384195
>>106383971
>>106384078
Do a search for:
simultaneous invention
multiple discovery

I think it's a bigger part of the creative process than most technical people are willing to acknowledge.
Anonymous No.106384202 >>106406837
>>106383971
almost all existing projects can be done in a better way. it's just about having the audacity to think you can do better, and then slamming your head against the wall until you actually do end up doing better.
people very much so underestimate the power of spending time thinking things through. it is very, very rare that people just have a damn lightbulb pop on in their head without first spending days/weeks/months/years rubbing braincells together
Anonymous No.106386081 >>106386550
Keep your *Messages* buffer scrolled to the bottom at all times.
;; https://stackoverflow.com/a/13323672/19908235
(defun tail-f-msgs ()
"Go to the end of *Messages* buffer."
(let ((msg-window (get-buffer-window "*Messages*")))
(if msg-window
(with-current-buffer (window-buffer msg-window)
(set-window-point msg-window (point-max))))))

(add-hook 'post-command-hook 'tail-f-msgs)
;;(remove-hook 'post-command-hook 'tail-f-msgs) ; 1488
Anonymous No.106386550 >>106388324
>>106386081
is that not the default behaviour?
Anonymous No.106387393
>>106288902
Likely got poached by Phase Connect
Anonymous No.106388324
>>106386550
Kind of, but the moment you scroll the *Messages* buffer, it's not pinned to the bottom anymore. You can manually repin it to the bottom by hitting C- while focused in the *Message* buffer, but having to do that multiple times during a debugging session can get annoying.
Anonymous No.106389107
https://github.com/tarsius/keycast
This is not a super big deal, but I cannot get keycast-mode-line-mode to work. It runs and doesn't crash, but it doesn't show the keypresses in the mode line. I wonder if anyone here can get it to work.

Fortunately, keycast-tab-bar-mode *does* work, so I'll probably use that instead whenever I need to make a demo video.
Anonymous No.106390182 >>106392004
>>106374161
>it's an acronym
What does SIEPL stand for?
Anonymous No.106391073
>>106344372
I wonder if forums are going to make a comeback.
>>106387583
Anonymous No.106392004 >>106396210
>>106390182
Secure, Introspective, and Extensible Programming Language
Anonymous No.106393664
>>106288875
>Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn
Lovely crafted.
Anonymous No.106394318 >>106395205 >>106395334
How do (You) name and organize your org mode notes? Personal notes, finances, schedules, meeting/project notes, etc.
Anonymous No.106395205
>>106394318
For the majority of my notes, I let org-roam do the naming, so they're in the form of $datetime-$title.org. I also have ad-hoc notes scattered throughout my system, and those are usually short $oneword.org. Only the roam side of things is systematic.
Anonymous No.106395334
>>106394318
I create a "work.org" file for my tickets at work. Usually a bunch of one off scripts to keep the shit flowing and stuff from crashing, and sql.
Anonymous No.106396135 >>106397530
How do I make space as leader key work in dired/help and some other buffers/modes? For some reason, it doesnt work.
I did (evil-set-leader 'nil (kbd "SPC")) but it doesn't work in all buffers.
Anonymous No.106396210 >>106396359
>>106392004
Just use an algol like language tard
Anonymous No.106396359
>>106396210
>tard
Anonymous No.106396565
>>106374161
Disgusting
Anonymous No.106396887
>>106368873
>>he has to regularly hit the shift key
fixed
(local-set-key (kbd "[") 'paredit-open-round)
(local-set-key (kbd "]") 'paredit-close-round)

(local-set-key (kbd "C-]") 'paredit-forward-slurp-sexp)
(local-set-key (kbd "C-[") 'paredit-backward-slurp-sexp)
Anonymous No.106397294
>>106365136
solve these
https://www.ic.unicamp.br/~meidanis/courses/problemas-lisp/L-99_Ninety-Nine_Lisp_Problems.html
Anonymous No.106397530
>>106396135
I don't have an answer but this README might point you in the right direction.
https://github.com/cofi/evil-leader
Anonymous No.106399228 >>106399236
eMacdonalds
Anonymous No.106399236
>>106399228
eMac n Cheese
Anonymous No.106399271 >>106399735
>GNU Artanis is a web application framework written in Guile Scheme. It is a simple and efficient tool for building web applications. It is designed to support the development of dynamic websites, web services, and web applications. It is a modern web framework that is easy to use and easy to extend.
https://artanis.dev/blog/1.3.0-release.html
Anonymous No.106399735 >>106399810 >>106400692
>>106399271
>https://artanis.dev/blog/1.3.0-release.html
what a dogshit web design
Anonymous No.106399810 >>106400192
>>106399735
I kinda like the simplicity.
Anonymous No.106400192 >>106400210
>>106399810
>full screen animation on load
>simple
Anonymous No.106400210
>>106400192
kek
Anonymous No.106400692
>>106399735
It looks alright in eww. Syntax highlighting even works.
Anonymous No.106400773 >>106400809 >>106402470
Today I realized that logical-and is just a fold-right operation which accumulates boolean values, and that you can nest arbitrarily complex, recursive logical structures inside it. SICP is fucking mind-bending. There is something incredibly satisfying about discovering these computational principles which seem baked into not just computers but the structure and fabric of reality itself. This book is like a drug.
Anonymous No.106400809 >>106400919
>>106400773
I'm reading HTDP right now. Can't wait to finally get to SICP, although I'm a bit scared of the math and already losing my hair to some introducitons to proofs/logic, but alas, it must be done.
Anonymous No.106400919 >>106400978
>>106400809
I personally just jumped into SICP. This has definitely bitten me in the ass before and I frequently have to learn things from first principles in the middle of a chapter (most recently matrix/vector operations because I'm a high school dropout) but I'm very impatient and need to feel the utility before I can see the utility. The math isn't super involved through the end of chapter 2, at least. One thing I do wish I'd done better is coming at lambdas from at least an "intro to lambda calculus" perspective instead of from a programming perspective. Things like currying and especially church numerals were really tough with no lube. Maybe it'll be different for you with a better background. Even though church encoding was tough, I think it was very much worth knowing because, in a sense, the way church numerals are a kind of temporal encoding of data across execution time, the same abstraction holds true for how logical-and accumulates boolean values across execution time as the storage medium. It's all so invigorating.
Anonymous No.106400978
>>106400919
I'm planning to delve into those books for more than ten years now. I'm beginning to think that if I don't do it now (when I also have a free time in my life), I'll never manage to finish it. Background-wise, I'm probably not much better than yours, even though I went to CE, but never finished. Anyway, lovely response. I'll have that in mind about lambdas, currying and Church. Thank you very much.
Anonymous No.106401708 >>106402381
>>106288936
This guy is a mega retard. Extremely performative trying to be a cool edgelord claiming to have the best taste in tech consumption but he’s just a consoomer building his own prison. He’s like a edc youtuber. He should make a video on actual work he’s done then maybe gain some credibility.
Anonymous No.106402381 >>106402419
>>106401708
>This guy is a mega retard.
Aren't we all?
Anonymous No.106402419
>>106402381
I try not to be, but I've had a few mega retarded moments in my life.
Anonymous No.106402470 >>106404469
>>106400773
>Today I realized that logical-and is just a fold-right operation which accumulates boolean values, and that you can nest arbitrarily complex, recursive logical structures inside it.
I don't understand. Your mind is blown by the fact you can nest an arbitrary number of forms in an and form?
Anonymous No.106403578
>>106346617
>>106347990
beautiful performance
https://www.youtube.com/watch?v=e2VNjJ7wH6Q
Anonymous No.106404469 >>106404506
>>106402470
It's more that fold-right (and fold-left) are kind of super-abstractions under which it seems like almost all other operations can be subsumed. It's less that logical-and can take arguments and more that it can function as an accumulator under higher order abstraction patterns the book has been tracing for two chapters now.
(define (equal-f? a b)
(cond ((symbol? a) (eq? a b))
((and (pair? a) (pair? b))
(and (equal-f? (car a) (car b))
(equal-f? (cdr a) (cdr b))))
(else (eq? a b))))

In this problem, the crux was figuring out how to accumulate boolean values for the final return. It's computationally beautiful (in my opinion) that the accumulator here which defers and then unfolds is just the and form, in and of itself. Maybe I'm not explaining it well or maybe it's genuinely just trivial but I felt two chapters of struggle come together and crystallize.
Anonymous No.106404506
>>106404469
(define (equal-f? a b)
(cond ((symbol? a) (eq? a b))
((and (pair? a) (pair? b))
(and (equal-f? (car a) (car b))
(equal-f? (cdr a) (cdr b))))
(else (eq? a b))))

Formatting is fucking hell on mobile. Hopefully this is more readable
Anonymous No.106405011 >>106406652
can someone post theirs home configuration of guix, i need reference of shell configuration, (preferably ZSH)

it not works for me, the variables arent sourced before zshrc or bashrc file is loaded and my shell is broken :(
Anonymous No.106406563
We are in great danger
Anonymous No.106406652
>>106405011
I just use the (feature-zsh) from RDE. Maybe you can adapt it to your configuration. https://github.com/abcdw/rde/blob/master/src/rde/features/presets.scm#L105
https://github.com/abcdw/rde/blob/master/src/rde/features/shells.scm#L37
https://github.com/abcdw/rde/blob/master/src/rde/home/services/shells.scm#L124
Anonymous No.106406837
>>106384202
I have the gist that it's very much the difference between being handed a novel problem, and being handed a problem with an answer written next to it + thinking "I could have done that!"

More often than not, no. No you couldn't.
Anonymous No.106407251
Not a lisp, but lisp adjacent and kinda interesting:
https://wryl.tech/projects/modal.html
https://wiki.xxiivv.com/site/modal.html
Anonymous No.106407706
>>106352492
>What is the appeal of lisp for you?
There's always a clear path to understanding a program. You don't know what the symbol at the start of the list means? Just read its source code or documentation. With more syntax you have to deal with unexpected interactions between pieces of code.
Anonymous No.106407764 >>106413839
What would your ideal Emacs/Lisp keyboard look like? Obviously, parentheses should be easier to access. But if you could get any keycaps made for free, what would you replace?
Anonymous No.106408173
>>106302510
https://time.is/compare/1930_28_Aug_2025_in_Tokyo
https://lisp.connpass.com/event/365507/

I don't know if they're going to stream, but just in case:
https://www.youtube.com/@shibuyalisp2644/streams
Anonymous No.106408724 >>106411757 >>106413562
Is there any reason to choose one lisp over another? I/m too much of a noob to know how to compare them. I've been learning clojure, but I don't know if I'm losing or gaining anything by using it. I do like how, with some effort, I can more or less do some of my python data fuckery in clojure with scicloj.
Anonymous No.106408851 >>106411540
>>106311541
Why screw around with Dr. Racket? Just use Geiser and guile in emacs like everybody else for the last decade or so.

(use-modules (pict))

(define rot ; counter, ray every 36 degrees for 16 rays
(let ((rdegs 0))
(lambda ()
(set! rdegs (+ rdegs 22.5))
rdegs)))

(define rays ; make 16 triangle rays
(make-list 16
(remove-outline
(fill (polygon '((0 . 450) (15 . 175) (15 . 0) (15 . 175)(30 . 450))) "red"))))

(pin-over (filled-rectangle 325 200 #:color "white") -100 -125
(apply cc-superimpose
(cons (filled-ellipse 120 120 #:color "red")
(map (lambda (R) (rotate R (rot))) rays))))
Anonymous No.106409607
Emacs for life!
Anonymous No.106409804 >>106410838
(setq proced-enable-color-flag t)
WHY is this not the default???
Anonymous No.106410378 >>106410838
really enjoy sussman seething over the derivative notation
https://youtu.be/eJeMOEiHv8c?list=PLE18841CABEA24090&t=2709
Anonymous No.106410388
>>106353522
if you really want something to do learn math and lisp at the same time and do project euler. it keeps the mind occupied
Anonymous No.106410471
>>106303454
Not true, what people pay you for is what they think your capable of not what you're capable of. You'll be routinely disappointed in the corporate world if you think late night shifts and "solving problems" will land you manager positions etc. Reputation is more important than competence but competence builds reputation, and if there is a production issue and you whip out emacs and connect to a remote debugging session that'll get you noticed.
Anonymous No.106410838
>>106409804
>WHY is this not the default???
It wouldn't be Emacs without bad defaults. ( ;ㅿ; )

>>106410378
>derivative notation
I have to agree with him on this. I was never a fan of the irregularity of mathematical notation.
Anonymous No.106411540 >>106415388 >>106415529
>>106408851
>Why screw around with Dr. Racket? Just use Geiser and guile in emacs like everybody else for the last decade or so.
TIL that the geiser repl could display graphics. I honestly didn't know, whereas I knew DrRacket and racket-mode were both capable of such things.

Also, are the docs for the library you're using online anywhere? I found the repo:
https://git.elephly.net/software/guile-picture-language
...but do I have to clone it to read the docs?
Anonymous No.106411757
>>106408724
This goes for any language and not just Lisps.
- library availability
- platform reach
- personal preference
Anonymous No.106413366
>>106340283
Curious choice
>A FEXPR is a function which does not evaluate its arguments. Decisions about evaluation are delegated to the function body
https://picolisp.com/wiki/?pros-and-cons
Anonymous No.106413562
>>106408724
I used to worry about which lisp to choose, too. I don't anymore. I routinely use Common Lisp and Scheme, and I am looking into Racket recently. As well as other languages in other families. Sure, it's best to have a "main" language but if you don't try them all how are you going to know which one suits you best? What you learn from one lisp (or PL in general) will serve you in others, even if concepts do not map cleanly. If you are able to use two different lisps idiomatically, you'll know both of them better by comparison. Do try not to pick too many languages at once, but do not limit yourself to just one. Pick exactly the ones that seem interesting to you, use your own criteria, rather than the preferences of others.
Common Lisp is the most widespread of them, mature, and arguably the most powerful, but also a mess in many cases.
Scheme is lean and enjoyable, it works best when used with techniques from so-called "functional programming", but also has portability issues do to most useful features being implementation-dependent.
Racket is Scheme with batteries included, as they say. More focused on pure-functional paradigm, and also encourages to grow your own language out of it to suit your problem (see Scribble, for example)
Clojure uses java, idk much about it, but it has the strenghts of java, namely it's libraries and portability.
There are others like LFE, if you're interested in the specific features of Erlang.
Anonymous No.106413839 >>106414020
>>106407764
http://xahlee.info/kbd/symbolics_space-cadet.html
Anonymous No.106414020 >>106414694
>>106413839
>have to shift for parentheses
why?
Anonymous No.106414694 >>106415505 >>106415548
>>106414020
It looks like they have some extra parens to the right of the P key where you don't have to shift.
Anonymous No.106415388 >>106415513
>>106411540
You just need the pict.scm and all the docs are in there, like most lisp code.
See at the bottom of the screen where geiser gives me the intellisense for pin-over (where the cursor is)? That’s just automatic, as is auto-complete.

The main point I was trying to make is this is closer to ordinary scheme without racket’s nonsense.

Looking at it again, now, I should have re-written it using iota instead of that ‘rot’ counter, and used pict’s disc instead of the symmetric ellipse
Anonymous No.106415505 >>106415548
>>106414694
It has a greek key, but it could probably use a lambda and define key, as well as a bunch of other core lisp keywords. Even the Sinclair has this, for a lisp machine it makes total sense if you’re doing programming lisp on it.

If only modern standard and useful lisps could have kept their code size withing 2K/4K so it’s ROMable.
Anonymous No.106415513 >>106415710
>>106415388
>racket’s nonsense
I like what racket gives me.
Anonymous No.106415529
>>106411540
The docs are info files, so it's perfect for an Emacs user. If you want to lookup a symbol in the manual inside Geiser using `geiser-doc-look-up-manual', I'm pretty sure you need to modify `geiser-guile-manual-lookup-alist' first.
Anonymous No.106415548
>>106414694
Oh I'm fucking blind, assumed those were braces.
>>106415505
That's pretty cool.
Anonymous No.106415642 >>106415751
Does Guile have a package manager?
How does one install Guile libraries?
https://www.gnu.org/software/guile/libraries/
Anonymous No.106415710
>>106415513
> i like non-standard specials
So, that’s a problem in that we often like things that aren’t good for us.
Starting off, you should try and do everything in core r5 scheme. Especially for small programs.

If you’re doing larger scale stuff and having retards maintain it that’s when you might want to dabble in bloatware common lisp-like features.
Myself, I’m getting back into lisp after being away from it for more than 30 years and I’m being extra strict in my self-training programme.

I like how everyone migrated to lower-case keywords, that evolutionary change makes sense.
It’s the little things in life that make it worth living, like that cigarette and beer after work.
Anonymous No.106415751
>>106415642
> package manager for guile.
Package manager written in guile: guix
Well-written scheme libraries are just “installed” by placing them in your load-path and use’ing them. Go for that first.