Common Lisp ces deux dernières années: un monstre de l'évolution parmi nous https://linuxfr.org/news/common-lisp-ces-deux-dernieres-annees-un-monstre-de-l-evolution-parmi-nous #Programmation #common_lisp
Common Lisp ces deux dernières années: un monstre de l'évolution parmi nous https://linuxfr.org/news/common-lisp-ces-deux-dernieres-annees-un-monstre-de-l-evolution-parmi-nous #Programmation #common_lisp
I am thinking of building a web app for personal use. I wanted to do it in a lisp family like Common lisp or scheme. Likewise, I was leaning towards Common lisp for it libraries and tutorials. But when I saw some of David Wilson from SystemCrafters YouTube Videos on him creating a web app for Emacs packages. I am now rethinking of using Guile Scheme instead.
I just completed "Restroom Redoubt" - Day 14 - Advent of Code 2024 with Common Lisp!
P1 was pretty easy. But part 2 is very vaguely defined. I'm not proud of my solution to dump each tick to an ASCII PBM and look through the images manually, but it got it done. I had some ideas of what to do to automate it, that might still work with some tweaking now that I know what specifically I am looking for.
I just completed "Claw Contraption" - Day 13 - Advent of Code 2024 with Common Lisp!
This one was easy with some middle-school algebra. The Hardest part was parsing the input.
https://adventofcode.com/2024/day/13
https://github.com/argentcorvid/AoC-2024/blob/main/day13.lisp
I just completed "Garden Groups" - Day 12 - Advent of Code 2024 with #commonlisp! #AdventOfCode https://adventofcode.com/2024/day/12
https://github.com/argentcorvid/AoC-2024/blob/main/day12.lisp
Made a few adjustments to Chipi ( #common_lisp #lisp) (https://github.com/mdbergmann/chipi) in order to make troubleshooting a bit easier.
One issue was that in actor systems you have to make sure that messages are not blocking the message processing. If you have longer running stuff that is triggered by a message, make sure it gets off loaded to another thread pool or what ever.
I just completed "Hoof It" - Day 10 - Advent of Code 2024 using Common Lisp! This one wasn't even hard compared to day 9!
https://adventofcode.com/2024/day/10
https://github.com/argentcorvid/AoC-2024/blob/main/day10.lisp
How do you ship desktop apps in #lisp ? Web views are an easy way nowadays: I present Electron, WebUI, Webview.h through CLOG Frame.
https://lisp-journey.gitlab.io/blog/three-web-views-for-common-lisp--cross-platform-guis/
#common_lisp is a evil hash tag. #Common-Lisp #commonlisp
What is the correct way to print a string without quotation marks surrounding it, but retain the automatic line-ending, in #common_lisp #lisp ?
(print "hello") ; has quotes
(princ "hello") ; no quotes, but no line-end
(format t "hello") ; no quotes, no line-end, and it seems like abusing format to me
I'm aware there's probably something I can pass to print to remove the quotes, but I can't see it at a glance :/
SBCL won't run-program fzf, but ECL does.
I was thinking of writing a program in lisp. Part of the program was going to pipe some choice to fzf fuzzy finder. I was trying to use SBCL, but it just hangs and does not launch fzf. I thought I try ECL, and it launches fzf just fine.
Type in
(uiop:run-program "echo -e 'One\\nTwo' | fzf" :interactive t :output *standard-output*) SBCL hangs and ECL launches fzf with my choices.
#common_lisp #lisp #sbcl #ecl
#lisp Having fun on my blog 🎃
Who wants to create better images on the topic to help "revive" CL? #common_lisp
I am running my 4th #common_lisp script in production© and you surely can do it too!
https://lisp-journey.gitlab.io/blog/running-my-4th-lisp-script-in-production/
This last one is about reading data from a DB, formatting it, sending it through SFTP every morning with a CRON job. I also developed and host little web apps. We take a tour of what I use, but the idea is that for these mundane tasks (data munging, REST APIs…) nothing technical is preventing us from using CL.
For clients I had to send files to a SFTP server. Giving the password on the command line is not really doable, that's why projects like LFTP exist (it is also multi protocol). I made a simple wrapper: https://github.com/vindarel/lftp-wrapper
You read credentials from ENV, files or variables, create a command object, and in the end you'll run a command like
lftp -p 400 sftp://user:*****@test.org -e "cd in/; put file.txt ; bye"
For FTP, cl-ftp is pure CL and works well.
First step of a C compiler in #common_lisp
Every time I use #common_lisp, I'm shocked what people tolerate in other languages. Which is not saying that we should all be using #lisp, but how do languages not have inspectability into running programs in the year of our lord 2024?
Gah! I just got bitten, again, by the fact that `case` in Lisp uses `eq`, so it won't work for strings. 😢
First binding plugin integrated to Chipi ( #common_lisp house automation ).
See https://github.com/mdbergmann/chipi/tree/main/bindings/knx
The funny thing about the loop macro in #common_lisp is that it is not always easy to write but quite readable if written. There is some very declarative vibe about it, imo.