Hacker News new | past | comments | ask | show | jobs | submit login

> the Scheme programming language doesn't solve some/all those problems you mention

Yes, the Scheme programming language doesn't solve any those problems I mention.

> improvements to the language

Despite of the language, if we speak about Linux distros, I need all those pesky blobs to get my desktop running. And, by the way, is there anything alike to flakes, so I can have an actually reproducible build, not a mess of channels?




You can pin nixpkgs without channels directly in your configuration using fetchgit and import.

You can even do this multiple times (don’t do it too many times though as it will increase evals times) and doing this you can run all kinds of different software at different versions.


If misquoting someone intentionally seems like normal behaviour to you, I'll leave the discussion there, thanks


Actually, just in case any sincerely interested people are browsing, let me address your original points re. Nix's DSL, which made me wonder if you had read about Guix and Guile:

> Nix is bad because the language is very limited and extremely hard to debug and the module system is fragile and obscure

-- Limited :: here's a collection of Guile software https://sph.mn/foreign/guile-software.html. It's not Python, but it is a general purpose language used by lots of people for serious software work, with a nice library of lovely Scheme books for learning, too

-- Hard to debug :: Guile has built-in debugging support, and there are interfaces like Geiser in Emacs with extra tools, and also support for interacting with GDB

-- Module system :: Guile's module system was first implemented in 1996, I learned from browsing there. Anyway https://www.gnu.org/software/guile/manual/html_node/Modules....

So yes, if you don't like Lisps, or don't have time to learn new things, or don't like something else about Guix, by all means, steer clear. But the statement: "there's no Nix but with a general purpose, powerful programming language" is, I think, demonstrably false.


> if you don't like Lisps

I don't like impure languages with weak type systems. Ironically, I mostly use Scala, which is an impure language but it has a very powerful type system, unlike any other.


Such a waste of a throwaway account. I can explain what's wrong with Guix and Scheme in detail but who cares.


First you misquote me in an oddly obvious and low-effort way, now another inane comment - how can the nature of this account have any relevance?

You wrote a comment implying what's wrong with Nix is the language, and stating that there's unfortunately "nothing better" out there.

It is true in this universe that there is a software project called GNU Guix, which is 13 years old, whose literal origin idea is - what if we take the general idea behind Nix, but write it all afresh in a fully featured programming language, and make it extensible and configurable with that language.

There are a host of reasons you might not want to get into that personally, as I stated - but it really does exist, regardless of your personal feelings?


To be very short, I see two issues there:

1) Nix language is ugly but it's pure. Scheme is not. To my taste it's even harder to reason about/debug/introspect because of lack of purity.

2) Guix itself lacks any nonfree software/blobs, which is essential to run a real desktop. That is a showstopper for newcomers and in my opinion that's what prevent the community growth, so there are much less packages, docs, etc.

2.1) There were channels to add nonfree blobs, but channels make system less reproducible and they were unofficial. Maybe I'm not up to date with the Guix developments, but as far as I'm aware there is no replacement for Flakes and a system with multiple channels is not reproducible and easy to break.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: