5 ms·
Kramer once asked George “do you ever yearn?” Well I yearn. Every time I see a post on common lisp I yearn to have a job where I do nothing but mathematics and
by waynecochran 2y ago
Kramer once asked George “do you ever yearn?” Well I yearn. Every time I see a post on common lisp I yearn to have a job where I do nothing but mathematics and realize solutions in common lisp. Unfortunately I have to get out of bed now and deal with janky code written by someone who can only think imperatively.
- deleted 2y ago[deleted]
- AeroNotix 2y agoI feel you. I've written quite a lot of Common Lisp over the years and I've tried to show off its capabilities to co-workers, often in comparison to the language used that that job. Often I just get "huh, that's neat, now let's get back to mining the coalface".
- neilv 2y agoI have a suspicion that most Lisp articles we see on HN reinforce the perception that this is something other people shouldn't take seriously, much less touch. This particular post is better than most, and seems like genuine interest, and targeted at people already in the fold, which is fine. Though probably no one else is going see it and think "I gotta get me some of that." The intentional advocacy posts, on the other hand... I usually don't see them appealing well to even the minority of programmers who are amenable to a low-employability platform. While they seemingly help to keep the platform low-employability, by making a weak pitch in the moment that someone was curious/bored enough to look at that link.
- mgsouth 2y agoThen one day you really wake up, and realize you do have that job. You hop out of bed with a spring in your step, walk into your office, sit down at your desk... and start debugging a misbehaving compiler macro used everywhere in a 1500-line multi-nested LOOP.
- Capricorn2481 2y agoAs someone who will probably never get the time or chance to work in CL, I wish I saw more comments like these just to get less FOMO
- nerdponx 2y ago"All the bad things about Common Lisp" would be a fun blog post to write up one day.
- dgfitz 2y agoEvery time I see a lisp post like this my first thought is “just use the right tool for the job” and lisp is exactly NOT always the right tool for the job.
- boothby 2y agoTo be entirely pedantic: if the job is developing a correct mental model for setf, lisp may be exactly the right tool for the job.
- waynecochran 2y agoAh… these damn pragmatic facts always ruin everything!
- dgfitz 2y agoWayne, I heart you.
- medstrom 2y agoIf you think that every time, it is never the right tool for the job?
- dgfitz 2y agoI mean, if you want to be obtuse. Sometimes a lisp is the right tool, sometimes it isn’t. Claiming that “getting out of bed and programming in anything other than a lisp makes life less worth living” is at best as extremely immature and strange stance to take.
- boothby 2y agoI'm a mathematician working in a common lisp shop, and sometimes, I really do feel that I'm living the dream. We're presently hiring, with more of a focus on software engineering than doodling on pure math, of course, but we'd be eager to interview somebody with love for math and common lisp. Email's in my profile.
- quotemstr 2y agoHow did you guys end up with CL?
- vindarel 2y agoIt looks like CL is all the rage for quantum computing (and some AI companies). https://github.com/CodyReichert/awesome-cl https://github.com/CodyReichert/awesome-cl Thinking about recent feedback: - https://blog.funcall.org//lisp%20psychoacoustics/2024/05/01/worlds-loudest-lisp-program/ https://blog.funcall.org//lisp%20psychoacoustics/2024/05/01/... (https://news.ycombinator.com/item?id=40233736 https://news.ycombinator.com/item?id=40233736) (2024) - https://news.ycombinator.com/item?id=33467269 https://news.ycombinator.com/item?id=33467269 (2022) "Common Lisp was a conscious decision because it allows a small team to be incredibly productive, plus the fact that it's a live image allows you to connect to it over the internet and poke and prod the current state, which has really allowed a much clearer understanding of the data." - https://lisp-journey.gitlab.io/blog/lisp-interview-kina/ https://lisp-journey.gitlab.io/blog/lisp-interview-kina/ (2020)
- waynecochran 2y agoVery enticing. My work is largely in computer vision and gpu programming. I feel far removed the rare air I once breathed programming lisp.
- nerdponx 2y agoFunny, the mathematician I know that works at a CL shop hates it, and is eager to transition into data science in a Python shop. From what he has told me, the Allegro IDE is unpleasant and antiquated-feeling, and the code is hard to work with / not of particularly high quality.
- quotemstr 2y agoThe best you can do is bring the principles of lisp systems to more familiar languages. Lots of languages have lexical closures, macro systems, and introspection capabilities. Python is, famously, an "acceptable lisp": https://news.ycombinator.com/item?id=1803815 https://news.ycombinator.com/item?id=1803815 (Is something like Numba not a spiritual Lisp macro?)
- vindarel 2y agotrue, Python is a slow and unstable Common Lisp with no interactive debugger, no restarts, no "live image" interactivity, no core images, no binaries, no macros, no compile-time computing, less compile-time type warnings, less functional constructs, and a GIL.
- brazzy 2y agoBut also less parentheses!
- mst 2y agoperl has closures, block based scoping, custom keywords (not exactly a macro system but you can achieve similarly awesome crimes against syntax), heavy introspection, an optional condition system, compile time computing, an integrated interactive debugger core with multiple clients, more functional constructs than python, OO modeled on AMOP, and no GIL. Slow, bizarre in places, no live image though I can at least trivially replace function implementations and add methods to running code, binary building sucks, and there is of course a whole ass list of things that are uniquely awful (assume that the longest list you've seen from somebody who hates the language has 50% overlap with my personal list and that my list is probably longer) but ... it works. For me, at least. I loved scheme; I keep picking at common lisp getting slowly better at thinking in terms of the capabilities of a system that's image based and deeply condition-system-ed, and I hope to get there eventually :D
- ramenbytes 2y agoDo you have this list typed up somewhere?
- dang 2y agosetf is pretty imperative!
- waynecochran 2y agoYes ... yes it is.
- baq 2y agoone hard part I had to get over to start understanding what lisp actually is... it's an imperative language. c.f. scheme or clojure.
- dang 2y agoI think Common Lisp is nicely cosmopolitan. It has great support for whichever paradigm you want to program in, and/or you can build your own.
- ramenbytes 2y agoLike the Burger King of programming languages.
- akira2501 2y ago> by someone who can only think imperatively. The computer thinks imperatively. I prefer to be on common ground.