WetHat, to Lisp
@WetHat@fosstodon.org avatar

Mark Watson (@mark_watson) wrote this #eBook to introduce #CommonLisp to developers who already know how to program in another language. If you are a complete beginner, you can still master the material in this book with some effort.

https://leanpub.com/lovinglisp/read#leanpub-auto-why-did-i-write-this-book

#tutorial #ProgrammingLanguage #Lisp #SBCL #Quicklisp

rml, to random

wow, the implementation of the logic programming system[1] performs 4x faster than the implementation[2].

It seems like Mark Tarver, the author of Shen who reported these results, authored both implementations.

[1] https://shen-language.github.io/
[2] https://groups.google.com/g/chez-scheme/c/vTyTn_yh9vg/m/D8t-jooBGAAJ

louis, to Lisp
@louis@emacs.ch avatar

Registrations for the European Lisp Symposium are now open.

May 6th - May 7th 2024, Vienna

https://european-lisp-symposium.org/2024/

And also

4th-5th May, same location, SBCL25:

https://sbcl.org/sbcl25/

nytpu, to random

New garbage collector just dropped: https://www.sbcl.org/news.html#2.3.8

dziban, to random
@dziban@functional.cafe avatar

Yesterday session to bring quicklisp/ultralisp/git together with for development and deployments with NixOS was very fruitful.

One of the main problems with deployments is that you need a matching SBCL version and glib version for them to work. Nix can be a solution to that but it has a very sad story for common lisp dependency management.

Maybe something will come out of it. Currently I have an autogenerated flake with all of ultralisp and a lispDerivation function that creates a derivation and pre-compiles the fasls given the lisp implementation you wanna use.

schnouki, to random

TIL: every run of has the same initial *random-state*, so sequences of pseudo-random numbers are not so random. The solution is super simple: (setf *random-state* (make-random-state t)).
It makes sense considering what a image is... but it's still pretty surprising compared to other programming languages. (And doesn't happen in or 😅)

qhBidG3d, to random

Hello everyone,

I wanted to share a comprehensive cloud-init YAML file that I've put together
for setting up a robust server environment. It's tailored towards creating a
secure, user-friendly, and developer-ready setup right from the get-go. Here's
a glimpse of what it covers:

Locale, Keyboard, and Timezone Configuration: Sets up the basic locale,
keyboard layout, and timezone for the system.

User and Group Management: Creates system and regular users, assigns them
to groups, and sets up sudo and SSH key authentication.

Package Management: Installs a range of essential and useful packages,
including fail2ban, ufw, nginx, certbot, sbcl, emacs, git, and many more.
It also handles automatic package updates and upgrades.

Security Enhancements: Configures SSH, ufw firewall, and fail2ban for
better security.

Nginx Setup: Sets up Nginx with a reverse proxy and SSL using Certbot.

Git, SBCL, SLIME, and Quicklisp Setup for User: Sets up a ready-to-code
Lisp environment for the user.

I believe this setup can save a lot of time and ensure a solid foundation for
anyone looking to deploy applications or development environments on cloud
instances. It's especially geared towards those who prefer a Lisp-friendly
environment.

https://git.sr.ht/~marcuskammer/cloudinit/tree/main/item/sbcl-nginx.yml

Feel free to use, modify, or suggest improvements to this setup. I'm open to
feedback and would love to hear your thoughts or experiences with similar
setups. Let's make server setup a breeze!

louis, to emacs
@louis@emacs.ch avatar

Found a new video series on building a tiny HTTP library in Common Lisp from
Philip Bohun:

https://www.youtube.com/watch?v=xVNOdVxA3DE

He is using and .

louis, (edited ) to badminton
@louis@emacs.ch avatar

Setup a simple HTTP server from stdlibs that responds with a simple "Hello, World" string, no logging.

10s load test run on MacBook Pro M1 (using hey).

LispWorks 8 (Hunchentoot): ~11k req/sec
Racket 8.9: ~15k req/sec
Clojure 1.10 (httpkit): ~28k req/sec
Janet 1.29: ~35k req/sec
SBCL 2.3.4 (Hunchentoot): ~44k req/sec
Go 1.20: ~120k req/sec

jacqueline, to random
@jacqueline@chaos.social avatar

46k outgoing a month, 12k active users... so like $3.80 per active user in running costs?

4.85k on CDN a month, to move 20 TiB of data... 3.8GiB of bandwidth per dollar.

cohost are doing are really great job of reinforcing my pre-existing belief that "the cloud" is just a huge fucking scam.

dekkzz76,
@dekkzz76@emacs.ch avatar

@lispi314 @aphistic @jacqueline

is that standard lisp or specific?

lispi314,

@aphistic @jacqueline They should rewrite it in .

Nowhere near the effort of writing it in C or Rust, but on just switching on (declare (optimize (speed 3))) in a hot code path and addressing the low-hanging fruits for type-based optimizations can get you within a magnitude of the other two's performance with barely any effort.

screwtape,
@screwtape@mastodon.sdf.org avatar

@lispi314 @dekkzz76 @aphistic @jacqueline
in this case I think it is best to OPTIMIZE for as per the definitions of optimize levels. These are incredibly useful, such as using the optimize space level to turn on and off function inlining in compilation. To my knowledge these are still only detailed in the CMUCL manual.

Hence not defining what these do allowed them to have contextually very important abilities attached to them, in which case (as with all things) SBCL is de facto

