Recent submissions

Comment · 4 years ago
I love Common Lisp. But I don't think you can look at a list of features and decide if it's a good choice to use or if those features are now "covered" by more recent languages. Not all REPLs (for example) are born equal, and recent is rarely a good thing when picking a programming language. I don't always use Common Lisp, but when I do, I enjoy the combination, depth and maturity of many attractive features that have only recently been introduced elsewhere (like poweful macros or the ability to compile into a running program). Also, I think not knowing Lisp is in a way like not knowing any C. Regardless of what you use at work, there are huge parts of the literature and discussion about programming that are closed to you.
Comment · 4 years ago
The linked document isn't representative of books on Lisp or Emacs---it reads like a half-finished idea for a sketch of a pitch for a book. Since it is more than 10 years old, the project likely got abandoned at a very early stage. Writing a book is a lot of work, so don't mean this as criticism against the author. Just thought I'd say it in case someone doesn't want to waste time downloading and building something unfinished.
Comment · 4 years ago
"in droves" isn't exactly a neutral expression, either. Says something about how they see workers.
Comment · 4 years ago
For any laptop, I want at least full hd 15 inch screen, the very best keyboard (centered, without numpad) and a trackpoint. If it comes without dedicated graphics, that's a bonus. This means a thinkpad, afaik.

So unless I wanna spend a fortune on the new Thinkpad P1 (I don't!), I think the best option is a modded T530. I installed a 1920x1080 screen with great color, upgraded RAM to 16G, put in two SSDs and retrofitted a T420 keyboard (you need some scotch, a nail clipper and a BIOS hack). This is enough for my purposes---for now.

But you can also replace the heat sink and the processor using parts from a W530. Reportedly, this might also let you upgrade to 32G ram. So I'm confident that I'll be able to use this machine until I can either afford a P1, or lenovo puts out something even better.

Comment · 4 years ago
Oh, come on, did you mean to be polemic or not? :) I think it's a hard sell to claim that the article was actually directed at a small, perhaps barely existent, group of Unix users who seem to be either afraid of the mouse (!) or proud not to use it.

I'll rather accept what you said earlier in this thread (the "I wrote this mess ..." post): that you simply meant to be provocative. That's OK in my book, even when it doesn't turn out all that great. Nothing wrong with the rest of the article, either.

Comment · 4 years ago
What part of "I'm not saying you can't get pains from a keyboard" is unclear, would you say?

As you seem to have missed it, the author isn't positioning himself as a dogmatist using the mouse. He is calling Unix users who don't use the mouse dogmatists.

Comment · 4 years ago
Hahaha, like you are some sort of brave free-thinker for using the mouse! There are tons of reasons for preferring the keyboard, one of which is to alleviate the hand and shoulder pains resulting from pointing and clicking with a mouse for 35 years ... Go into any work place where people work with mouse-heavy applications all day, and count the number of employees who have had to resort to special solutions, like trackballs, trackpoints or roller-bars. I'm not saying you can't get pains from a keyboard---not least from Emacs unless you switch capslock and ctrl. But the intro to this article is kinda silly I think. It's not a statement to use the keyboard, and you certainly aren't a rebel if you don't.
Comment · 4 years ago
First of all, there are plenty of different data structures in Common Lisp. I don't know any Lisp resource that will tell you or encourage you to use lists for everything. For example, I think all the major Common Lisp books encourage you, explicitly, to use the advantages of different data structures.

Secondly, there is no contradiction between the usefulness of structs and the usefulness of nested lists and the ability to reach directly into them. But structs are no more a universal solution than lists are, so I don't know why you would be so hung up on them---in particular since we aren't discussing a particular use case.

I think the "unreadable monstrosity" thing in its various forms boils down to non-lispers not being used to car/cdr. That may be a fact, but it isn't an argument (and it takes about 5 mins to remedy).

Comment · 4 years ago
Actually, there is no need to make guesses about whether cdaddr is bad, unreadable, introduces hard to handle bugs or what the limits of list structure complexity should be. It isn't some new idea or brief historic oddity that you can pass whatever judgement on.

The term is at least 40 years old, standardized, still in use, has its own established pronunciation and isn't known to cause a lot of bugs. It is also at the periphery of the car/cdr body of terms -- i.e. programming tradition shows that the level of complexity it covers is needed (or the term would have disappeared), but any further is too rare to merit a shortcut. In addition, it is easy to remember what it does: each d is a cdr, each a is a car. So it isn't any harder to read than a chain of firsts, seconds, rests and nth n's.

Comment · 4 years ago
This isn't a very good article. First of all, this has to be the most rehashed curiosa topic about Lisp, ever. Secondly, "keeping in touch with tradition" isn't a shallow thing you do for fun---it is both about identity and about the ability to read and reuse code, even though it is decades old. And thirdly, the reason you keep car and cdr isn't only about tradition, but also about the ability to quickly reach into nested lists:

(cdaddr '(1 (2 (3 4 (5) (6 7) 8) 9) (10 1 3) 3)) => (1 3)

Without these oldies, you would have to write several combinations of first, second etc. and rest, or some combination of first/rest and nth n list.

Comment · 5 years ago
Great article! I like the approach to focus on things that ship per default and take no time to learn! Also didn't know about undo in region!
Comment · 5 years ago
I just wanted to say: Great article! It made me wanna try out Guix!
Comment · 5 years ago
Don't mean to come off like a zealot. To me, it sounds like the user accessed a show/hide-function in the graphical interface while using the mouse, and then didn't know how to bring it back (Control-Right Click or menu-bar-mode). The mistake and the ability to hide the menu-bar are both super common in any application and don't make Emacs fragile. Instructions for how to hide/un-hide stuff are in the manual.

I think people are just kidding themselves when they arrive at the conclusion that a program like Emacs---which is super mature, has a huge user base amongst very picky programmers and has survived in fierce competition for 45 years---is somehow fundamentally flawed, fragile etc. Of course it isn't. But it might not be your thing, and that's fine.

Comment · 5 years ago
You should probably tell Emacs users about it---they may not have noticed.
Comment · 5 years ago
Vim is a fantastic editor---no argument there!

But you can always revert a configuration choice you made without restarting Emacs. Either use the built in configuration interface, or evaluate a form with the change. For example, if you set something to t you can reset it to nil and just C-x-e that form.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton