Closed max-sixty closed 2 years ago
Because |
is equivalent to \n
, this:
(
temp_c
iden
)
is equivalent to:
( | temp_c | iden | )
Value is the first entry in pipeline, so one would have to write:
func iden x = x
from foo
derive bar: (temp_c
iden
)
I would be more convenient to be able to determine that value is actually the second entry, but I think that for would require better types for currying, which we currently don't have.
Until we do, I think this can remain a rough edge, just as ( | derive x )
is.
Thanks @aljazerzen , that clear in retrospect.
It's not an ideal state — it means functions need to be on one line! I suspect this might not be easy to resolve without the full type system; I'll reflect more. We could add \
but I'm not sure it helps with the confusion, even if it does with the line length.
Functions on the same line? No just the first item (the value) must be in the same line. Function currys can be on lines below.
Anyway, this will be ironed out, when typing hits. And I believe we are not far from it. When window functions & website are done we can release 0.2 and I can get started on this.
Anyway, this will be ironed out, when typing hits. And I believe we are not far from it. When window functions & website are done we can release 0.2 and I can get started on this.
Amazing if you think it's not far (though I suspect it'll be a lot of work!)
I will do a review of where we're at for 0.2 and follow up on some of the things we had discussed.
Updated example to use 0.3 syntax:
func iden x -> x
from foo
derive bar = (temp_c | iden)
Currently, this works:
But this doesn't:
I think this should probably work:
|
and linebreaks