P

Pierre Neidhardt

ambrevar.xyz · Personal blog · on HN since 2018

Pierre Neidhardt writes about Guix, Emacs, and Common Lisp, including using a Lisp REPL as his main shell.

What HN saysHN links his posts as overviews of what makes Guix advanced and of modern Common Lisp practices.
21HN people shared it
6linked it in comments
21stories submitted
946story points
5 years agolast shared
2018people per year2026

Most-shared posts

  1. 1
    Guix: An advanced operating system
    4 people · 314 points · first shared 2019 · 168 comments on HN
  2. 2
    Guix: A most advanced operating system
    4 people · 47 points · first shared 2019 · 12 comments on HN
  3. 3
    Emacs Everywhere
    3 people · 9 points · first shared 2018 · discussion on HN
  4. 4
    Modern, functional Common Lisp: myths and best practices
    2 people · 226 points · first shared 2020 · 155 comments on HN
  5. 5
    Modern, functional Common Lisp: myths and tips (2020)
    2 people · 113 points · first shared 2020 · 19 comments on HN
  6. 6
    A blog in pure Org/Lisp
    2 people · 58 points · first shared 2018 · 24 comments on HN
  7. 7
    Why GNU Guix Matters
    2 people · 16 points · first shared 2020 · 7 comments on HN
  8. 8
    A Lisp REPL as my main shell
    1 people · 149 points · first shared 2021 · 30 comments on HN
  9. 9
    What if you lost your computer just now?
    1 people · 6 points · first shared 2019 · 1 comments on HN
  10. 10
    Guix: “Search and Discovery” NLNet Grant 2020
    1 people · 3 points · first shared 2020 · discussion on HN
  11. 11
    Eshell versus M-X Shell
    1 people · 2 points · first shared 2020 · discussion on HN
  12. 12
    Technologies for Non-Programmers
    1 people · 2 points · first shared 2019 · 1 comments on HN
  13. 13
    Emacs Everywhere
    1 people · 1 points · first shared 2020 · discussion on HN
  14. 14
    Guix packaging
    1 people · first shared 2019
  15. 15
    Lisp repl shell
    1 people · first shared 2021

What HN people wrote when they linked it

rgoulter · 2021-09-10
Fish shell's joke tagline is "Finally, a command line shell for the 90s". I believe that the developer experience for all sorts of tooling has improved dramatically over the last 15 years or so, coinciding with GitHub's rise in popularity. e.g. the plugin ecosystem for Vim or Emacs have improved, let alone options like VSCode. Tools like Vagrant made it easier to work with VMs. Containerised workflows have similarly improved some cases. Languages like Go-lang or Rust seem pretty nice in some cases. etc. Shells are also the kind of thing that developers use. I don't believe bash is the best we can practically get. -- Though.. I have heard of other, fancier shells; (or cool ideas like https://ambrevar.xyz/lisp-repl-shell/ or http://howardism.org/Technical/Emacs/literate-devops.html). These haven't caught on.
one-punch · 2021-01-22
You might be interested in using Guix [1] for reproducible research, as is reported earlier (for genomics analysis) [2] and still actively developed [3]. As a bonus, Guix and Nix [4] allow for modular and composable pipelines, where you can swap different components (such as to upgrade Python from 3.8 to 3.9, or to enable certain optimizations for some Python libraries, or to run on MacOS and Linux while keeping the whole stack more or less the same), which would be more difficult to do reproducibly with other tools such as Docker (composing Guix or Nix functions are easier than composing DOCKERFILE or Docker Compose). [1]: https://ambrevar.xyz/guix-advance/ [2]: https://academic.oup.com/gigascience/article/7/12/giy123/5114263 [3]: https://hpc.guix.info/blog/2020/11/hpc-reproducible-research-in-guix-1… [4]: https://builtwithnix.org/
vseloved · 2020-04-16
There's a pretty good overview in this writeup (which is the most recent one): https://ambrevar.xyz/modern-common-lisp/index.html
opan · 2019-05-21
Advanced meaning powerful with lots of features and functionality. There's a good writeup on it here[1]. [1] https://ambrevar.xyz/guix-advance/index.html
Crestwave · 2019-05-03
It's not just like those at all... did you think that I was saying that you can just compile things manually or something? You can define build options and such for a group of packages using Guix; there just isn't an abstraction like USE flags. You can find more info at https://ambrevar.xyz/guix-advance/index.html#orgc3c05c9. And I don't consider its other features just "some nice addons". It's easy to build things from source; in fact, it automatically does it by default if a binary isn't available. It's contained in a directory, you can roll back to a previous state, it's reproducible, everything can be configured through one file, etc. Guix is one of the package managers most different from apt and such; if there's anything it's similar to, it's Nix, which IIRC it's based on/inspired by. Also, I'm curious as to what it is that you do that they shun? Is it working on proprietary software or something?
Ambrevar · 2019-01-15
Others gave good answers I think, so I'll just address your points directly. > [Nix is] so complex with layers of interesting syntax and puncation Precisely. Guix uses Scheme all over the place. It's just _one_ language for everything, not multiple languages. As a result, it's easier. Scheme yields very easy-to-read declarations (see https://ambrevar.xyz/guix-packaging for some examples), so JSON & friends don't add much here. > Parsing and automation Parsing couldn't be simpler than using the language itself! There is no need to write an interpreter here. > Why do I need to learn yet another language just to configure and manage my system? That's precisely part of my thesis: with Guix, you only need to know Lisp/Scheme (which users might already know since it's a general-purpose language). Programs going for a DSL are effectively forcing everyone to learn a language for the sole sake of using the programs.

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close