<infinisil>
sphalerite: But yes, what you're trying to do does work
<sphalerite>
> 5
<{^_^}>
"{^_^}"
<infinisil>
> with {${"something" + "thatscertainlygoingtonotbedefined"} = null; }; somethingthatscertainlygoingtonotbedefined
<{^_^}>
"{^_^}"
<infinisil>
Um
<infinisil>
Haha
<infinisil>
Damn you
<infinisil>
> _show = x: if lib.isDerivation x then "<derivation ${x.drvPath}>" else x
<sphalerite>
>:D
<elvishjerricco>
So there's just no point at all in the special dollar let syntax, right? Like you can expression odd identifiers but you can't reference them
<{^_^}>
_show defined
<infinisil>
elvishjerricco: Maybe..
<sphalerite>
> let a = "b"; ${a} = "c"; in b
<{^_^}>
error: dynamic attributes not allowed in let at (string):192:1
<infinisil>
> let ${null} = 10; in "hello"
<{^_^}>
error: dynamic attributes not allowed in let at (string):192:1
<sphalerite>
> let ${"hello world"} = 5; in null
<{^_^}>
null
<sphalerite>
> let "hello world" = 5; in null
<{^_^}>
null
<sphalerite>
¯\_(ツ)_/¯
<infinisil>
Wait what
<infinisil>
Lol
<sphalerite>
infinisil: it's just binding a name containing a spacec
<sphalerite>
nothing worse
<sphalerite>
:)
<sphalerite>
not sure there's any way to *access* it at that point
<sphalerite>
#nix-gymnastics
<infinisil>
Yeah, that's pretty weird..
<infinisil>
Oh well, not the first weird thing I'm seeing with nix
<infinisil>
> weird3
<{^_^}>
"foo"
<infinisil>
> :v weird4
<{^_^}>
weird4 = let x = "foo"; in ({ x ? x }: x) {}
<infinisil>
> :v weird2
<{^_^}>
weird2 = let foo = "outer"; in with { foo = "inner"; }; foo
<infinisil>
> :v weird1
<{^_^}>
weird1 = (1.0 * 1) * 1
<infinisil>
> :v weird3
<{^_^}>
weird3 = let { body = "foo"; }
<sphalerite>
I think let {…} is just legacy let syntax
<infinisil>
I should add the __functor thing to these