Hacker News new | ask | show | jobs
by ciuncan 2116 days ago
I find the syntax as the author intended it to be: clean. I agree with the ambiguity of positional parameters at first glance. Although named parameters (e.g. in Scala) somewhat solve this, they are optional. Having the parameters with their explicit name makes it quite readable.

  myList
      .append(5)
      .reverse
      .put(5) atIndex(0)
      .++(anotherList)
      .select(x | x.isEven)
Edit: The same feature makes it look a little weird when put on a single line, because we mentally parse the whitespace as separator but in this case it is not:

  $.name("Keli") age(50).isOld
It looks like a refreshing addition to function programming languages and I'd like to see where it goes from here, in terms of adoption and features.
1 comments

$.name("Keli" :age 50).isOld

wold've been nicer to me but ah well.

I can understand $.(:name "Keli" :age 50) but not $.name("Keli" :age 50), why should the age bit go inside the parens? This introduces an asymmetry where the first key appears outside parents and subsequent keys appear inside (and as colon-initialed keywords?!)
I agree, having age(50) separate almost looks like a separate function call.