• 0 Posts
  • 29 Comments
Joined 2 years ago
cake
Cake day: July 12th, 2023

help-circle

  • I loved programming since I was 14. This was an acceptable passion to spend time on because it would allow me to be successful (read: make money).

    My sister always loved visual art, and is now in art school. This is an unacceptable passion, and when she tells people that she’s in art school the first response is almost always “oh so what are you planning to do with that degree?”

    We have been conditioned into a very narrow definition of success. It’s not surprising then that we start seeing art as “the next big problem to solve”, and you have all these tech bros frothing at the mouth to be the first to “solve” it and become the next startup billionaire.

    Low-effort art and music has always been around. You don’t see anyone bumping those inoffensive cover albums and lounge remixes that you hear at the mall or the driving range in their cars though. Anyone who doesn’t already love listening to music isn’t in that position because of a lack of options in the (sigh) market. So I promise you won’t see “billions of new customers” dying to consume derivative slop music.










  • Nix being an expression based functional language, it doesn’t really make sense to have something like let x=y; since this looks to most people like a statement (i.e. a line of code that gets executed as part of a sequence). This doesn’t exist in nix—instead you have expressions that get lazily evaluated, possibly out of order compared to what you’d expect. let x=y in makes it more clear that the variable binding you’re doing is only in scope for the current expression, which reads something like “let x refer to y in x + 3”

    The function definition syntax is unusual but definitely not unintuitive imo. It captures the simplicity of the function semantics of nix—a function is just a mapping/transformation from one value (or set of values) to another. I don’t think it’s too much overhead to learn that they use : to mean this instead of =>

    In terms of why they picked this syntax, it follows the traditions of other functional languages such as the ML family, Haskell etc.