screwtape, to Lisp
@screwtape@mastodon.sdf.org avatar

y show in about 3 hours at 000UTC Wednesday on https://anonradio.net:8443/anonradio by @SDF

screwtape,
@screwtape@mastodon.sdf.org avatar

@fstateaudio @SDF @kentpitman
@nutilius and I are talking about slash trying to remember what was necessary for the build of the makefile for aarch64.

There's also this thread about defvar + defparameter vs :package-inferred-system I would love to hear from more people about by @louis https://hachyderm.io/@lispegistus/110878677659149708

Some current (lispworks/but standardised) tutorials https://kantz.com/clim-primer/index.htm

@TheGibson 's https://veilid.com launched 5 days ago

screwtape, to Lisp
@screwtape@mastodon.sdf.org avatar

#TwoHoursLispPerDay
#unix #shell #sbcl #CommonLisp #lisp extensible string paste0 utility image.
It's been a while since I've used lisp to create utilities for shells, rather than replacements so I am very interested in feedback and commentary about this usage.
@nutilius @svetlyak40wt @surabax @louis @lispi314
. It seems convenient to me, but my opinion on it is kind of abstract...
https://gopher.tildeverse.org/tilde.institute/0/~screwtape/203652471-sbcl-shell-paste.txt
gopher://tilde.institute/0/~screwtape/203652471-sbcl-shell-paste.txt

mousebot, to Lisp
@mousebot@todon.nl avatar

does the version of actually run?

acousticmirror,
@acousticmirror@post.lurk.org avatar

@mousebot I gather it was , so it would most likely run, yes.

screwtape, to Lisp
@screwtape@mastodon.sdf.org avatar

y show at 000UTC Wednesday (about 18 hours from now) on @SDF
lively chat will be as always in sdf.org chat (I'll be in ~chat irc too)

screwtape,
@screwtape@mastodon.sdf.org avatar

@SDF @AlgoCompSynth @synthember @kentpitman @prahou

  • @amszmidt reading @hayley about the garbage collector (note the new sbcl has a new improvement as well)
louis, to random
@louis@emacs.ch avatar

Exciting news for SBCL users. A coroutine proof-of-concept was created during ELS after-hours in a pub :-) I for once hope, what happened in Vienna, doesn't stay in Vienna.

thephoeron, to github
@thephoeron@functional.cafe avatar

Today I also officially forked so I can transform my constant complaining into contributing. Officially.

Might as well put to work for the whole community, right?

amoroso, to Lisp
@amoroso@fosstodon.org avatar

Building the CMUCL Common Lisp implementation from source has always been an arcane process. Building from source the CMUCL-derived SBCL is as simple as executing sh make.sh, a testament to the great work its developers did.

rml, to Lisp
thephoeron, to Lisp
@thephoeron@functional.cafe avatar

I totally forgot about my fresh cup of coffee while composing the first of many bug reports for for like 2 hours, and I’m only half way through the report

You’re damn right I knocked back that manky coffee anyway

reddit_lisp, to random Japanese

SBCL.org website down? | http://redd.it/16856bo

dekkzz76, to random
@dekkzz76@emacs.ch avatar
louis,
@louis@emacs.ch avatar

@dekkzz76 Adding some more notes: the project I've migrated from Go to Common Lisp resulted in 50% less code (not using any macros!).

Also, since I've developed it entirely in LispWorks, I did some tests with other implementations and it worked in SBCL and ECL out of the box (CLISP didn't work because bordeaux-threads doesn't support it).

Here are the runtimes:

SBCL:
Evaluation took:
9.755 seconds of real time
1.033166 seconds of total run time (0.968865 user, 0.064301 system)
[ Real times consist of 0.019 seconds GC time, and 9.736 seconds non-GC time. ]
[ Run times consist of 0.019 seconds GC time, and 1.015 seconds non-GC time. ]
10.59% CPU
144 lambdas converted
1 page fault
100,349,712 bytes consed

ECL:
real time : 83.908 secs
run time : 29.092 secs
gc count : 4 times
consed : 662005840 bytes

(sort of disappointing)

LispWorks:
User time = 2.220
System time = 0.118
Elapsed time = 9.028
Allocation = 60406728 bytes
1620 Page faults
GC time = 0.009

It seems LispWorks is the clear winner in terms of runtime/memory usage.

thomasottio, to emacs

Ok, so I installed on my Macbook. I'm trying to learn so what do I do now?

🦌 🔦

dekkzz76,
@dekkzz76@emacs.ch avatar

@thomasottio

as an user you have effectively 2 choices

1 - Learn the emacs dialect of lisp called , to get you started there are docs & a simple tutorial via C-h-i [just scroll down & look for Elisp & Elisp intro]

2 - Learn a dialect of Common Lisp [] such as , or there is the famous MIT course based on

tca, to Lisp
@tca@genart.social avatar

Solved!

>> sbcl --dynamic-space-size 6144

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • mdbf
  • ethstaker
  • thenastyranch
  • magazineikmin
  • modclub
  • rosin
  • khanakhh
  • cubers
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • JUstTest
  • ngwrru68w68
  • GTA5RPClips
  • InstantRegret
  • tester
  • normalnudes
  • osvaldo12
  • tacticalgear
  • everett
  • anitta
  • Leos
  • provamag3
  • cisconetworking
  • lostlight
  • All magazines