(ฮป) - Lisp General - /g/ (#105581689) [Archived: 1021 hours ago]

Anonymous
6/13/2025, 3:02:21 PM No.105581689
LaiNAVI_thumb.jpg
LaiNAVI_thumb.jpg
md5: c43c898a8f1953def18192063ea21062๐Ÿ”
>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://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://rentry.org/lispresources

(setf *prev-bread* >>105527756)
Replies: >>105582703 >>105583339 >>105595531 >>105596997
Anonymous
6/13/2025, 3:08:13 PM No.105581727
laiNEETs
laiNEETs
md5: 412d733b1511d104d16f386c5001816d๐Ÿ”
World Wired Weeb
https://x.com/yamaki_nyx/status/1933417175651659869/
Replies: >>105581776 >>105581801
Anonymous
6/13/2025, 3:17:21 PM No.105581776
GpSjGZ0bYAIsuzP
GpSjGZ0bYAIsuzP
md5: c04d1fa18de9a0aa6f103365548324c6๐Ÿ”
>>105581727
https://archive.org/details/09-sel-protocol/
Replies: >>105623041
Anonymous
6/13/2025, 3:22:02 PM No.105581801
>>105581727
How should I answer the last question if I torrented it?
Replies: >>105581894
Anonymous
6/13/2025, 3:26:17 PM No.105581829
calm
calm
md5: 91cf8d7afd4a980a95ab1f1fc3f0d0f4๐Ÿ”
(defparameter *color-list* '((0.83 0.82 0.84) (0.89 0.12 0.17) (0.94 0.87 0.47) (0 0.35 0.59)))
(defun draw ()
(c:set-operator :darken)
(dotimes (i 7)
(c:arc (+ 72 (* (- (/ *calm-window-width* 5) 44) i)) 73 50 0 (* 2 pi))
(apply #'c:set-source-rgb (nth (if (>= i 4) (- i 4) i) *color-list*))
(c:fill-path)))


https://vitovan.com/calm/
Anonymous
6/13/2025, 3:26:19 PM No.105581831
casio
casio
md5: 40504039a778b71eddab30621bd24b93๐Ÿ”
Found the sauce code
https://github.com/forestfoxx/Serial-Experiments-Lain
https://cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/code/fun/life.cl
Anonymous
6/13/2025, 3:37:41 PM No.105581894
?
?
md5: fa7b5cecce85367d5b6aeeb98d009263๐Ÿ”
>>105581801
Also what is this supposed to mean?
Replies: >>105581971
Anonymous
6/13/2025, 3:50:33 PM No.105581971
spacenigger
spacenigger
md5: 7986fe56009a6237e193234e23cc7501๐Ÿ”
>>105581894
Ayy lmaos
Anonymous
6/13/2025, 4:33:01 PM No.105582267
guile_chun-li_m_bison_(street_fighter)_drawn_by_himuro_yukichiko
>>105568983
>Hackable and easy to deploy imageboard software written in Guile/Scheme.
https://github.com/ECHibiki/Kotatsu-V
Anonymous
6/13/2025, 5:31:29 PM No.105582703
>>105581689 (OP)
Is cursor-level vibe coding possible with Emacs?
Replies: >>105582994
Anonymous
6/13/2025, 5:35:31 PM No.105582732
is python just a dogshit lisp clone?
Replies: >>105582869 >>105583320 >>105584236 >>105585838 >>105587583 >>105589618
Anonymous
6/13/2025, 5:52:55 PM No.105582869
guido-sicp
guido-sicp
md5: a852b2c567772d8bb935420379c171e2๐Ÿ”
>>105582732
Clowne?
Replies: >>105583127 >>105583183
Anonymous
6/13/2025, 6:06:35 PM No.105582994
aider
aider
md5: 1b802feaad1a4e996cd53fe4106d1385๐Ÿ”
>>105582703
https://github.com/tninja/aider.el
https://github.com/MatthewZMD/aidermacs
Anonymous
6/13/2025, 6:25:31 PM No.105583127
>>105582869
>backhanded insult
he can't even get that term right and even if he did that still wouldn't be a backhanded compliment
Anonymous
6/13/2025, 6:31:54 PM No.105583183
>>105582869
slice your throat with a thousand knives and get the fuck back to your discord server of a board and dont shit up /g/ you disgusting fucking freak
Anonymous
6/13/2025, 6:52:55 PM No.105583320
>>105582732
no, python is full of statements and closure/lambdas were not a common practice unlike ruby which is based on blocks (like smalltalk)
https://www.randomhacks.net/2005/12/03/why-ruby-is-an-acceptable-lisp/
Anonymous
6/13/2025, 6:54:57 PM No.105583339
96d9d78ff9839861d5652d9d8f92673b
96d9d78ff9839861d5652d9d8f92673b
md5: fda60134bd2e7eeb0c519d2e9c5fc2ef๐Ÿ”
>>105581689 (OP)
tried adding the same jump to definition from the webm
(defun lainfind ()
(interactive)
(let ((symbol (thing-at-point 'symbol))
(file (thing-at-point 'filename)))
(cond ((file-exists-p file)
(find-file file))
(symbol
(find-function (intern symbol))))))

(define-key lisp-interaction-mode-map (kbd "<mouse-1>") #'lainfind)
Anonymous
6/13/2025, 7:12:15 PM No.105583484
lmi_lambda_lisp_machine
lmi_lambda_lisp_machine
md5: 6b2e747239b4fef4c85eed1d231d11d8๐Ÿ”
>>105536648
>>105541208
>https://www.youtube.com/watch?v=sV7C6Ezl35A
Very interesting.
http://xahlee.info/kbd/lmi_lambda_keyboard.html
Replies: >>105583942
Anonymous
6/13/2025, 8:10:50 PM No.105583942
the-land-of-lain_thumb.jpg
the-land-of-lain_thumb.jpg
md5: 4a9849a933d81c61af8db49de99207cc๐Ÿ”
>>105583484
Thank you for the video.
Anonymous
6/13/2025, 8:35:06 PM No.105584148
wagmi
wagmi
md5: 0875930c66b8d3f892ef07532fc5d219๐Ÿ”
>tfw finished first major project where I got to actually use Lisp seriously
Replies: >>105619758
Anonymous
6/13/2025, 8:40:00 PM No.105584186
I recently got corrected on some other board when I suggested "scheme" was smaller than lisp with the comment "scheme *is* lisp"

Was I wrong about that? I was more thinking about "common lisp" though as that's generally what I've used in the past (a la Guy L. Steel)

The schemes I've used definitely seem like they were all stripped-down versions of lisps and more fundamentalist (toward lambda calculus) but I admit, after all these years, I really don't know the difference between the terms.
Replies: >>105585359
Anonymous
6/13/2025, 8:44:35 PM No.105584224
lispsisters, i finally awakened and sort of understand macros (not really) but they are cool
this is mine after 6months or more part time on my project

#lang racket/base

(require "defaults.rkt"
racket/contract)

(define-syntax define-and-provide-parameters-with-contracts
(syntax-rules ()
[(_ ([name val guard converter ...] ...))
(begin
(define name
(make-parameter val
(if (null? '(converter ...))
#f
(car `(,converter ...))))) ...
(provide (contract-out [name (->* () (guard) (or/c guard void?))] ...)))]))

(define (string->boolean arg)
(cond
[(member arg '("0" "#f" "f" "false" "off" "disable")) #f]
[(member arg '("1" "#t" "t" "true" "on" "enable")) #t]
[else (printf "Argument is not thruthful enough: ~a\n" arg)]))

(define-and-provide-parameters-with-contracts
([backend "yt-dlp" string?] ;; FIXME: correct guard for executable
[browser #t string?]
[custom-directory video-directory path? string->path]
[custom-directory? #f boolean? string->boolean]
[ignore-case? #f boolean?]
[log-level 'info symbol?]
[max-results 20 exact-nonnegative-integer?]
[quality 144 exact-nonnegative-integer?]
[queue null (listof (cons/c exact-nonnegative-integer? hash?))]
[exit-repl? #f boolean?]
[urls '() (listof string?)]
[verbose-mode? #f boolean?]
[audio-only? #t boolean?]))

(custom-directory?) #f
(custom-directory? "enable")
(custom-directory?) #t


freaking make-parameter guard is not really guard, but a converter!
i implemented real guards with contracts and added optional converter

any racketchad could tell me if its good or not? thanks in advance
Replies: >>105591860
Anonymous
6/13/2025, 8:45:43 PM No.105584236
>>105582732
Python is well-known to be a derivative of BASIC, and they've just thrown (or tried to throw) every paradigm they could into it over they years, especially when they went to v3.
Anonymous
6/13/2025, 10:50:54 PM No.105585359
>>105584186
Lisp is the language family, scheme is a lisp as is common lisp, there is no single language that is just 'lisp'. But yes, scheme is certainly smaller than common lisp.
Also whoever corrected you was just being a pedantic faggot.
Replies: >>105585473
Anonymous
6/13/2025, 11:00:07 PM No.105585440
1741482273971307
1741482273971307
md5: 55cc713658aa6ef54efdfac902d1e407๐Ÿ”
>frontend in clojurescript
>backend in common lisp
I am unstoppable.
Replies: >>105628949 >>105635071
Anonymous
6/13/2025, 11:03:27 PM No.105585473
>>105585359

Scheme is distinct from Lisp in purpose, philosophy and reality. Common lisp came after and tried to bring more Scheme into lisp.
Anonymous
6/13/2025, 11:08:58 PM No.105585525
1428522026009-0
1428522026009-0
md5: 12aff0b664413e97a7be9a141b8e2221๐Ÿ”
I got banned from #emacs on libera for saying most people are too stupid to write code and we shouldn't encourage them to try. Apparently I am "elitist" because I said that and also happened to be in the #openbsd channel at the time. The janny had a meltdown and tried to dox me. When I pointed out emacs is kind of shit because it's single threaded that was the last straw and I got the ban hammer. Then he cried to ircop who issued k-line.

Jokes on them I don't care about that VPS instance anyway. Got a new IP and continued shitposting. I was only testing our erc which I'm not surprised is pretty shit. Sticking with weechat for now I guess.

In other news I wrote a manga viewer for emacs and it's working really well. Takes forever for anyone to approve and add it to melpa though. Been waiting for 4 weeks at this point.

I've also been playing with Guix but the default configurations for stuff like display/log-in manager are _really_ retarded. Plus the GNU servers are shit and are offline half of the time. Will probably stick to OpenBSD and try it again later. It's Gentoo without the USE flags and even more autism. It'd actually get pretty popular if it wasn't suffering from GNUfag bullshit like most of their other projects that aren't emacs.
Replies: >>105585707 >>105585822 >>105589066 >>105618211
Anonymous
6/13/2025, 11:26:35 PM No.105585707
green-is-my-pepper
green-is-my-pepper
md5: 3b62364bfe159b8ffa9f633ca4741e16๐Ÿ”
>>105585525
>>I got banned from #emacs on libera for saying most people are too stupid to write code and we shouldn't encourage them to try.
Funny because even RMS says this too
>How to learn programming
>First, read a textbook about programming in some language, then manuals for several programming languages including Lisp. If they make natural intuitive sense to you, that indicates your mind is well-adapted towards programming.
>If they don't make intuitive sense to you, I suggest you do something other than programming. You might be able to do programming to some degree with a struggle, but if you find it a struggle you won't be very good at it and you won't enjoy it. What's the point of programming if it is a struggle instead of a fascination? It's your choice -- if your brain is better suited to some other activity, you could choose that instead.
https://www.stallman.org/stallman-computing.html
Replies: >>105585748 >>105585807
Anonymous
6/13/2025, 11:31:51 PM No.105585748
>>105585707
Sad, I'm fascinated by all the stuff I'm not good at understanding. I'm probably best at something retarded.
Replies: >>105585775
Anonymous
6/13/2025, 11:35:18 PM No.105585775
kamina
kamina
md5: 73313f4624645e8c778cc92e4bea5bcc๐Ÿ”
>>105585748
Keep searching. You'll find that retarded thing and you'll love it.
Anonymous
6/13/2025, 11:39:25 PM No.105585807
>>105585707
Indeed. I wasn't even being a fag about it or mean. I was pretty much saying what Stallman says in that article (note: I am not a huge fan of Stallman but he's right about some things).

Trying to train these people to be coders is a waste of everyone's time. People that naturally gravitate towards programming become programmers. There are many other roles in the tech sector for people that can't do it. Like being sysadmins. There is no point in attempting to teach someone that doesn't grasp basic math concepts things like calculus. It will never work.

Today people have far more access to resources than I did when I learned how to write scripts originally. Back in those days I had to travel 50+ miles to a campus just to get a copy of Linux I could install at home. Then I had to work out how to make it work on my computer without access to the internet (winmodem problems). I had to spend many hours reading books and man pages. Beg my parents to buy expensive books for me. Wait months until Christmas before I could read them. Break stuff and fix it myself. There wasn't even google back then. You were on your own. You didn't learn or produce anything without a lot of effort.

Now they'll let anyone waltz into places that used to be nerds only and bend over backwards to help them write basic HTML. If they don't "get it" it's never their fault. No one will tell them flat out that they're wasting everyone's time. Making all these things open to everyone has ruined the actual discussions taking place within. They're now flooded with children and dumb people that do nothing but re-post things they themselves don't understand and shit up discussion. It's just noise. Even on the IRC channels that are supposed to be for developing software. All of them just want to send PRs to modify comments and other useless stuff like that so they can put it on their resume and con their way into a tech job. They don't even care about the project. They just want the clout.
Anonymous
6/13/2025, 11:40:32 PM No.105585822
>>105585525
>even irc isn't safe from tranny jannies
grim
Replies: >>105585879
Anonymous
6/13/2025, 11:43:20 PM No.105585838
>>105582732
ruby or javascript could come closer to being dog shit lisp clones, but more accurate would be to say they were influenced by and adopted features of
Anonymous
6/13/2025, 11:51:35 PM No.105585879
>>105585822
From what I can tell librea chat is overrun with them. Which makes sense I guess because they threw such a fit when freenode was taken over. You'd think places like the Gentoo channels would have smart people in them. But all they do is rant about how great systemd is all day and attack anyone that wants to run anything that isn't their default config/profiles. I was having a nice conversation with another user about s6 and we were helping each other with a minor problem with the current ebuild. The OPs in the channel flew into a fit of rage because we'd even consider using something that wasn't systemd or OpenRC. They started ranting with the same bait you see posted on /g/ daily.

When I pointed out to them that my configuration was just for fun and I needed s6 because I was helping develop skabus they got very angry and accused me to disliking dbus. I never brought up dbus but I made the mistake of telling them that yes it's dog shit and I won't allow it on my systems. Which earned me a kick+ban from all Gentoo channels I was idling in. Which is stupid because I'm the guy that's maintained some pretty important ebuilds within the default profiles for over a decade now. But I didn't use my real name/known username when I connected so I got treated like shit and called a troll.

I will say the #openbsd channel is very nice and the people within that one are very helpful. They don't put up with people posting obvious bait and politely ask you take it to the social channel if things veer too off topic. They're also always willing and quickly help newbies that come in there asking for support. But anything mainstream is filled with fags that obviously don't know anything and I'm not sure why they're tolerated. But when you cross reference the usernames of OPs in those channels you always see the same thing: They're Red Hat employees, social media whores, and people working on things like gnome/systemd/wayland/related cancer.
Replies: >>105586142
Anonymous
6/14/2025, 12:22:17 AM No.105586142
>>105585879
How can I get s6 for gentoo? It seems to be getting worse. I wish I had time for writing my own distro, I'd love if portage weren't in python.
Replies: >>105586234
Anonymous
6/14/2025, 12:36:39 AM No.105586234
>>105586142
I know your pain. Python was a retarded choice for the package manager. Pretty much everything bad about Gentoo can be tied back to that decision.

There is an s6 overlay in GURU that's pretty well maintained I think. I've been doing everything manually including writing my own ebuild for it. I'm not sure how well services are maintained for s6 in the Gentoo overlay but I imagine it has support for most common packages since there seems to be a lot of activity. Note that just switching to s6 isn't going to remove most of the junk from your system if you're running one of the default profiles. You need to do a lot of other stuff like getting rid of logind and maybe udev if you're willing to live without it. Static /dev isn't really a big deal because most people aren't constantly adding and removing hardware from their system. It just takes a bit of upfront set up then it'll work great forever. Similarly, you'll need to either go back to setuid for Xorg or try building Xenocara if you're running X (you should be). The fear mongering about setuid Xorg is pretty stupid. It isn't a big deal and I certainly trust that more than allowing logind on my systems.

Good place to start is here: https://wiki.gentoo.org/wiki/Old_Fashioned_Gentoo_Install

I would link you to some threads on the forums or the OTW 2.0 forums where a lot of good info used to be posted. But they deleted all those threads, banned everyone and *someone* decided to ddos OTW 2.0 for months at a time until the admin gave up. There was also a lot of good info in the Funtoo forums/mailing list once upon a time. But most of it seems to be gone now.

Your best bet is probably seeing who maintains the old OpenRC and s6 overlays and asking them for help. Those are the grey beards that got banned by the Gentoo jannies who refuse to run modern Gentoo. Also whomever is still maintaining the split /usr profile/overlay.
Replies: >>105586281 >>105586381 >>105586579 >>105587625
Anonymous
6/14/2025, 12:44:41 AM No.105586281
>>105586234
Oh you also need to tweak some USE flags to add -polkit, -dbus, -wayland, -systemd, -<etc>. Just adding -systemd won't purged it all together since many systemd projects don't respect that USE flag.

If you look around for people maintaining "old school" Gentoo overlays/repos off site you should find the grey beards. They're still around they just aren't allowed to use the forums anymore. I'm not sure if everyone migrated to a new location when OTW 2.0 went down. Since by that point I was maintaining my own local overlay and didn't need to bother anyone with questions anymore.

A LOT of guys went to the *BSDs. I ended up on OpenBSD. A lot of people ended up on FreeBSD as well but it takes a lot of messing around to get it in a usable state without all the modern stuff infecting linux. Just look around for places people over the age of about 40 hang out and you'll find some good advice. FreeBSD has CoC but they don't seem to enforce it much on their forums since I see people shitting on things like systemd and modern linux all of the time. Just don't call anyone nigger/fag and you should be okay.

If you're into emacs and LISP both are pretty much fully supported on the *BSDs. OpenBSD has 5 versions of it packaged for various flavors of gtk and athena. They still maintain gtk2 build. If you like Portage you should feel right at home using Ports on any BSD OS. Since that's where the Gentoo guys got the idea in the first place. The main difference is there aren't global USE flags. You have to set flags for each package (so same thing every other source based Linux distro requires). Sourcemage Linux is also neat and a better version of Gentoo imo. But it doesn't have as many users (man pages are good though).

Most packages do not really require all this modern shit like systemd and polkit/dbus as hard dependency by the way. At most they'll just spam some non-fatal errors to your log files. OpenBSD packages firefox with faked dbus to keep it from crying.
Replies: >>105586381
Anonymous
6/14/2025, 12:56:20 AM No.105586381
>>105586234
>>105586281
Oh one more thing. Do not use the default or distro kernels in Gentoo now. The guy that maintains them is a dumb ass and they come with some horrible patches. You want to run vanilla kernel or maybe one of the realtime kernels depending on what you're doing (I use realtime on my system because I work with audio production).

The best middle ground right now is FreeBSD in my opinion. It has support for Linux binaries through an emulator and wine works just fine. The only issue with it is some missing drivers if you have very new hardware or hardware that doesn't have great support in linux itself. If that is the case and a Linux driver exists you can use it through the compatibility layer just like linux bins.

If you can live without bluetooth and wine then OpenBSD is by far the best OS right now to use for a laptop/desktop. Hardware support is really good and the man pages are the best I've ever read. The community is also nice and believe in choice like Gentoo used to. They'll even write drivers and stuff for you as long as you're willing to donate the hardware.

Speaking of OpenBSD: You should check out mg if you aren't already using it.

https://man.openbsd.org/mg

I've switched over to mg everywhere that I don't want full blown emacs. It's great. Basically vi but with emacs bindings. I use it all of the time now. It has been ported to most every OS I use and it comes in the base system of OpenBSD. OpenBSD releases a new stable version every 6 months. But I've been running -current on my systems for the last two years and never had any trouble with it. It's very stable and sysupgrade works so well that I don't worry about running it at all anymore. It's nothing like using Linux. They actually test their shit and use it themselves. A new snapshot of -current is built everyday I think. I usually run "doas sysupgrade -s" once or twice a week. Their version of Xorg is also very nice. I love pledge and unveil and every port uses it.
Replies: >>105589224
Anonymous
6/14/2025, 1:05:30 AM No.105586463
>using new language
>want to do x
>look up if language supports x
>"Uhmmm we don't do x in this language...we prefer to do y..."
>get annoyed because x is the obvious and simple answer for what I want to do
>want to go back to lisp

why is every language so faggy except lisp?
Replies: >>105586499 >>105586539 >>105650804
Anonymous
6/14/2025, 1:09:19 AM No.105586494
are there any alternative systems for polymorphism for guile besides goops? I like how rust does it with traits better than oop
Anonymous
6/14/2025, 1:09:56 AM No.105586499
sicpsleep
sicpsleep
md5: 5feff8d5cc1ae7f8feea79c911817731๐Ÿ”
>>105586463
https://doc.cat-v.org/programming/worse_is_better
Replies: >>105650824
Anonymous
6/14/2025, 1:13:51 AM No.105586539
>>105586463
I think it boils down to the fact that anyone that writes a new scripting language is an opinionated asshole. There is really no reason for anything beyond C and lisp to exist. Okay maybe perl too. But most of this other stuff that's come and gone since I learned perl way back in the day is pretty useless. php was a disaster that didn't know what it wanted to be. Ruby was always slow and doing retarded things. Python is annoying with the white space. Don't even get me started on bash scripting.

When OOP was becoming a hot trend in the 90s every language had to bolt it on around 99-2002 era. People said if your language didn't support OOP it was worthless and the old way of doing things was too hard to use and too hard to extend. But as we've seen OOP has been a disaster and only resulted in code bases being even harder for one person to wrap their head around.

What bothers me now is the fact that we've got all this hardware that's so fast. We could easily have something like a lisp machine on our desks now without any issue. We'd just need a small C core for the micro-kernel and drivers. The rest of the stack all the way up could be in lisp or a lisp-like language. Where the entire system could be modified in real time without rebooting and you could easily hook into any part of the OS and interact with hardware directly from a scripting language. But they just keep piling on more shit on to these ancient UNIX-like kernels and making the systems slower and slower while requiring more and more resources. lisp machines didn't make it because they were "too slow". But now we've got desktops that are even slower when compared cycle to cycle.

I get the fact that some people dislike lisp's syntax. But it seems like a non-issue considering you could easily make a C-like syntax on top of it for people that can't into (((()))).
Replies: >>105586597 >>105589132 >>105589296 >>105595628
Anonymous
6/14/2025, 1:17:30 AM No.105586565
fucking around with racket lexer

it's amazing, i have never been more excited to work on string parsing tasks

(define the-lexer
(lexer [(eof) eof]
["do()" 'do]
["don't()" 'dont]
[(concatenation "mul(" (repetition 1 3 numeric) "," (repetition 1 3 numeric) ")")
(let* ([content (substring lexeme 4 (- (string-length lexeme) 1))]
[parts (string-split content ",")])
(list (string->number (first parts)) (string->number (second parts))))]
; Skip everything else
[any-char (the-lexer input-port)]))
Anonymous
6/14/2025, 1:19:44 AM No.105586579
>>105586234
> Python was a retarded choice for the package manager
I just discovered Guix by accident.

Anyway, for those that donโ€™t know, Guix is a scheme based pacakge manager that uses the guile implementation of scheme.
I was trying to compile guile, having problems with dependencies, and installing Guix fixed everything.
Like yoda bringing the xwing fighter out on the mud.
Replies: >>105586641
Anonymous
6/14/2025, 1:22:33 AM No.105586597
>>105586539
> no reason for anything beyond C and lisp to exist.
Lol, you can embed guile in random C programs. Itโ€™s fascinating.
Like when you want to do something algorithmic. Or complicated. Or high-level. Or correct.
Anonymous
6/14/2025, 1:28:11 AM No.105586641
>>105586579
I've been messing with Guix and the Guix distro for the last few years. It's very nice but if you want something that isn't the default config you're on your own. The documentation is really lacking in a lot of places. The main resource you have to figuring things out and lurking other people's configurations on places like github. The GNU channel is also really really slow and it seems to be hosted on a toaster behind an old crappy DSL connection. It's offline all of the time and when it is online it always feels like it's being ddos'd.

The biggest issue with using Guix distro is the fact that the project is hosted by GNU. So they'll give you no help at all when you ask questions if there is even a hint of non-free firmware on your system. Which would be fine if that wasn't 85+% of people attempting to use the software. Also if you go searching for configurations that aren't the default you'll mostly find the same hyprland+wayland config just slightly modified for personal taste. Hardly anyone is running anything but that and sharing it.

The upside is Shepard is a really cool and good init system. Which is also written in Scheme.

When it does work out it's amazing though. Since you can have multiple versions of packages installed at the same time and switch them out on the fly. The only issue is all this makes managing your ~ really retarded and you're now forced to ensure it's in sync properly. Even when it is it throws convoluted and hard to understand error messages half the time. Since most stuff isn't designed to function like this.

I will say it's much better than NixOS. Since it came after and learned from the mistakes they made. I imagine it would be good as additional package manager with a default. But I haven't tried using it like that beyond testing it one time. So I don't know how well it works in the long run. /gnu/store doesn't seem to take up much HDD space as I thought it would. So no harm in trying.
Replies: >>105588011
Anonymous
6/14/2025, 3:53:02 AM No.105587583
>>105582732
Is a dogshit language regardless of what it is, i only use it because is the only thing whose ecosystem just works on Termux without needing a bloated proot. And maybe Node.js and Elisp. Python is the only thing Termux maintainers truly test, the rest is community volunteer effort.
Replies: >>105596270
Anonymous
6/14/2025, 4:00:32 AM No.105587625
>>105586234
Python and its clinging to ancient academy bikeshedding C extensiones are so ass it took 20 years for someone to be able to write a comprensive package management solution that was usable, and is gloware writen in Rust (uses static Python builds coming from some dude trust me startup). Python has some really nice libraries, literally anyone can learn it in a week at most and has acceptable tooling, that's as much as you can squeeze from that shit show.
Replies: >>105588649
Anonymous
6/14/2025, 5:06:51 AM No.105588011
>>105586641
I've become frustrated with nixos's "all or nothing" style of package integration. Basically if you want to do ANYTHING, run any program, compile anything, etc... it HAS TO be packaged into nix or it won't work.
I think I'm just going to go back to arch at this point just to not have to deal with it anymore. Declarative system management is a neat idea and has a lot of benefits, but giving up the ability to just mutate your system as you choose manually i too far. I've had to start compiling things inside fucking vms! What's the point of a package manager if I have to spend all my time inside containers?

Guix is the same as nixos, with a nicer language but even more sever limitations. I don't think that can ever really change. Even if every program in existence was packaged the programs I CREATE wouldn't be and I don't want to have to package everything I do just to get it to run.
Replies: >>105588649
Anonymous
6/14/2025, 7:07:08 AM No.105588649
>>105588011
My main issue with NixOS is the hard dependency on systemd. They say it's not really so and you can do whatever you want. But they leave out the fact that you'll have to re-package everything yourself.

My main issue with both is how big of a pain it is to make simple changes to shit in /etc

>>105587625
The Rust people are the worst. I'm not trusting random binaries from the internet at compile time ever. I'm also never using a compiler that takes 16+GB of RAM to compile Hello Word
Anonymous
6/14/2025, 8:26:00 AM No.105589066
>>105585525
>emacs is kind of shit because it's single threaded
Emacsisters will Emacs ever be multithreaded? The codebase is big and adding multithreading *after* is rather convoluted.
Replies: >>105597060
Anonymous
6/14/2025, 8:39:21 AM No.105589132
>>105586539
OOP itself hasnโ€™t been a disaster though
I find CLOS really pleasant to use
Replies: >>105589166 >>105595739 >>105597087
Anonymous
6/14/2025, 8:44:30 AM No.105589166
>>105589132
>OOP itself hasnโ€™t been a disaster though
Fuck off, stop doing this. Just accept defeat you OOP-shitheads always move the goalpost. "Oh yeah THAT oop was bad but REAL oop isn't bad".
Over and over and over again.
>I find CLOS really pleasant to use
That's because you're in denial.
Replies: >>105589365 >>105589400 >>105589689 >>105590133
Anonymous
6/14/2025, 8:54:45 AM No.105589224
>>105586381
>OpenBSD
I don't care for clang, isn't that corporate bullshit?
Anonymous
6/14/2025, 9:07:10 AM No.105589296
>>105586539
Oop hasn't failed but allowed us to raise the manageable complexity of software by tenfold.
Replies: >>105595739
Anonymous
6/14/2025, 9:21:30 AM No.105589365
>>105589166
CLOS works fine, and try posting in a way where I donโ€™t hear a screeching tone when I read your posts please
Anonymous
6/14/2025, 9:30:52 AM No.105589400
>>105589166
Explain exactly what you dislike about CLOS and why unless youโ€™re just jumping on a โ€œdude classes bad because fpโ€ meme
Replies: >>105590864
Anonymous
6/14/2025, 10:19:16 AM No.105589618
>>105582732
there's a real Lisp with Python-like surface syntax
https://rhombus-lang.org/
Anonymous
6/14/2025, 10:34:48 AM No.105589689
>>105589166
Alan Kay's OOP is a good idea, you are mistaking it with Enterprise POOP.
In some domains keeping data with functions is a better default (GUI creation for one). You just need to stay away from the dumb parts of OOP (inheritance chains, state mutation outside of object, over-engineered object compositions).
Anonymous
6/14/2025, 12:08:51 PM No.105590133
>>105589166
what about smalltalk THOUGH
Anonymous
6/14/2025, 2:09:29 PM No.105590864
>>105589400
When it comes to "OOP bad" people, there are the people that go "Classes and exceptions are bad because of the mutation and lack of type safety - use pure functions and use monadic error handling," and there are the people that go "They're bad because they're complex - we must retvrn to using structs and procedures and manual error code checking like in C."
Replies: >>105590995 >>105591438
Anonymous
6/14/2025, 2:36:05 PM No.105590995
>>105590864
But even with the former people, many things in Common Lisp do use CLOS under the hood anyway, and you can always minimise this my e.g. defining classes which can only be read but not modified after being constructed, so this is quite well handled in Lisp.
Replies: >>105592011
Anonymous
6/14/2025, 3:08:48 PM No.105591166
I'm a newbie to CL, but something wild I just did with CLOS was to use multiple inheritance to make hunchentoot (an HTTP server) and hunchensocket (a WebSocket server) work on the same port. Somehow, it magically worked.
(defclass super-acceptor (hunchensocket:websocket-acceptor easy-routes:easy-routes-acceptor)
()
(:documentation "Combine websocket-acceptor and easy-routes-acceptor."))


;; It's a shame this isn't properly documented.
;; https://github.com/joaotavora/hunchensocket/issues/14
Replies: >>105605912
Anonymous
6/14/2025, 3:18:37 PM No.105591233
Something else I like about CLOS is defgeneric and defmethod. Having programmed in Julia before playing with CL more seriously, I already had a feel for how to use this feature, because in Julia, every function is defgeneric by default.
https://lispcookbook.github.io/cl-cookbook/clos.html#generic-functions-defgeneric-defmethod
https://lispcookbook.github.io/cl-cookbook/clos.html#multimethods
Replies: >>105591326
Anonymous
6/14/2025, 3:34:38 PM No.105591326
>>105591233
CLOS is definitely multiple inheritance and polymorphism done well (as opposed to some other languages)
It always amazes me when I remember we had great ideas all the way back in the 70s and 80s and somehow we wound up with pure slop being mainstream instead. It feels like we've gone backwards.
Anonymous
6/14/2025, 3:51:51 PM No.105591438
>>105590864
oop bad people are plt illiterates.
Replies: >>105591535
Anonymous
6/14/2025, 4:03:28 PM No.105591535
>>105591438
There are times when OO can get awkward, but having tools like multimethods available lets you work around the awkwardness. and get back to something simpler.
Anonymous
6/14/2025, 4:49:50 PM No.105591860
1714067668301204
1714067668301204
md5: edb88150c5f35207d7c2bbed2707ddea๐Ÿ”
>>105584224
>lispsisters, i finally awakened and sort of understand macros (not really) but they are cool
>any racketchad could tell me if its good or not? thanks in advance
i don't have racket installed but the if/null part could be rewritten like:

(define-syntax define-and-provide-parameters-with-contracts
(syntax-rules ()
[(_ ([name val guard] ...))
(begin
(define name (make-parameter val #f)) ...
(provide (contract-out [name (->* () (guard) (or/c guard void?))] ...)))]
[(_ ([name val guard . (converter . rest))] ...))
(begin
(define name (make-parameter val converter)) ...
(provide (contract-out [name (->* () (guard) (or/c guard void?))] ...)))]))

in this case (converter . rest) doesn't do anything ([name val guard converter] would do the same thing) but maybe you want to process rest later. if you're curious you can car/cdr recurse on lists in macros just like functions:

(define-syntax m
(syntax-rules ()
[(_ ())
0]
[(_ (a . b))
(+ a (m b))]))
Anonymous
6/14/2025, 5:10:59 PM No.105592011
made a "person generator" for a govt api in guile scheme.
It generates a JSON in the format the government API uses. People and geographic names are generated using markov chain grammars.

(define grammar-name
;; Rules for name formation
'((name name 0.1)
(name surname 0.85)
(name article 0.05)
(surname surname 0.45)
(surname article 0.05)
(article surname 1.0)
(surname end 0.50)
(end end 1.0)))

(define (select-weighted choices)
;; CHOICES is a list of the form ((value . probability) ...)
(let* ((sum (apply + 0.0 (map cadr choices)))
(r (random sum)))
(let loop ((choices choices)
(r r))
(let ((prob (cadar choices))
(val (caar choices)))
(if (<= r prob)
val
(loop (cdr choices) (- r prob)))))))

(define (next-state from grammar)
;; Selects the next state from the list GRAMMAR starting from FROM.
;; Grammar is a list of lists of the form ((FROM TO PROB) ...)
(let* ((possible-transitions (possible-states from grammar))
(choices (map cdr possible-transitions)))
(select-weighted choices)
))

(define (generate-name max-len init pick-word grammar)
;; Generates generic names based on GRAMMAR and the initial state INIT.
;; pick-word accepts one argument, usually the current state.
(define (end? st words)
;; Auxiliary function to determine the end condition.
(or (equal? 'end st)
(= (length words) max-len)))
;; Accumulates words based on the rules and the termination function.
(let loop ((state init)
(words '()))
(if (end? state words)
words
(let ((word (pick-word state))
(next-state (next-state state grammar)))
(loop next-state (cons word words))))))


FIle has ~1k lines but it is meant to be a single script so it has a bunch of hard coded data and names in several large lists.
>>105590995
>many things
including the entire language.
Replies: >>105592031 >>105592107
Anonymous
6/14/2025, 5:13:35 PM No.105592031
>>105592011
https://bcadastros.serpro.gov.br/documentacao/cadastro_pf/#dominio-sexo-pessoa-fisica
Meant to generate this bunch of shit. Scheme's composability and macros really help with this.
Replies: >>105592107
Anonymous
6/14/2025, 5:22:55 PM No.105592107
Screenshot from 2025-06-08 11-24-38
Screenshot from 2025-06-08 11-24-38
md5: 9c33b70ae55b4c5ca59d9eddc59dbcd7๐Ÿ”
>>105592031
>>105592011
Pic is some of the tabulated results of 10k runs of female names with max-len 4.

I wish there was a dataset for full names of my locale so I could train the actual name frequency to represent the population, but there are only lists with popular names or the official data with just firstname by number.

As it stands names are sampled uniformly from a sexp but the word class (first name, surname, article ...) have certain probabilities I made up.
Replies: >>105592135
Anonymous
6/14/2025, 5:26:10 PM No.105592135
Screenshot from 2025-06-14 12-20-26
Screenshot from 2025-06-14 12-20-26
md5: 8401fb6021382c9b056121a66ba688ff๐Ÿ”
>>105592107
Actual fucking pick jesus christ.
Replies: >>105594856 >>105606384
Anonymous
6/14/2025, 6:14:05 PM No.105592582
do you guys use parinfer? i really like it but it gets annoying a lot
Replies: >>105592812 >>105592860 >>105612407 >>105612586 >>105616266
Anonymous
6/14/2025, 6:42:03 PM No.105592812
>>105592582
i find it gets in the way more than it helps when i'm cutting+pasting chunks of code
it's cool otherwise
Anonymous
6/14/2025, 6:46:16 PM No.105592860
>>105592582
Paredit gang here. Just disable it for m-: and the minibar
Anonymous
6/14/2025, 7:19:52 PM No.105593150
For some reason I keep forgetting about define-modify-macro. I only remember it after I've typed out a bunch of tedious modifications that the macro makes much less tedious.
Anonymous
6/14/2025, 8:02:40 PM No.105593463
are there any alternative systems for polymorphism for guile besides goops? I like how rust does it with traits better than oop
Replies: >>105594828
Anonymous
6/14/2025, 10:55:47 PM No.105594828
>>105593463
This is filed inside my mind as "weird semi-schizo probably-unusable stuff" and I'm not sure how it is compares with typeclasses/traits or Guile's goops, so beware:
https://www.tohoyn.fi/theme-d/
Anonymous
6/14/2025, 10:58:18 PM No.105594856
>>105592135
I don't understand why people like relative line numbers.
Replies: >>105595362 >>105595432 >>105596043
Anonymous
6/14/2025, 11:48:48 PM No.105595362
>>105594856
extremely useful if you use vim bindings
Replies: >>105595378 >>105595957
Anonymous
6/14/2025, 11:50:12 PM No.105595378
>>105595362
Why would I use vim bindings?
Replies: >>105595574
Anonymous
6/14/2025, 11:54:16 PM No.105595411
1737265149184315
1737265149184315
md5: 93d5ffe91e279623c74e2430fd4b6422๐Ÿ”
I just ragequit Guix, I'm too much of a dumbfuck to use it. Couldn't manage to make a config where the default linux kernel and nvidia drivers didn't cause a blackscreen.
The worst part is having to wait shit to compile just to see another black screen.
Replies: >>105596059 >>105596427 >>105596896
Anonymous
6/14/2025, 11:57:15 PM No.105595432
>>105594856
It's for people who can't subtract 6521 from 6535, or people who simply refuse to type :6521,6535s despite having to type :-14,.s anyway. It's all very complicated you see.
Replies: >>105595460
Anonymous
6/14/2025, 11:59:37 PM No.105595460
>>105595432
>despite having to type :-14,.s anyway
Wow, vim is worse than I thought.
Replies: >>105595509
Anonymous
6/15/2025, 12:03:43 AM No.105595509
>>105595460
Indide it is

Oops, :%s/\<Indide\>/Indeed/g
>Indeed it is
Replies: >>105595541
Anonymous
6/15/2025, 12:06:29 AM No.105595531
>>105581689 (OP)
Are there any statically typed Lisps with generics and interfaces/traits? I want to see what the syntax looks like.
Replies: >>105595603 >>105596394
Anonymous
6/15/2025, 12:07:29 AM No.105595541
1738832815060724
1738832815060724
md5: 4249d062eef966d415b81dd7f0544ec5๐Ÿ”
>>105595509
Anonymous
6/15/2025, 12:11:17 AM No.105595574
>>105595378
I like vim bindings in my web browser. Using hjkl to navigate pages is pretty comfy since they're right next to my track point.
Anonymous
6/15/2025, 12:14:43 AM No.105595603
>>105595531
Some links on this page may be useful:
https://wiki.haskell.org/Haskell_Lisp
Anonymous
6/15/2025, 12:17:24 AM No.105595628
>>105586539
>There is really no reason for anything beyond C and lisp to exist
There's no reason for C to exist either. All it would take is a proper statically typed Scheme without a GC. Preferably one that is actually designed as a system programming language, and not just "Scheme but less features" like pre-scheme or "Scheme but C syntax" like cakelisp. Naughty Dog's GOAL/GOOL was a good example, it compiled into PS2 machine code, it's a shame that it's proprietary.

If only some of you freaks would accept that sometimes dynamic typing and GC doesn't make sense, then maybe we might have a chance at an actually good system Lisp. I've seen CL people arguing that there's nothing wrong with a GC in an embedded system...
Replies: >>105595679 >>105595953 >>105596608 >>105596743 >>105603552
Anonymous
6/15/2025, 12:25:08 AM No.105595679
>>105595628
Well until that materializes C will continue to be used.
Replies: >>105595954
Anonymous
6/15/2025, 12:32:10 AM No.105595739
>>105589132
>>105589296
Some of the core concepts of OOP aren't bad. It's all the other stuff around it that makes me want to vomit. Inheritance is a good example, it's very often the wrong abstraction.
Replies: >>105596061 >>105596143
Anonymous
6/15/2025, 12:58:27 AM No.105595953
>>105595628
>ll it would take is a proper statically typed Scheme without a GC.
so C?
Replies: >>105595994
Anonymous
6/15/2025, 12:58:56 AM No.105595954
>>105595679
Unfortunately.
Anonymous
6/15/2025, 12:59:28 AM No.105595957
>>105595362
C-u <num> C-n or C-p
Anonymous
6/15/2025, 1:04:15 AM No.105595994
>>105595953
>Implying that C is a statically typed Scheme
Anonymous
6/15/2025, 1:10:55 AM No.105596043
>>105594856
Relative line numbers gives you targeting for modal editing, because a lot of commands can take a numeric prefix. evil and meow users can benefit from this.
Anonymous
6/15/2025, 1:12:55 AM No.105596059
>>105595411
This gonna be me tomorrow kek.
Anonymous
6/15/2025, 1:13:09 AM No.105596061
>>105595739
Inheritance is fixed by having multiple inheritance.
I will not elaborate.
Replies: >>105596143 >>105596215
Anonymous
6/15/2025, 1:25:30 AM No.105596143
>>105595739
>>105596061
https://harmful.cat-v.org/software/OO_programming/
Anonymous
6/15/2025, 1:35:17 AM No.105596215
>>105596061
>by having multiple inheritance
Ever heard of the diamond problem with multiple inheritance? The entire concept is literally broken, it doesn't fix anything.
Replies: >>105596258 >>105596269
Anonymous
6/15/2025, 1:45:22 AM No.105596258
c3
c3
md5: 8af1a879546571ef5ac8b705786efec6๐Ÿ”
>>105596215
Solutions have been found.
https://metacpan.org/pod/Algorithm::C3
Anonymous
6/15/2025, 1:47:01 AM No.105596269
>>105596215
CL doesn't have that problem because of method combination.
>imagine having methods inside classes lmao

Guile's insane shebang
#!/pee/guile
!#

breaks emacs file local variables, is it possible still to use them without putting them at the bottom? Maybe tell emacs to look in the 3rd line instead of the 2nd.
Anonymous
6/15/2025, 1:47:12 AM No.105596270
>>105587583
Why would you even use Termux???
Replies: >>105627088
Anonymous
6/15/2025, 2:05:51 AM No.105596391
Is this the best org-mode parser avaialble for CL? I'm hoping for something newer and more maintained.
https://github.com/deepfire/cl-org-mode
Replies: >>105596502
Anonymous
6/15/2025, 2:06:23 AM No.105596394
>>105595531
>Lisp with generics
You can literally implement parametric polymorphism with macros.
A generic type is nothing more than a function that takes types as arguments and returns a concrete implementation. In Lisp syntax that would look like (hashmap A B), where A and B are types.
Make (hashmap A B) into a macro that first checks if the environment already has a "hashmap:A+B" symbol. If it's there then return the symbol. If not then expand a new concrete implementation of (hashmap A B), add the new symbol to the environment, and then return the symbol.

Very simplistic explanation. You might want to add a few checks here and there, but that's basically how generic types work with monomorphization.
Like always there's nothing that Lisp macros can't do. The surprising thing is the fact that other languages need complicated compiler magic for this.
Anonymous
6/15/2025, 2:10:50 AM No.105596427
>>105595411
Some anon posted this config for Nvidia here:
https://desuarchive.org/g/thread/105082951/#105216737
Replies: >>105596616
Anonymous
6/15/2025, 2:24:33 AM No.105596502
>>105596391
There's an older library with the exact same name.
https://gitlab.common-lisp.net/cl-org-mode/cl-org-mode
It was written by a different person, and the two code bases look to have been developed independently of each other.
https://github.com/deepfire/cl-org-mode/issues/6
The (relatively) new one seems technically superior.

Unfortunately, the old one is the one in quicklisp and linked to by https://orgmode.org/tools.html .
Anonymous
6/15/2025, 2:44:41 AM No.105596608
>>105595628
>There's no reason for C to exist either
Ah but there is. C has stuck around so long because coding in assembly was pretty awful. C is a useful virus since it's so easy to port to new hardware. It's the only useful thing to come out of "worse is better". Instead of writing a new systems language to replace it we're better off to just continue using it and having something better on top of it for most everything that isn't interacting directly with the hardware. A modern lisp machine would be pretty easy to create with a small C core to deal with the hardware. Basically, what emacs already is but for the entire OS.

If we lived in a sane world we would have already had something like this a long time ago. A small micro-kernel in C where drivers were able to be dynamically loaded and unloaded at run time and wouldn't cause issues in the core of the kernel. Then on top of that we'd have an OS written in a scripting language like Scheme or Common lisp where you could modify anything in real time. There were several attempts at making something like that but they were all killed off over the years in favor of UNIX and Microsoft's various OSs.

Now of course we could replace C with something new and "better". But we have so much legacy shit now that we're going to have to deal with C in the future anyway. The real mistakes were things like C++ and later shit like Rust. Which have brought zero real improvements but have only served to make compiling and running software a huge pain in the ass. C++ is horrible for well known reasons and Rust requires having what amounts to a server farm to push updates. Never mind the fact that it pulls random untrusted code from all over the internet at compile time. The only reason I use it is to compile Firefox and that's always a pain. There is NO excuse for why I need to allocate 16+GB of RAM and wait nearly an hour to compile the Rust portion of the browser engine. It's so horrible and obsoleted many systems for no reason
Replies: >>105596864 >>105596945 >>105650671
Anonymous
6/15/2025, 2:45:42 AM No.105596616
>>105596427
I will... try again tomorrow...
Hopefully someone who uses Guix will be online at the time to read my depressionposting after the inevitable black screen.
Replies: >>105596714
Anonymous
6/15/2025, 3:03:47 AM No.105596714
>>105596616
I haven't tried installing it on a system that uses Nvidia drivers. I got tired to maintaining the last system that uses an Nvidia GPU a few years ago so I retired it. It now runs an old version of Windows and lives in an arcade cabinet.

You've stumbled upon why I dislike using Guix as the entire OS. It's a huge pain when it doesn't work and the community will refuse to help you at all. You'll just have to continue fucking around with your config until it magically boots. Perhaps try with the communities cloned/free drivers first before attempting to get the good ones working. On my system with an AMD card this wasn't really an issue and it worked right away. But figuring out how to get the system to stop pulling in stuff like Rust for the log-in manager was a huge pain. I didn't want display manager at all. But everyone in the community is gung-ho on having that and stuff like wayland. Which is fine for them but it really sucks when you're attempting to do things they aren't.

I also never figured out how to get it to properly set-up FDE without prompting for password twice at boot.
Replies: >>105604800
Anonymous
6/15/2025, 3:09:52 AM No.105596743
Keira_&amp;_Daxter
Keira_&amp;_Daxter
md5: 31b8b086be6be215ca270fdcfca0155d๐Ÿ”
>>105595628
>Naughty Dog's GOAL/GOOL was a good example, it compiled into PS2 machine code, it's a shame that it's proprietary.
Git gud
https://opengoal.dev
https://github.com/open-goal/jak-project
Replies: >>105596943
Anonymous
6/15/2025, 3:29:19 AM No.105596864
>>105596608
>C is a useful virus since it's so easy to port to new hardware
Both Lisp and Forth are much easier to port to new hardware. Anyone can write a Forth in assembly in less than a day and bring all their Forth code with it. Good luck writing a new C compiler or adding a new LLVM backend in that same amount of time.
It has always been a myth that C is the easiest language to port, and that myth continues being propagated by uneducated C programmers with no proper knowledge of either Lisp or Forth.
Replies: >>105596911 >>105596978
Anonymous
6/15/2025, 3:35:19 AM No.105596896
>>105595411
if you set up the channel for nonguix you won't have to compile the kernel yourself
Anonymous
6/15/2025, 3:36:43 AM No.105596911
>>105596864
Yeah yeah yeah Forth and Lisp are great. That's why no one has written a kernel in them. Look anon, I don't really care what you think the best language is. No matter what you write you OS in you'll need a C compiler on it if you want to run applications written since the 1960s. I don't like C either. But it's certainly better than nothing. There are reasons why things like emacs have a C core instead of being written 100% in lisp directly.
Replies: >>105597015
Anonymous
6/15/2025, 3:43:34 AM No.105596943
>>105596743
>https://opengoal.dev
As the website mentions, it's only an attempt at mimicking the original language, there's no actual GOAL code in there.
We don't know if openGOAL even looks like the original GOAL. It was compiled to machine code so there's no Lisp source code in the games, it's just PS2 instructions.

The actual original GOAL is still proprietary.
Anonymous
6/15/2025, 3:44:04 AM No.105596945
>>105596608
> compile the Rust portion of the browser engine
Rust is a scam.
Yes, rust could, in theory, emit OS-implementation capable code, but it would all have to be unsafe since the OS deals with DMA, volatile stuff, TLBs, and gives structure to arbirary regions of memory.

A good solution was guile, where you can write C code and just embed high-level guile code in the middle of it for functions that donโ€™t need to mess around on the hardware.
Anonymous
6/15/2025, 3:51:20 AM No.105596978
>>105596864
Back in the early days of unix, cc was free and quite approachable, code wise.
C++ emitted C code (cfront) if you wanted that bullshit.
Linux was going to switch the kernel and use pcc, which got pretty far, but got killed for political reasons in the 9th hour. That was just replacing one C compiler with anotherโ€ฆ
Replacing C with rust should have triggered an immediate drop kick to the face based on the standards that were previously set.
Replies: >>105597091
Anonymous
6/15/2025, 3:54:46 AM No.105596997
>>105581689 (OP)
as an hpcfag is there any reason for me to learn lisp or is it really just a lain meme? i mainly work with fortran, python, and c, but i've been seeing more and more functional programming crop up in comp chem algorithms
Replies: >>105597096 >>105597122
Anonymous
6/15/2025, 3:57:33 AM No.105597015
>>105596911
>That's why no one has written a kernel in them
Only if you ignore those few times where both were used on space missions, running the software on the spacecraft.
You might have missed all the kernels written in Forth and Lisp, because they're more commonly found on embedded systems, like those found on spacecraft, rather than consumer desktops.
We have better things to do than trying to replace Linux with yet another Unix-like but now written in Lisp.

There's also a few consumer operating systems written in Lisp by the way, including Mezzano written in Common Lisp.

>There are reasons why things like emacs have a C core
Because emacs was meant to run on top of Unix, an operating system written in C. That's pretty much the whole reason why it's written in C.
If Unix was written in Fortran then emacs would have been written in Fortran too.

There's nothing special about C as a language here. It's just for compatibility with the OS.
Replies: >>105597065
Anonymous
6/15/2025, 4:04:02 AM No.105597060
>>105589066
There is an emacs implementation that uses guile.
That said, as a young fella, I used to be fascinated with threads, and now I just donโ€™t do it anymore.
Iโ€™ll run multiple processes and let them communicate only when absolutely necessary (if that :-)
I also havenโ€™t used malloc in ages, except sometimes to allocate one or two big static buffers.
I like the stack, and it helps you become less wasteful of touched memory.
Anonymous
6/15/2025, 4:04:39 AM No.105597065
>>105597015
>Only if you ignore those few times where both were used on space missions, running the software on the spacecraft.
You know what else went into space? MS-DOS.
Replies: >>105597113 >>105597157
Anonymous
6/15/2025, 4:06:55 AM No.105597087
>>105589132
I also think OOP is nonsense after doing it in C++ for 30 years. Again, itโ€™s one of those things that I thought was cool, but now IDGAF.
Iโ€™ve worked on multimillion line C++ code bases where you canโ€™t find the code that does anything.
Anonymous
6/15/2025, 4:07:25 AM No.105597091
>>105596978
>Back in the early days of unix, cc was free and quite approachable, code wise.
Nowadays a C compiler is a monstrous abomination. If you often compile C or C++ code with Clang, just know that the LLVM backend is a few million lines of C++. Porting this to run on a new architecture would be a nightmare, adding a new backend isn't easy either with their always outdated documentation that breaks every 6 months.
>Replacing C with rust should have triggered an immediate drop kick to the face
Agreed. Unfortunately we're now living in a world where corporate management is making engineering decisions instead of actual engineers.
ไธญๅ‡บใ—
6/15/2025, 4:07:45 AM No.105597096
MLCC
MLCC
md5: 928a4bf31a8ee6d0bd09c7bde632337f๐Ÿ”
>>105596997
HPC? GNU Guix.
https://hpc.guix.info
Replies: >>105601008
Anonymous
6/15/2025, 4:10:06 AM No.105597113
>>105597065
I used xscheme from david betz on msdos for practical applications. One was cheating in video games like tradewars.
Anonymous
6/15/2025, 4:10:54 AM No.105597122
>>105596997
>hpc
>i've been seeing more and more functional programming crop up in comp chem algorithms
I don't think Lisp has anything special for HPC, and you don't have to use Lisp to learn functional programming (you could use OCaml, for instance).
Anonymous
6/15/2025, 4:14:27 AM No.105597157
>>105597065
>MS-DOS
Written in assembly. I don't get what your point was, even pure assembly is better than C for writing the firmware of a spacecraft.
Lisp and Forth are just small enough that it's possible to fit the whole interpreter into a spacecraft, then the code can be dynamically updated from Earth without having to send someone to space just to fix a stupid segfault. Those dynamic updates have happened already by the way, it's not just a hypothetical.
Replies: >>105597176
Anonymous
6/15/2025, 4:16:41 AM No.105597176
>>105597157
>I don't get what your point was
My point was I was talking about writing a general purpose OS that could run legacy applications on the desktop with a GUI that could be modified in real time like emacs and you started ranting about embedded systems and Forth for some reason.

By the way space isn't real so I don't really care what they claim to have sent out into it when it's impossible to go through the dome and they never send back anything but obvious CGI
Replies: >>105597224 >>105627088
Anonymous
6/15/2025, 4:24:25 AM No.105597224
>>105597176
>By the way space isn't real
>it's impossible to go through the dome
>obvious CGI
Ah, so your opinion can be immediately discarded because you're an actual imbecile. Thank you for informing us that you're cognitively challenged.

I expected better from a fellow Lisp user.
Anonymous
6/15/2025, 4:30:41 AM No.105597268
dmr-jmc
dmr-jmc
md5: da2646bf0bb3df4b7172808cfb180316๐Ÿ”
>no C is better!
>no LISP is better!
Holy autism. Meanwhile chads John McCarthy and Dennis Ritchie:
>John McCarthy: Learn some programming languages โ€” at least C, Lisp and Prolog.
https://www-formal.stanford.edu/jmc/whatisai.pdf
>Dennis Ritchie: I have to admire languages like Lisp.
http://www.gotw.ca/publications/c_family_interview.htm
Replies: >>105597375 >>105597390 >>105598527
Anonymous
6/15/2025, 4:32:35 AM No.105597279
Can anyone make heads or tails of this paper: https://people.dm.unipi.it/berardu/Art/1992Self-interpreter/efficient.pdf

It claims to create a lambda calculus self interpreter E = 1 <K,S,C>
Where 1 is church encoded and <...> is a church tuple.
But I can't get it to work and feel I'm missing something major here. It ALMOST makes sense, but I'm not understanding how this thing is supposed to recurse.
Replies: >>105598486
Anonymous
6/15/2025, 4:47:16 AM No.105597375
>>105597268
Humans are a very tribal animal.
Anonymous
6/15/2025, 4:49:21 AM No.105597390
>>105597268
The cnile in the thread doesn't believe space is real. Clearly C has already done some serious brain damage, can't recommend.
Replies: >>105597763
Anonymous
6/15/2025, 5:52:43 AM No.105597763
>>105597390
I code in Common Lisp, and I don't think space is real either. At the very least, NASA is telling a fuckton of lies.

https://archive.4plebs.org/pol/thread/346281170/
Replies: >>105597947 >>105600713 >>105623130
Anonymous
6/15/2025, 6:24:52 AM No.105597947
>>105597763
We know it's real because it looks so fake anon
Anonymous
6/15/2025, 8:29:39 AM No.105598486
>>105597279
I figured it out, I wasn't encoding the arguments right.
Anonymous
6/15/2025, 8:38:49 AM No.105598527
>>105597268
I needs those glasses
Anonymous
6/15/2025, 9:39:20 AM No.105598828
my contact with lisp has just been with emacs lisp and then guile scheme because of guix and sicp. Is common lisp going to be mindblowing different?
Replies: >>105600815
Anonymous
6/15/2025, 10:14:01 AM No.105599030
umaruw_thumb.jpg
umaruw_thumb.jpg
md5: 57b8ba3b6b0af7075ea8149490d6a5d8๐Ÿ”
#1 on hn right now: https://www.dreamsongs.com/ArtOfLisp.html
Replies: >>105600207
Anonymous
6/15/2025, 1:42:23 PM No.105600097
Smalltalk is my favorite lisp.
Replies: >>105601867 >>105614087
Anonymous
6/15/2025, 2:05:02 PM No.105600207
>>105599030
thanks for the link, didn't know that one
that ending was a downer though
Anonymous
6/15/2025, 2:19:37 PM No.105600280
I think the reason I like Lisp so much is also in large part the community (despite the fact some people in this thread are clearly braindead). I don't know whether it's because Lisp is a relatively unemployable language these days, or whether it's because it requires a degree of appreciation of intellectual and artistic value for its own sake, but I find that the Lisp community is a rarity nowadays in that it is one of the only programming circles which is free of talk about jobs and money and corporate buzzwords and 'best practices' and so on, and caters almost entirely to people who program in Lisp because they enjoy it, and for no other reason than that. It leaves you with a certain sense of optimism, like taking a deep breath of fresh air.
Anonymous
6/15/2025, 3:25:01 PM No.105600713
>>105597763
>Common Lisp
>/pol/ link
Common Lisp is the Lisp-family's C++, reading the 1000+ page spec is guaranteed to give you schizophrenia. So that checks out, just like the cnile you have serious brain damage too.
Replies: >>105602622
Anonymous
6/15/2025, 3:39:48 PM No.105600815
>>105598828
>Is common lisp going to be mindblowing different?
Scheme is the C of the Lisp languages, while Common Lisp is the C++. It's going to be different, but only in the sense that it's enormously bloated compared to most other Lisp implementations.
Replies: >>105601041
Anonymous
6/15/2025, 4:05:42 PM No.105601008
Screenshot_20250615_100449
Screenshot_20250615_100449
md5: 3f421cc584f1de45e87c6a15ff531bfa๐Ÿ”
>>105597096
thanks, anon. will look into this. anything else i should know?
Anonymous
6/15/2025, 4:10:55 PM No.105601041
>>105600815
>it's enormously bloated compared to most other Lisp implementations
That hasn't been true in decades.
Replies: >>105601135
Anonymous
6/15/2025, 4:24:43 PM No.105601135
>>105601041
>Implying that a 1000 page specification isn't bloated
C++ is commonly considered a bloated language, and it too has a 1000 page specification. In comparison, Scheme is less than 100 pages.
Replies: >>105601147
Anonymous
6/15/2025, 4:26:07 PM No.105601147
>>105601135
>specification
Yeah sure, core scheme is small.
But look at your average scheme IMPLEMENTATION, it's gonna have a fuckton of libraries/modules to make it usable.
Anonymous
6/15/2025, 6:07:29 PM No.105601867
>>105600097
I wish LISP had a smalltalk-esque IDE.
Replies: >>105601908
Anonymous
6/15/2025, 6:13:05 PM No.105601908
>>105601867
>interlisp
Anonymous
6/15/2025, 6:49:05 PM No.105602214
hide every jewish post
Anonymous
6/15/2025, 7:36:02 PM No.105602622
>>105600713
>cnile
The ranting guy that argues for no reason also name calls and repeats forced memes. Not surprised honestly.

Why do these people come here then try so hard to desperately fit-in on an anonymous basket weaving forum?
Anonymous
6/15/2025, 8:05:45 PM No.105602882
>tfw just sent the guix time-machine command for my nvidia system
Wish me luck, /g/uixers.
Replies: >>105603021
Anonymous
6/15/2025, 8:24:02 PM No.105603021
>>105602882
>no code or module for module (nongnu packages game-development)
fug
Replies: >>105603573
Anonymous
6/15/2025, 8:26:35 PM No.105603038
Okay I finally think I understand self evaluators and how the BLC self interpreter works.
The secret is that it consists of TWO PARTS, one is the interpreter itself, and the other is a COMPILER from lambda calculus into the internal language of the interpreter! Effectively it's not interpreting lambda calculus at all! It's interpreting a language encoded into lambda calculus and translating it into lambda calculus!
So a BLC interpreter is actually a machine code interpreter(the base executable written in C/CL/etc...) that's interpreting lambda calculus(the BLC self-interreter) that's interpreting the encoded lambda terms.

And now that that's clear the actual operation is dead simple, all it's doing is UNDOING the initial compilation of the lambda terms into the internal representation. So for example \x.x compiles into 0010(actually FFTF in combinators) and then the interpreter just has to take in values and undo the operation.

So all an interpreter is is a list of operations and a selector that picks the right one and applies it to the next incoming term. And since BLC uses logic combinators it's just a (cons (cons a b) (cons c d)) list where it takes in two bits of input, aplies them to the list to select an option, and then recurses and repeats with the next two bits!
Anonymous
6/15/2025, 9:17:34 PM No.105603497
Are there useful Lisp VM models in between "LispKit style SECD VM" and "basically just a bytecoded VM for some fantasy CPU"?

It seems like any time I try to aim for a point between those extremes the design always ends up in one of the two directions, with the dividing line being whether GC is implemented by the VM or by the code running in the VM.
Replies: >>105604069
Anonymous
6/15/2025, 9:22:42 PM No.105603552
>>105595628
>If only some of you freaks would accept that sometimes dynamic typing and GC doesn't make sense
I do accept that. But what can I, a single anon, do about it?
Anonymous
6/15/2025, 9:24:58 PM No.105603573
>>105603021
The unforseen consequences of time travel
Replies: >>105603614 >>105604075
Anonymous
6/15/2025, 9:30:37 PM No.105603614
>>105603573
Was I too impatient trying to do everything during install? Will it work if I just go through the install like normal first, and then do all the big changes?

Just finished writing openSUSE Tumbleweed to the USB...
Replies: >>105603937
Anonymous
6/15/2025, 10:08:40 PM No.105603937
>>105603614
What really matters is the commit you're using. Normally you do a "guix pull" first and then it should be fine. But if you're running off the installation medium, I'm not sure it does a pull before applying the config.
In the past whenever I've installed guix or nix I usually just go with a simple/default config for the initial build. Then once the system is up and running I do a pull and reconfigure my system properly.

Not sure how guix time machine factors into this though.
Replies: >>105604509
Anonymous
6/15/2025, 10:25:06 PM No.105604069
handwritten_example
handwritten_example
md5: 8bc5200ba984715466522b25102239d1๐Ÿ”
>>105603497
You could try out interaction combinators, you compute it basically using a stack and it handles GC by itself, but it's entirely parallel and order agnotic so you can get some of the speedup you'd get from hardwiring instructions into the VM itself.
Also if you look up HVM you can see a version that hardwires a few more instructions like arithmatic and environments. So you can pretty easily start out completely vanilla and then arbitrarily keep adding more and more hardwired shortcuts without really changing the structure of the VM.
Replies: >>105604250
Anonymous
6/15/2025, 10:25:44 PM No.105604075
>>105603573
if you time traveled wouldn't they be foreseen thoughbeit
Anonymous
6/15/2025, 10:48:32 PM No.105604250
>>105604069
Why are there 3 HVMs?
Anonymous
6/15/2025, 11:14:11 PM No.105604509
>>105603937
Tried again, and it seems I was a bit impatient. I'm using the latest SystemCrafter's Guix image from GitHub which is a little old now. Currently doing the first git pull. Will try Nvidia shit after first (explicit) system reconfigure.
Replies: >>105605820
Anonymous
6/15/2025, 11:47:30 PM No.105604800
>>105596714
look for extra-initrd in the manual
Anonymous
6/16/2025, 12:28:28 AM No.105605177
Have any of you encountered a lisp programmer who didn't indent their code?
Replies: >>105605215 >>105605516
Anonymous
6/16/2025, 12:32:25 AM No.105605215
>>105605177
This is only acceptable if they also type in all caps and hard break their code into 16x64 screens like a Forth programmer.
Replies: >>105605396
Anonymous
6/16/2025, 12:54:39 AM No.105605396
>>105605215
It was written by a philosophy major zoomer who didn't know any better. It's kinda crazy, because he's an Emacs lover, and Emacs practically indents lisp code for you, but a lot of his code is flush to the left.
Replies: >>105609886
Anonymous
6/16/2025, 1:10:42 AM No.105605516
Untitled
Untitled
md5: 80d99ef8c0fcf64abddf9eacb3baf318๐Ÿ”
>>105605177
I've only seen questionable indents in old programs and books from the 70s/early 80s desu
Replies: >>105605795 >>105606781
Anonymous
6/16/2025, 1:44:14 AM No.105605795
>>105605516
It's kinda wild that those lambda expressions are perfectly valid in elisp today.
Anonymous
6/16/2025, 1:47:08 AM No.105605820
>>105604509
The system reconfigure command is running with nvidia shit in the config bois! Although I'm doing this in a tty because gdm won't load after I updated the system. Uh, what are all these ATA bus errors? IO errors and corruption?

This is gonna be borked lmao. I'll try again tomorrow.
Anonymous
6/16/2025, 1:56:31 AM No.105605912
file
file
md5: 721effe42c43db18345e449bb976c239๐Ÿ”
>>105591166
Test out my websocket server.
Anonymous posting is allowed.
http://beastie.sdf.org:4200/
Replies: >>105608263 >>105614627
Anonymous
6/16/2025, 2:50:52 AM No.105606384
>>105592135
Is your theme ef-dream?
Replies: >>105609197
Anonymous
6/16/2025, 3:54:10 AM No.105606781
Screenshot_20231110-205824
Screenshot_20231110-205824
md5: 430c5555052cd85780caf2046bc84826๐Ÿ”
>>105605516
Or even the 60s lol
Anonymous
6/16/2025, 9:28:51 AM No.105608263
>>105605912
Both htmx and hunchensocket hide the websocket message handling loop from you, but it ended up working out well. In the past, when I'm responsible for the loops on both the client-side and server-side, there's policy I have to come up with on both ends on what the messages look like, but this is the first time those policy decisions have been made for me, and both ends have reasonable defaults.

One thing I've actually never done before now is send raw HTML through a websocket. In the past, I'd usually send JSON, but htmx wants HTML, and it has this smart feature called out-of-band swaps where it'll look at the id of the top-level elements you send it, and it'll replace those elements in the DOM. It works surprisingly well.
https://htmx.org/attributes/hx-swap-oob/

If anyone is doing web development with lisp, I recommend looking into htmx.
Replies: >>105608276
Anonymous
6/16/2025, 9:33:17 AM No.105608276
>>105608263
https://htmx.org/extensions/ws/

I had to hack it a tiny bit to make it work with hunchensocket. However, a pull request that fixes this just got merged, so the next release will work with hunchensocket just fine.
Anonymous
6/16/2025, 12:21:15 PM No.105609197
>>105606384
yes
Replies: >>105609237
Anonymous
6/16/2025, 12:31:47 PM No.105609237
fixes
fixes
md5: dc88fdfba720460c4b7a926ac3dc7558๐Ÿ”
>>105609197
ef-dream is one of my favorite themes from prot. When I'm in the mood for a light theme, I also use ef-reverie which is kinda like the light version of ef-dream in my mind.
Replies: >>105609248 >>105616162
Anonymous
6/16/2025, 12:33:52 PM No.105609248
>>105609237
My config is this:
;;; THEME
;; Selects a random theme
(defun random-choice (choices)
"Randomly return one element from the list CHOICES."
(nth (random (length choices)) choices))

(setq custom-safe-themes t)
(load-theme (random-choice (list 'ef-elea-dark 'tangotango
'ef-tritanopia-dark 'ef-dream
'ef-owl 'ef-arbutus
'ef-maris-dark 'ef-trio-dark)))
Replies: >>105609396
Anonymous
6/16/2025, 1:01:20 PM No.105609396
>>105609248
You can use seq-random-elt from seq.el
Replies: >>105609451 >>105609598
Anonymous
6/16/2025, 1:12:21 PM No.105609451
>>105609396
Not that anon, but I didn't know that existed either. Thanks for the tip.
Anonymous
6/16/2025, 1:37:20 PM No.105609598
>>105609396
thanks my bro, emacs seens to have everything. I just wish I it had (nuke-israel).
Replies: >>105609619
Anonymous
6/16/2025, 1:39:35 PM No.105609619
>>105609598
https://big-lies.org/nuke-lies/www.nukelies.com/forum/index.html
Anonymous
6/16/2025, 2:17:41 PM No.105609886
>>105605396
This guy is so junior.......
Anonymous
6/16/2025, 4:51:03 PM No.105611012
Is there a package for emacs that highlights 4chan post syntax (greentext, post numbers, spoilers)?
Replies: >>105611643 >>105614955
Anonymous
6/16/2025, 5:58:08 PM No.105611643
greentext
greentext
md5: 8c2ee728a08e511b2d4e5b1c26e72db6๐Ÿ”
>>105611012
I do greentext with just a function.
(defun greentext ()
"Highlight >greentext in current buffer."
(interactive)
(highlight-lines-matching-regexp "^\s*>" 'hi-green-b))


I use this greentext function in two places.
- org
- eww

Just run this function while viewing any buffer where you want greentext.
Anonymous
6/16/2025, 7:12:32 PM No.105612407
>>105592582
tried this after you said, it keeps fucking up the for and if statement somehow converting the bracket to the wrong one
Replies: >>105612586
Anonymous
6/16/2025, 7:30:14 PM No.105612586
>>105592582
>>105612407
Parinfer is broken and not being maintained. Doesn't serve much purpose imo. I just use electric pair, auto-indent, and lispy.
Once you memorize the movements you really don't need/want something like parinfer doing things by itself. Even auto indent occasionally fucks with me but at least it only alters whitespace so it's purely a cosmetic thing. I can't imagine how frustrating it would be if it was actually fucking with my code against my will.
Anonymous
6/16/2025, 9:50:47 PM No.105614087
GNU_Smalltalk
GNU_Smalltalk
md5: 336837bd452c431b8aa554eec6565ad3๐Ÿ”
>>105600097
My favorite Lisp is a Smalltalk.
Anonymous
6/16/2025, 10:52:28 PM No.105614627
invisible
invisible
md5: c209ed39388e9bc211bad7fed9a54e66๐Ÿ”
>>105605912
not only anon but invisible too?
Anonymous
6/16/2025, 11:10:42 PM No.105614764
>switch from gnome desktop to xfce for my Guix install due to issues with gdm
>errors out on building webkitgtk or something
>after several attempts just guix gc, pull, and start over
>try lxqt randomly
>is spending hours building every version of ghc known to man
>swear I saw this for my other tries too
Don't even know what the fuck is going on anymore.
Replies: >>105614861
Anonymous
6/16/2025, 11:24:54 PM No.105614861
>>105614764
>spending hours building
https://guix.gnu.org/manual/devel/en/html_node/Channels-with-Substitutes.html
Replies: >>105615174
Anonymous
6/16/2025, 11:25:19 PM No.105614867
1727026438089694
1727026438089694
md5: 1cdeb7b9e82c78c5f8a2edb2db57af9a๐Ÿ”
What are the performance characteristics of Lisp?
Replies: >>105621958
Anonymous
6/16/2025, 11:26:15 PM No.105614879
https://www.amazon.com/Introducing-Blockchain-Lisp-Implement-Blockchains/dp/1484269683

Nice book. Very direct.
Anonymous
6/16/2025, 11:36:34 PM No.105614955
>>105611012
Emacs 4chan client if you're retarded
https://github.com/ve-nt/q4
Replies: >>105633520
Anonymous
6/17/2025, 12:11:07 AM No.105615174
>>105614861
I'm using substitutes, or should be, but even then I have a 5900X, so it doesn't make sense why it should take this long. Even did the explicit system reconfigure thing (for nonguix) before all this and rebooting. I guess changing desktop is really intensive? Gdm was the thing that didn't start after updating last time, but none of the other alternative login managers had their "module" recognized from the ones I tried listed in the manual...

My head is just full of fuck. Hey, this shit isn't single-threaded only is it? Like Emacs? Oh, it just finished the ghc building bullshit. Hopefully progress.
Replies: >>105615199 >>105615240
Anonymous
6/17/2025, 12:14:29 AM No.105615199
>>105615174
>Hey, this shit isn't single-threaded only is it? Like Emacs?

You should be OK. (...but I don't know if guix takes advantage of this).
https://www.gnu.org/software/guile/manual/html_node/Threads.html
>Guile supports POSIX threads, unless it was configured with --without-threads or the host lacks POSIX thread support. When thread support is available, the threads feature is provided (see provided?).
Replies: >>105615240
Anonymous
6/17/2025, 12:19:09 AM No.105615240
>>105615199
>>105615174
I've had a similar issue, for me it was just the single threaded downloading, IE it downloads one file at a time, often with a surprising amount of latency, off of really slow servers, and this is interleaved with all the compilation and everything so it seems like it takes forever. In actuality if you downloaded everything first and then compiled everything after that you'd see like 99% of the time is the downloads.
And yeah a parallel downloader would be much faster in theory, but then again the servers are so crippling slow already that's probably a bad idea.

Really all this is caused by them hashing on inputs instead of results. If they'd done it the other way around they could have used peer to peer networks to massively accelerate everything.
The reason they did it is stupid too, like it'd take slightly more effort or some shit or be a little slower, meanwhile their method is crippling the entire ecosystem and costing them shitloads of hosting fees.
Replies: >>105615389 >>105615460 >>105616213
Anonymous
6/17/2025, 12:38:33 AM No.105615389
(((TR-3B)))
(((TR-3B)))
md5: ec04175cf876c500f68738e54987cd6c๐Ÿ”
>>105615240
>really slow servers
https://libreplanet.org/wiki/Group:Guix/Mirrors
There's also this new substitute server. I use it and it's very good.
https://cuirass.genenetwork.org
https://git.rekahsoft.ca/rekahsoft/guix-north-america/
>peer to peer networks
>>Decentralized substitute distribution with ERIS
https://issues.guix.gnu.org/52555
Replies: >>105616508
Anonymous
6/17/2025, 12:48:48 AM No.105615460
>>105615240
I mean guix pull doesn't take too long for me. It's the system reconfigure which is taking ages. Maybe it's because I installed from an old image, but I already did an initial guix pull and system reconfigure (explicit) once everything was installed. That gave me kernel 6.14 I think? And once I booted into that gdm didn't load, tty pull configure gc etc, and now changing desktop from gnome to lxqt because why not, and there's so much building lmao.

I'd make an install image from another system running guix, but the last time I tried 'guix system image' it ended up in my store and couldn't be deleted I think. Don't want to shit up a working system.

Anyway, at least it's still making progress as we speak. Don't know what to expect now though kek.
Replies: >>105615988
Anonymous
6/17/2025, 2:03:51 AM No.105615988
>>105615460
Excuse my retardation, yeah no the download part of reconfigure goes fast for me. Just a lot of building after. Think around 1.5 GB was downloaded. Anyway, the process errored out in the same place for the nth time. Some webkitgtk package, some oom happened, gdm failed to build... I dunno man.
Replies: >>105616035 >>105616213
Anonymous
6/17/2025, 2:10:51 AM No.105616035
>>105615988
>gdm failed to build
GDM sucks anyway.
Try another display manager.
https://guix.gnu.org/manual/devel/en/html_node/X-Window.html
Replies: >>105616396
Anonymous
6/17/2025, 2:18:52 AM No.105616094
does anyone here unironically use stumpwm? is it usable?
Replies: >>105616270
Anonymous
6/17/2025, 2:29:28 AM No.105616162
>>105609237
Is that the famous โ€œorg modeโ€?
Replies: >>105618710
Anonymous
6/17/2025, 2:37:47 AM No.105616213
>>105615988
gdm requires Rust. That's why it's slow as fuck to build.

>>105615240
The long term plan is p2p packages.
Replies: >>105616508
Anonymous
6/17/2025, 2:39:54 AM No.105616226
After installing guile and playing around with it, I noticed that it supports infinite digit precision math.
A lot of lisps seem to have done this, anyone know why?
Raku (perl6) was the only other language I rran across (besides dc / bc) that does this.
Replies: >>105616516
Anonymous
6/17/2025, 2:46:19 AM No.105616266
>>105592582
I manage my parens manually.
Only use elec-pair and this function.
(defun fly-high--match-paren (arg)
"Go to the matching paren if on a paren.
https://www.gnu.org/software/emacs/manual/html_node/efaq/Matching-parentheses.html
Alternative for `xah-goto-matching-bracket'"
(interactive "p")
(cond ((looking-at "\\s(") (forward-list 1))
((save-excursion
(backward-char)
(looking-at "\\s)"))
(backward-list 1))
((looking-at "\\s)")
(backward-list 1))
(t (ignore arg))))
Replies: >>105616438
Anonymous
6/17/2025, 2:46:55 AM No.105616270
>>105616094
I used it for a while years ago. It's pretty cool but at the end of the day it's just another tiling WM, albeit an above-average one.
I'd love a more traditional Lispy desktop but it seems like a futile effort these days, X is moribund and Wayland's security theater would severely limit what you can do.
Anonymous
6/17/2025, 3:04:15 AM No.105616396
>>105616035
Anything other than gdm is just an unbounded variable. Is '(service sddm-service-type)' not what you put under services? Even have '(delete gdm-service-type)' under modify-services.
Replies: >>105616567
Anonymous
6/17/2025, 3:10:36 AM No.105616438
>>105616266
>I manage my parens manually.
I'm kinda like you, but I will use paredit's functions without using paredit-mode sometimes. It's nice to do a tactical paredit-forward-slurp-sexp sometimes. Most of the time, I want paredit off, because ...it's a skill issue, but I get into weird states where I can't do what I want and the program structure is getting fucked up. Thank God for undo.
Anonymous
6/17/2025, 3:20:03 AM No.105616508
>>105616213
>>105615389
Notice how overcomplicated, slow, and difficult this is to implement because of the retarded input hashing. If they used output hashes it would be done in a week tops, not partially implemented 5 years in.
Anonymous
6/17/2025, 3:21:35 AM No.105616516
>>105616226
Lists lend themselves naturally to infinite precision. Also all lisps were written to heavily academic standards(even CL was mainly made to do academic scientific calculation) which appreciates/requires infinite precision bignums.
Anonymous
6/17/2025, 3:29:32 AM No.105616567
>>105616396
Strange. Here's a plasma + sddm config example, check if there's anything missing in your config
https://codeberg.org/guix/guix/src/branch/master/gnu/system/examples/plasma.tmpl#L56
Replies: >>105621573
Anonymous
6/17/2025, 7:44:31 AM No.105618211
idiot-complexity
idiot-complexity
md5: dcea125a5a65c9e87d88d03f45de1b64๐Ÿ”
>>105585525
>most people are too stupid to write code
Midwit take
It suggests low iq on your side to even think of that. Its like saying most poeple are to stupid to use a spoon. It sugests using a spoon is something you find difficult and great achievement.
Code is not high level math midwit. And code is esentially simple especially with a simple language like lisp. Midwits like you thats why gravitate to cpp rust or web dev with 10 frameworks.
Replies: >>105618593
Anonymous
6/17/2025, 8:49:40 AM No.105618593
>>105618211
>Its like saying most poeple are to stupid to use a spoon
The Japanese are correct when they praise grown gaijin for being able to use chopsticks and say basic words in their native language. They know the average person is fucking retarded.
>It sugests using a spoon is something you find difficult and great achievement.
No I find math and coding pretty easy. I'm just experienced enough to know that the average person is too stupid to figure out how to operate something like Windows 98. It's why they go
>Ohhh anon you're so good with computers!
when you run a script to automatically delete the spyware they've installed for the 100th time so they can get 2 cent coupons for shit they don't need from some scam plug-in in their web browser.

Of course. I haven't made my devotion to Stallman and lisp my entire identity. So I don't have any issue with pointing out how stupid most people are (you included). Just like I don't really care if I need to write something in C or any other language to get the job done without adding yet another dependency to an existing code base.
>You use frameworks
When I started frameworks didn't exist and shit like python was considered bloat. Speaking of dependencies I bet you're the type of person with over 9,000 packages loading at start-up in init.el aren't you?

No one is impressed that you learned emacs key bindings and wrote something that takes 9,000 seconds to evaluate in whatever lisp dialect. I like lisp. But I don't like most of the people that adore it. Since they're always smug retards about it.

If you think the average person should be anywhere near a keyboard you obviously haven't spent a lot of time around the average person. We ruined in the internet because we produced nigger technology like cell phones. Then allowed nigger technology access to the internet. Nigger technology doesn't do anything useful. It just allows dumb niggers to talk to other dumb niggers about dumb nigger shit.
Replies: >>105619310 >>105623018 >>105623372
Anonymous
6/17/2025, 9:08:32 AM No.105618710
fixes2
fixes2
md5: a35cdfd1f4224f7d19a9c3e258679a45๐Ÿ”
>>105616162
>Is that the famous โ€œorg modeโ€?
It is, but it won't look like that out of the box. The attached pic is how it looks in a plain vanilla unconfigured Emacs.
Replies: >>105618777
Anonymous
6/17/2025, 9:22:46 AM No.105618777
>>105618710
My first few years of really trying Emacs, vim was still my main editor which I used for coding, and I was using Emacs Live as my starter config.
https://github.com/overtone/emacs-live

I didn't know any Elisp back then beyond setq, and I didn't even use that very much. I only used Emacs to maintain a diary and a few other documents in org-mode. I wasn't fond of most of Emacs' classic bindings, but org-mode's core bindings on M-RET and M-up,down,left,right felt very ergonomic, and I really liked how it felt to write in a hierarchical outline style.
Anonymous
6/17/2025, 10:59:55 AM No.105619310
>>105618593
>the average person is too stupid to figure out how to operate something like Windows 98. It's why they go
>>Ohhh anon you're so good with computers!
>when you run a script to automatically delete the spyware they've installed for the 100th time so they can get 2 cent coupons for shit they don't need from some scam plug-in in their web browser.
I think in 30-50 years you (and I) will be like them as well. Maybe not with computers, but with things that will matter in future.
Anonymous
6/17/2025, 12:13:54 PM No.105619758
>>105584148
Please post. My lisp project has turned into nightmare.
Anonymous
6/17/2025, 12:57:35 PM No.105620000
>retarded edge lord gets banned from #irc for antisocial behaviour
>comes seething and coping to the place where he will find a smelly, warm hug from his other neckbeards
pathetic really. Not a lisp problem, but a social one. I suggest you seek help.

#emacs is generally helpful, and I rather have strict moderation than dealing with schizos and poltards.
Replies: >>105620167
Anonymous
6/17/2025, 1:26:42 PM No.105620167
>>105620000
>schizos and poltards
I was with you until the slander came.
#emacs is a helpful place though. Treat the place well. A lot of knowledgable emacs users are there, and they're generally good people.
Replies: >>105620208
Anonymous
6/17/2025, 1:33:24 PM No.105620208
>>105620167
Absolutely, this general is good. I was referring to the people like the banned poster.

Probably a lot of user overlap with #emacs
Anonymous
6/17/2025, 3:25:19 PM No.105620922
Exercise 1-29 of SICP nearly broke me. As an imperativebabby, dealing with first-class functions and formalized closures was facile in a vacuum but when having to layer on logic and structure... mind-bendingly difficult for me. I spent -- no shit -- at least twelve hours, maybe even fifteen, over the space of a couple days trying to pound my dumb, foggy brain into submission around the shape of a completely novel paradigm in action. I finally understood that this was a case-in-point moment where the solution required stepping outside my former box and really using functions as building blocks in an abstract, structural context I never had before.

This shit is addictive. Even if it takes me the rest of my life, I WILL become a wizard.
Replies: >>105622710 >>105623622 >>105638967
Anonymous
6/17/2025, 4:50:19 PM No.105621573
>>105616567
Perfect, I wanted plasma anyway so I'm trying a reconfigure after adapting that template, and it's running for now. Hopefully no oom or errors this time.
Replies: >>105623968
Anonymous
6/17/2025, 5:37:03 PM No.105621958
>>105614867
>Interpreted: Slower than Python
>AOT Compiled: As slow as NodeJS
What causes that are all the dynamic features. Common Lisp has to embed the entire runtime including the compiler into every binary, just to support arbitrary code execution at runtime.
That's completely retarded, but CL addicts accept it for some reason.
Anonymous
6/17/2025, 7:03:24 PM No.105622710
>>105620922
which one is that?
I don't have the book on hand
Replies: >>105622826 >>105622982
Anonymous
6/17/2025, 7:16:45 PM No.105622808
minimal-sayori
minimal-sayori
md5: f72b48e00bba26557961ed2ff3cdee11๐Ÿ”
(defun f (x c0)
(defun g (y c1)
(funcall c1 (+ x y)))
(g 3 c0))

(f 2 (lambda (x) x))
Is this a correct cps transformation for (defun f (x) (defun g (y) (+ x y)) (g 3)) or does g also need x as a parameter?
Anonymous
6/17/2025, 7:18:29 PM No.105622826
>>105622710
It's the one where you take a sum process, two of whose parameters are processes, and implement Simpson's rule for finding integrals. My major stopping block beyond just the algorithmic complexity was how closures work in Scheme. I got to do a bit of digging into how they're stored on the heap and how they interact with stack frames. It was also just flat out hard to reason rigorously about passing functions as arguments because it was completely foreign. I learned a ton.
Anonymous
6/17/2025, 7:37:19 PM No.105622982
Screenshot_20250617_103648_Firefox
Screenshot_20250617_103648_Firefox
md5: fbd7c1ce29e0d5416049577db7e27ee8๐Ÿ”
>>105622710
More accurately... given the following process:
(define (sum-integers a b)
(if (> a b)
0
(+ a (sum-integers (+ a 1) b))))

The problem is in picrel.
Replies: >>105622990
Anonymous
6/17/2025, 7:38:19 PM No.105622990
>>105622982
Wait, wrong one kek. It's this one:
(define (sum term a next b)
(if (> a b)
0
(+ (term a)
(sum term (next a) next b))))

My bad
Anonymous
6/17/2025, 7:41:33 PM No.105623018
>>105618593
>I'm just experienced enough to know that the average person is too stupid to figure out how to operate something like Windows 98
Im sure your life experiences involve talking with your mom and grandma.
You are low iq and no amount of narcisism is gonna make up for it.
At least half of population has office jobs but I bet no one knows how to use the computer because midwit said so.
>hur dur they dont know l the exact command in terminal for shortcut creation so they dont know anything

Just stop you are embarassing yourself.
Replies: >>105623212 >>105623567
Anonymous
6/17/2025, 7:44:27 PM No.105623041
>>105581776
>https://archive.org/details/09-sel-protocol/
Thanks for sharing the link!
I can't tell you how hard its been to find the series.
Anonymous
6/17/2025, 7:52:22 PM No.105623130
>>105597763
Space isn't real. Check out Vibes of Cosmos on Youtube. Probably the most credible source out there, if you ask me.
Anonymous
6/17/2025, 7:59:44 PM No.105623212
>>105623018
Have you never worked in an office before? Office jobs are adult daycare, they don't know fuck about anything. Trained monkeys could perform most office jobs better than the average employee.

I don't quite agree with either of you though, my experience is the reality is much more frustrating. Most people are fully capable of understanding programming, but they simply REFUSE TO! They actively resist learning and mental effort like a dog resists a trip to the vet, you've got to force and trick them into it. Even when they explicitly ask you to teach them they refuse to learn and are really just out to pretend that they're making an effort. The amount of time and care put into the most retarded shit imaginable proves they're not really retarded, they're just anti-intellectual fools who think learning is torture and supposed to kill you.
Replies: >>105623344
Anonymous
6/17/2025, 8:14:31 PM No.105623344
>>105623212
Offices run on wasting time and looking busy. Still average worker knows basic operations on pc.
Economy is fake and nessesitates that kind of behavior.
Anonymous
6/17/2025, 8:18:05 PM No.105623372
>>105618593
>grown gaijin
You will never be Japanese.
You will never have an asian waifu.
You are a creepy weeb that real asian people would soon laugh at.
Replies: >>105623444
Anonymous
6/17/2025, 8:26:04 PM No.105623444
>>105623372
>>>/r/eddit
Replies: >>105623560
Anonymous
6/17/2025, 8:26:32 PM No.105623450
I learned lisp using Dr. Racket and SICP
then I tried to use emacs and got super overwhelmed.
Replies: >>105623639 >>105623746
Anonymous
6/17/2025, 8:39:31 PM No.105623560
argumentation_hitler
argumentation_hitler
md5: 7f80afe79aaf209483653993e9d74fb9๐Ÿ”
>>105623444
>Everyone I don't like is a redditor.
Anonymous
6/17/2025, 8:40:02 PM No.105623567
>>105623018
>At least half of population has office jobs but I bet no one knows how to use the computer because midwit said so.
The midwit wouldn't really be wrong doebeit. It's not so much due to IQ differences as it is due to the fact that most normies are either afraid of computers or extremely bored by them.
Anonymous
6/17/2025, 8:46:06 PM No.105623622
.lastscreen
.lastscreen
md5: 5eda431ae0ff9cf31c2dc168a4abd7f0๐Ÿ”
>>105620922
this seems like a really retarded way to word the problem. is the whole book written like this?
Replies: >>105623810 >>105624389
Anonymous
6/17/2025, 8:48:11 PM No.105623639
>>105623450
>I tried to use emacs and got super overwhelmed.
It seems like an editor that has an operating system built in as a feature. I know basic things like starting the repl. I often have to look up commands on how to do certain things. Its not at all intuitive and I'm used to Vim. In hindsight, I wish I would've started with Emacs so that it'd be second nature to me by now.

I use Emacs in GUI mode instead of in the terminal. I'm nowhere near the point of needing to customize Emacs with things like Org mode. Although I imagine if I can use Emacs to replace my IDE and I can get good with LaTeX (or however the fuck you write it) so as to not always need office programs, then I can see Emacs becoming my daily driver.
Replies: >>105623746 >>105624913 >>105624979
Anonymous
6/17/2025, 9:04:00 PM No.105623746
>>105623639
>>105623450
The secret to learning emacs is to just take it one step at a time and don't bother learning things until you need them.
Start out just using it like notepad, then learn the common shortcut keys, then learn the movement keys, then after that whenever you have do do something just google "emacs <problem I have>". 99% of the time it's already a built in function.

Oh protip for new users: don't disable the menu bar, and check that shit out there's all sorts of interesting things in there.
Replies: >>105624216
Anonymous
6/17/2025, 9:14:31 PM No.105623810
>>105623622
What's wrong with it?
Anonymous
6/17/2025, 9:35:53 PM No.105623968
bruh
bruh
md5: 7baf0ee8da0cf47d251365fae8e6916f๐Ÿ”
>>105621573
Bruh.

ghc did build the last few times, so maybe this was just random?
Replies: >>105624106
Anonymous
6/17/2025, 9:55:20 PM No.105624106
>>105623968
guix weather ghc
You should use substitutes to avoid building. Also try this substitute server
https://git.rekahsoft.ca/rekahsoft/guix-north-america/
Replies: >>105625443
Anonymous
6/17/2025, 10:11:57 PM No.105624216
>>105623746
Thanks for the advice.
I've seen people with all kinds of nice things in Emacs like calendars, to-do lists, etc. etc.

I try to take notes with Obsidian but it just doesn't do it for me. I suspect that Emacs plus a package might be way better than Obsidian.
Anonymous
6/17/2025, 10:31:52 PM No.105624389
I_did_it
I_did_it
md5: c89a23f241bfb06ebb97f4de5259828a๐Ÿ”
>>105623622
I did it!!!

and with only 2 hours of sleep.
Replies: >>105624442
Anonymous
6/17/2025, 10:39:14 PM No.105624442
>>105624389
The point of the exercise was to get used to passing functions as first class citizens. Implementing the algorithm by itself is trivial. At that point in sicp, you don't even have let! in your toolkit yet. It's in implementing it in an idiomatic way that you can really learn something from sicp. There's probably no point in working through it otherwise.
Replies: >>105624694
Anonymous
6/17/2025, 11:03:48 PM No.105624694
>>105624442
>Complete assignment as written
>NOOO THAT DOESN'T COUNT
Replies: >>105624794 >>105624867
Anonymous
6/17/2025, 11:15:56 PM No.105624794
>>105624694
He's trying to help you, and you're being like this?
Anonymous
6/17/2025, 11:24:53 PM No.105624867
>>105624694
>Complete assignment as written
If we want to be pedantic, the function signature was very specific: f, a, b, and n. SICP is one of the most exactingly intentional texts ever written. Everything has a purpose.
Anonymous
6/17/2025, 11:32:22 PM No.105624913
>>105623639
>customize Emacs with things like Org mode
- You don't have to do anything.
- It's already built in.
- Just open a file with a .org extension and, you're in org-mode.
- Hit M-RET to create a heading.
- Hit M-Right to indent a heading.
- Hit M-Left to dedent a heading.
- Hit M-Up to move a heading up.
- Hit M-Down to move a heading down.

It might help to think of it as a format that's similar to Markdown. People use it to write documents with headings.
Anonymous
6/17/2025, 11:38:17 PM No.105624979
>>105623639
>I often have to look up commands
https://github.com/justbur/emacs-which-key
If you have Emacs 30+, it's already built-in -- you just have to enable it. If you have an earlier version, you have to install it first before enabling. It will aid you tremendously in the looking up process.
Anonymous
6/18/2025, 12:32:47 AM No.105625443
>>105624106
lmao, should have made sure earlier, but only the nonguix channel was authorized. Not something I would expect, but maybe I was too quick with replacing guix in the channels file with a simple %default-channels?

This time for sure...
Replies: >>105625538
Anonymous
6/18/2025, 12:43:01 AM No.105625538
>>105625443
Yup. Easy. Doesn't look like Wayland works (X11 does), but this is very nice. Now to bork the system by trying to get proprietary nvidia drivers working.
Replies: >>105626161
Anonymous
6/18/2025, 1:57:58 AM No.105626030
lgs
lgs
md5: fef9b7b35346bf4ea89756cda1be952f๐Ÿ”
The Lispy Gopher Show starts in less than 5 minutes.
https://anonradio.net/
Replies: >>105626070
Anonymous
6/18/2025, 2:04:57 AM No.105626070
>>105626030
https://anonradio.net:8443/anonradio
Anonymous
6/18/2025, 2:18:07 AM No.105626161
>>105625538
Holy shit, I think I did it. Steam is running and I should have proprietary drivers now. Plasma's Settings and Info Center windows are blank though, but I wasn't really expecting anything to work. Very cool! Also, when I first logged in the background image wasn't drawn before I dragged some windows over it.
Replies: >>105629635
Anonymous
6/18/2025, 2:28:20 AM No.105626226
Trying and failing to use guile FFI to link to gnutls.
I'm to stupid for C shit.
Replies: >>105626245
Anonymous
6/18/2025, 2:31:46 AM No.105626245
>>105626226
I think the correct way is to first write a C wrapper that converts stuff to/from scheme and integrate with it right? Instead of directly calling dynamic linked stuff with (load-foreign-library )
Anonymous
6/18/2025, 4:46:58 AM No.105627084
boomertech
Replies: >>105627186
Anonymous
6/18/2025, 4:47:33 AM No.105627088
Do you think this thing is going anywhere? It sounds comfy
https://github.com/jank-lang/jank
It looks more meme than Janet though, but at least that has a real project behind it.
>>105596270
Automate downloading and sorting coomshit through aria2 and yt-dlp. Also is kinda comfy to be honest, can use ghostcript and magick's bindings (or just shell out) to replace like half of the shitty Google Playstore's apps. Also all text editors for Android are basic as shit, you can run something better through ths.
>>105597176
This board becomes more braindead every week. I don't even care about Lisp too much, everything else just sucks ass,
Anonymous
6/18/2025, 5:06:08 AM No.105627186
>>105627084
There's a peculiar kind of brainrot among modern "technological" people who think only in terms of what's being done right now, and quickly, and not in terms of merit of the ideas. They'll complain Lisp is "outdated" but somehow see no contradiction complaining about OOP ideas in C++ and Java when CLOS has been working well for a long time, they think Python is modern despite it moving closer and closer to any Lisp idea it can with only half the effectiveness, but all that matters is whatever can immediately grab their brainrotted attention span, not what makes an idea good or bad on a deeper level.
Replies: >>105627295
Anonymous
6/18/2025, 5:24:54 AM No.105627295
>>105627186
calm down. I was just bumping the thread after listening to old lisp programmers tell stories about lisp in the 80s and 90s on anonradio. i didn't mean boomer in a mean way.
Anonymous
6/18/2025, 6:22:29 AM No.105627625
Is the whole point of vlists in guile for when you need fast random access or are there other reasons to use them?
Replies: >>105628528
Anonymous
6/18/2025, 8:57:16 AM No.105628520
Huh, why do I have to authorize the default substitution channels for Guix on every reboot?
Replies: >>105629164
Anonymous
6/18/2025, 8:58:35 AM No.105628528
file
file
md5: 485745a340205c6772274ddab3f8fd9a๐Ÿ”
>>105627625
Well, you can implement other datastructures via vlists (see Bagwell's original paper). Not sure if guile's implementation provides them OOTB.
Anonymous
6/18/2025, 10:15:43 AM No.105628949
>>105585440
Use parenscript for the frontend so that you can be all CL all the time.
Anonymous
6/18/2025, 10:56:00 AM No.105629164
>>105628520
you need to put them in your system configuration file, it's in the manual
Replies: >>105629374
Anonymous
6/18/2025, 11:34:14 AM No.105629374
>>105629164
My other Guix systems don't appear to have any issues like this. Also, the locales "hint" is annoying.
Anonymous
6/18/2025, 12:26:47 PM No.105629635
Thanks to anons guiding me to this mostly working plasma with proprietary nvidia drivers:
(use-modules (gnu)
(gnu system nss)
(srfi srfi-1)
(nongnu packages linux)
(nongnu system linux-initrd)
(nongnu services nvidia)
(nongnu packages nvidia)
(nongnu packages game-development)
(gnu packages games)
(gnu packages emacs)
(gnu packages admin)
(gnu packages rust-apps))

(use-service-modules desktop sddm networking ssh xorg)
(use-package-modules gnome ssh admin fonts)
(use-package-modules qt xorg tmux linux)

(operating-system
(kernel linux)
(kernel-arguments (cons "modprobe.blacklist=nouveau"
%default-kernel-arguments))
(initrd microcode-initrd)
(firmware (list linux-firmware))

(packages (map replace-mesa (cons* emacs
libsteam
steam-devices-udev-rules
(specification->package "steam-nvidia")
%base-packages)))

(services (cons*
(service plasma-desktop-service-type)
(service sddm-service-type
(sddm-configuration
(theme "breeze")
(xorg-configuration (xorg-configuration
(keyboard-layout keyboard-layout)
(modules (cons nvda %default-xorg-modules))
(drivers '("nvidia"))))))
(service nvidia-service-type) (service openssh-service-type)
(modify-services %desktop-services
(delete gdm-service-type)
(guix-service-type config => (guix-configuration
...))))
(name-service-switch %mdns-host-lookup-nss))
As mentioned, not perfect (which means you can't change settings kek): >>105626161
Would be nice to have Wayland too.
Anonymous
6/18/2025, 2:31:44 PM No.105630353
fuck me some of Paul Graham's macros in On Lisp are very hard to come up with
the final result looks fantastic, but the definitions of the macros themselves (especially when they're defined in terms of other macros) are very hard to think of
Anonymous
6/18/2025, 6:05:08 PM No.105631967
(defun eww-edit-url (&optional url)
"Edit the current URL and go to it with eww."
(interactive
(let* ((current-url (or (if eww-data
(plist-get eww-data :url))
(thing-at-point 'url))))
(list (read-string "URL: " current-url nil current-url))))
(eww url current-prefix-arg))
[/url]

This is for when you're viewing a page in eww, and want to edit the URL to visit another page.
Anonymous
6/18/2025, 6:07:12 PM No.105631990
(defun eww-edit-url (&optional url)
"Edit the current URL and go to it with eww."
(interactive
(let* ((current-url (or (if eww-data
(plist-get eww-data :url))
(thing-at-point 'url)))) ;'
(list (read-string "URL: " current-url nil current-url))))
(eww url current-prefix-arg))


This is for when you're viewing a page in eww, and want to edit the URL to visit another nearby page.
Anonymous
6/18/2025, 9:04:44 PM No.105633520
yotsuba
yotsuba
md5: 24adc07da17723cd99ca06e13f5db63f๐Ÿ”
>>105614955
>https://github.com/ve-nt/q4
Interesting
Anonymous
6/18/2025, 9:15:44 PM No.105633626
shoving distro janny nerds into lockers until they start putting babashka in the official repos
Replies: >>105634100
Anonymous
6/18/2025, 10:03:57 PM No.105634100
new_pr
new_pr
md5: 3dfa847d37b6d7ea8f7e5fccdb76ad24๐Ÿ”
>>105633626
Anonymous
6/18/2025, 11:50:45 PM No.105635071
>>105585440
Is there any tutorial for clojurescript or any other lisp to javascript that doesnt require you to learn javascript first?
Replies: >>105639003
Anonymous
6/19/2025, 12:00:27 AM No.105635148
Heh, guess you can't simply add os-prober into your Guix system.scm, reconfigure, run os-prober, and reconfigure again, then reboot, and simply expect it to work, huh.
Replies: >>105635258
Anonymous
6/19/2025, 12:15:44 AM No.105635258
>>105635148
Probably you need to set up this menu-entry
https://guix.gnu.org/manual/devel/en/html_node/Bootloader-Configuration.html
Replies: >>105635733
Anonymous
6/19/2025, 12:30:45 AM No.105635390
Do you know of any good guides or codebases for guile FFI? I need to use a dynamic linked library and I have no idea of how to start. Manual seems directed to people that are good with C and this shit.
Anonymous
6/19/2025, 1:08:12 AM No.105635733
>>105635258
Thanks, anon. Fairly simple. No os-prober necessary.
(bootloader-configuration
...
(menu-entries
(list
(menu-entry
(label "Windowns")
(device (uuid "stuff" 'fat16))
(chain-loader "/EFI/Microsoft/Boot/bootmgfw.efi"))))))
Replies: >>105636127
Anonymous
6/19/2025, 2:04:39 AM No.105636127
>>105635733
It never ceases to amaze me how much more readable and aesthetic properly indented sexp-based configs are compared to just about any other config convention.
And we are stuck with shit like json and yaml.
Anonymous
6/19/2025, 6:20:42 AM No.105637586
ใƒ˜ใƒ“
ใƒ˜ใƒ“
md5: 23159fb9c9ba64bfbd1bda45b5bcf29f๐Ÿ”
le snek dialect
https://clojure.org/news/2025/06/16/deref
>basilisp 0.4.0 - A Clojure-compatible(-ish) Lisp dialect targeting Python 3.9+ (https://github.com/basilisp-lang/basilisp)
Anonymous
6/19/2025, 8:11:54 AM No.105638153
is clojure usable with 0 javasir knowledge? can i make practical shit and not get bogged down by random jvm stack trace explosions that i can't interpret because some underlying poo-poo is not of class java.durgasoft.pee-pee.zaza? should i just do common lisp for my amateur gamedev project instead?
Replies: >>105638480
Anonymous
6/19/2025, 9:06:34 AM No.105638480
>>105638153
You can dive into the language with zero Java knowledge and just learn what you need to know as you go. The developer experience is extremely un-Java-like.
Subjectively though I'm not sure if it's a good choice for game dev. CL is much better for this.
Replies: >>105640110
Anonymous
6/19/2025, 10:31:02 AM No.105638967
>>105620922
Going through this matters even in Jabba corporations. It's obvious when people try to use higher order functions whether or not they've been exposed to SICP beforehand.
Replies: >>105640100 >>105642565
Anonymous
6/19/2025, 10:38:55 AM No.105639003
>>105635071
CLOG has the same problem. It's the curse of being on top of a platform, you really are forced to learn the details of the platform too. Not so bad if you are already familiar, but if you don't know either, learning two things at once is going to be harder than one.
Even knowing JS better than it deserves, I get more joy pushing HTMX as far as it can go these days.
Replies: >>105639414
Anonymous
6/19/2025, 11:59:25 AM No.105639414
>>105639003
>HTMX
I'm really happy with htmx. I don't mind writing JS, but with htmx, I barely have to.
Anonymous
6/19/2025, 1:55:10 PM No.105640100
>>105638967
>jabba corporations
the what
Replies: >>105640124
Anonymous
6/19/2025, 1:56:42 PM No.105640110
>>105638480
>The developer experience is extremely un-Java-like.
>same weird deep directory trees in projects
>weird project management (either leinigger or the shitty deps.edn)
>literally java interop everywhere
>need to write code that gets turned into jar slop.
sir?
Replies: >>105643490
Anonymous
6/19/2025, 1:58:54 PM No.105640124
jabba
jabba
md5: 13fb6999781ee4788257d8e6fdc20568๐Ÿ”
>>105640100
Anonymous
6/19/2025, 5:13:41 PM No.105641410
M-x ruler-mode
Replies: >>105641534 >>105641658
Anonymous
6/19/2025, 5:30:14 PM No.105641534
>>105641410
for what purpose?
Replies: >>105647423
Anonymous
6/19/2025, 5:43:10 PM No.105641649
Can any IRC chads help me with why this doesn't work?
(setq erc-autojoin-channels-alist '(("irc.libera.chat" "#lisp" "#emacs")))
(setq erc-kill-buffer-on-part t)
(setq erc-auto-query 'bury)
(setq erc-interpret-mirc-color t)
(setq erc-hide-list '("JOIN" "PART" "QUIT"))
(erc :server "irc.libera.chat" :nick "PEEPEE" :password "PASSWORD")



When I open my emacs it does spawn the "Libera Chat" buffer in ERC mode, but it does not autojoin the channels. I need to /join #emacs.
Replies: >>105643861
Anonymous
6/19/2025, 5:44:37 PM No.105641658
>>105641410
I have that enabled on all text files.
Anonymous
6/19/2025, 7:42:13 PM No.105642565
>>105638967
Honestly, at this point, it seems immaterial to me whether or not anything I'm learning in SICP will be directly useful in any future career. I'm just genuinely intrigued at this point -- or obsessed, even -- with the rainbow itself, not just the pot of gold that may or may not be at the other end of it. There's something about the functional paradigm itself that's really gripped me.
Replies: >>105643511
Anonymous
6/19/2025, 9:17:30 PM No.105643484
I've started having all of my custom elisp shit outside of my init.el, with that just loading other more contained scripts. It makes everything way easier to read. I also made my custom configs a git repo, so I can just push/pull any changes. init.el stays very spartan and clean, everything else is organized
Anonymous
6/19/2025, 9:18:10 PM No.105643490
>>105640110
>>same weird deep directory trees in projects
Have you ever actually used Java (or Kotlin)? It's not the same.
>src/main/java/com/hyderabad/sir/morning/good/AbstractSingletonProxyFactoryBean.java
Anonymous
6/19/2025, 9:21:13 PM No.105643511
>>105642565
Usually people are drawn to it because it tends to describe what to do, rather than how to do it, so it feels more like a bona fide descriptive language of sorts.
Anonymous
6/19/2025, 9:59:25 PM No.105643861
>>105641649
I think you need.
(erc-autojoin-mode 1)
Replies: >>105644499
Anonymous
6/19/2025, 10:59:32 PM No.105644499
>>105643861
that does not exist
Replies: >>105644977 >>105648790
Anonymous
6/19/2025, 11:49:34 PM No.105644977
>>105644499
You have to add autojoin to your list of erc-modules first. Here's what my list looks like.
(setopt erc-modules
'(autojoin
button
completion
fill
imenu
irccontrols
list
match
menu
move-to-prompt
netsplit
networks
nicks ; +nicks (for color-coded names)
nickbar
notifications ; +notifications
readonly
ring
stamp
track)))

Did you even try to search for it before you posted?
Anonymous
6/20/2025, 2:23:21 AM No.105646168
I hate treesitter but it works, just is a pain in the ass to set up
Replies: >>105647435
Anonymous
6/20/2025, 5:20:37 AM No.105647423
>>105641534
>for what purpose?
for fun
Anonymous
6/20/2025, 5:22:41 AM No.105647435
>>105646168
What was hard about it? I literally just changed c-mode to c-ts-mode in my config.
Anonymous
6/20/2025, 8:51:54 AM No.105648790
>>105644499
(info "(erc) Modules")

https://www.gnu.org/software/emacs/manual/html_node/erc/Modules.html
Anonymous
6/20/2025, 12:25:52 PM No.105650090
This might have been helpful to have back when I was learning Calculus.
https://www.youtube.com/watch?v=_zWJP_MK1Dk
c hater
6/20/2025, 2:09:20 PM No.105650671
>>105596608
> C has stuck around so long because
of unix it has no technical merit over its predecessors or successors C. The idea that languages are chosen and used due to their technical merit is a myth its always politics and nothing else if you've got a room full of c/java/js/python coders you will make your project in that language even if its the most retarded idea ever thats just how this gay planet works.
Replies: >>105650868
Anonymous
6/20/2025, 2:28:03 PM No.105650804
>>105586463
Forth is better than lisp.
> want to do x
> extend the language
> same shit as lisp but it actually respects the "hardware" nature of computing
Replies: >>105651172
Anonymous
6/20/2025, 2:31:23 PM No.105650824
>>105586499
> ayyy we want programming to be like biology
> ayy we want it to be simple as shit
> realize real life doesn't work like that
> le worse is better
> le everybody else is retarded look at my imaginary computer
Anonymous
6/20/2025, 2:36:28 PM No.105650868
>>105650671
Talk is cheap, show me the code anon. I have nothing against Lisp, it's a neat language. But you guys need to level up your game. Show me actual code that solves a complicated problem, and teach me how lisp made that easier.
Anonymous
6/20/2025, 3:08:58 PM No.105651172
>>105650804
Emacs written in Forth when?
Too bad there isn't much free software written in it.
Replies: >>105651413
Anonymous
6/20/2025, 3:41:34 PM No.105651413
>>105651172
Linux/Windows/Mac in Lisp when?
Too bad there isn't much free software written in it. You realize how stupid your message is?
Replies: >>105651494
Anonymous
6/20/2025, 3:51:17 PM No.105651494
screenshot
screenshot
md5: f7dd48a5fe8cbcfa41e47f96ae04bf7d๐Ÿ”
>>105651413
GNU Guix System + Emacs + Nyxt just werks 4 me. Now post some good useful free software written in Forth.
Replies: >>105651541 >>105651557
Anonymous
6/20/2025, 3:58:52 PM No.105651541
>>105651494
> GNU Guix + Emacs + Nyxt
> good useful free software
Emacs doesn't count buddy. More than half of it was written in C, and is slowly being replaced by elisp in chunks. And it keeps getting slower every release because of it. I can't indent a 1000 line program without lagging the entire thing.
Replies: >>105651632
Anonymous
6/20/2025, 4:00:56 PM No.105651557
>>105651494
> Now post some good useful free software written in Forth
PostScript used by billions of people.
Replies: >>105651850
Anonymous
6/20/2025, 4:09:47 PM No.105651632
emacs-mirror_emacs
emacs-mirror_emacs
md5: b28bcb4fb7f5dfb09c427df90b5f7b75๐Ÿ”
>>105651541
>More than half of it was written in C
gr8 b8 faakhead
Replies: >>105651720
Anonymous
6/20/2025, 4:19:28 PM No.105651720
emacs
emacs
md5: e0bdfdcfe934e4291d209f85f6ffeec0๐Ÿ”
>>105651632
Anonymous
6/20/2025, 4:28:49 PM No.105651788
>language masturbation and answering schizos instead of programming
zzzz
Replies: >>105651804
Anonymous
6/20/2025, 4:30:50 PM No.105651804
>>105651788
> lisp general
Anonymous
6/20/2025, 4:35:21 PM No.105651850
doubt
doubt
md5: 766604a25768c860b3798823307379d2๐Ÿ”
>>105651557
>adobeware
>free software
Anonymous
6/20/2025, 6:18:04 PM No.105652622
new bread
>>105652614
>>105652614
>>105652614
>>105652614