Reposting because it looks like federation failed.

I was just reading about it, it sounds like a pretty cool OS and package manager. Has anyone actually used it?

  • Ramin Honary
    link
    fedilink
    English
    6
    edit-2
    5 months ago

    Using Scheme instead of a purely functional language like Nix as the Nix/Guix expression language is a bold choice I am not sure I agree with.

    Scheme is the most functional of all non-purely-functional languages that I know of. What’s more, the parts of Guix in which packages are defined are quite pure, even using monads for some things, so it is really not too different from the Nix language.

    • Atemu
      link
      fedilink
      15 months ago

      the parts of Guix in which packages are defined are quite pure, even using monads for some things

      Monads have nothing to do with purity. In fact, one of the most infamous usages of them is Haskell’s IO monad which is probably the most impure construct in the entire language.

      it is really not too different from the Nix language.

      Hm, I can’t help but think that a lisp dialect can never really be similar to any language except another lisp.

      • @Spore@lemmy.ml
        link
        fedilink
        15 months ago

        No, monadic interface is used to programmatically access the store instead of being used to define packages. Packages are pure in Guix.

    • @CanadaPlusOP
      link
      15 months ago

      So I guess they just wanted to use an established language?

      • @jaeme@lemmy.ml
        link
        fedilink
        25 months ago

        Guile Scheme is the official extensions language for the GNU Project. Guile and Guix’s history often intersect as Guix is seen as the shining poster child of Guile and contributes to a lot of Guile’s development.

        When you say “Scheme” you should also refer to what type of Scheme you’re referring to as there are multiple with different feature sets/goals.