Absolutely agreed that the package set is a vital part of the user experience. IMO the prototype shows that this is possible by either leveraging nixpkgs itself through interoperability, or by bootstrapping, which is feasible, but requires ongoing maintenance by many people to get right.
I’ve built enough out that I’ve convinced myself that zb is already a reasonable base: Lua supports laziness through meta-tables, I just haven’t gotten around to sketching that out. I’m of the opinion that as long as a language supports the string-with-dependency-information trick that Nix acquired, the rest of the functional programming language parts aren’t as necessary and can be done with library support. In fact, I rather appreciated that in my prototyping that Lua would raise errors that I introduced about packages that I hadn’t built yet, and with easy stack traces to follow.