Live data from Hacker News

Ante: A low-level functional language

antelang.org

1–10 of 226 posts

Re: Ante: A low-level functional language

#3
The syntax looks a little funky to me but it's still quite interesting. Is there a reason why you would make fn(1) and fn 1 equivalent? For me personally it makes readability worse and looks strange when chaining functions like in their last example on their landing page.

On mobile horizontal scrolling through the code snippets will trigger switching to the next snippet on my phone.

Re: Ante: A low-level functional language

#5
post #3

The syntax looks a little funky to me but it's still quite interesting. Is there a reason why you would make fn(1) and fn 1 equivalent? For me personally it makes readability worse and looks strange when chaining functions like in their last example on their landing page. On mobile horizontal scrolling through the code snippets will trigger switching to the next snippet on my phone.

> Is there a reason why you would make fn(1) and fn 1 equivalent?

If your standard function call convention is just `f x`, but you also support precedence operators, then `f (x)` automatically becomes possible.

It reminds me of an old Lisp joke, though:

    f x   -- too mathematical!
    (f x) -- too many parenthesis!
    f(x)  -- just right!

Re: Ante: A low-level functional language

#6
post #3

The syntax looks a little funky to me but it's still quite interesting. Is there a reason why you would make fn(1) and fn 1 equivalent? For me personally it makes readability worse and looks strange when chaining functions like in their last example on their landing page. On mobile horizontal scrolling through the code snippets will trigger switching to the next snippet on my phone.

It seems the parenthesis are only used to indicate the priority, like in Haskell, so you wouldn't really use them for `fn (1)`.

Re: Ante: A low-level functional language

#7
post #3

The syntax looks a little funky to me but it's still quite interesting. Is there a reason why you would make fn(1) and fn 1 equivalent? For me personally it makes readability worse and looks strange when chaining functions like in their last example on their landing page. On mobile horizontal scrolling through the code snippets will trigger switching to the next snippet on my phone.

Those two function calls are the same thing in OCaml and Standard ML.

Re: Ante: A low-level functional language

#8

Very interesting stuff! I didn't even thought is possible to implement a low level functional languages, I always thought a functional language requires a ton of abstractions.

At the end of the day what prevents functional languages from being a good fit for low-level programming is that effective low-level programming cannot be referentially transparent.

Might be my 2 cents, but i think Rust can hit a very sweet spot for functionally-leaning low-level effective programming.

Re: Ante: A low-level functional language

#9
post #3

The syntax looks a little funky to me but it's still quite interesting. Is there a reason why you would make fn(1) and fn 1 equivalent? For me personally it makes readability worse and looks strange when chaining functions like in their last example on their landing page. On mobile horizontal scrolling through the code snippets will trigger switching to the next snippet on my phone.

Those two function calls are the same thing in OCaml and Standard ML.

Coming from OCaml, F# uses the same syntax. Works very well.

Re: Ante: A low-level functional language

#10
post #5
post #3

The syntax looks a little funky to me but it's still quite interesting. Is there a reason why you would make fn(1) and fn 1 equivalent? For me personally it makes readability worse and looks strange when chaining functions like in their last example on their landing page. On mobile horizontal scrolling through the code snippets will trigger switching to the next snippet on my phone.

> Is there a reason why you would make fn(1) and fn 1 equivalent? If your standard function call convention is just `f x`, but you also support precedence operators, then `f (x)` automatically becomes possible. It reminds me of an old Lisp joke, though: f x -- too mathematical! (f x) -- too many parenthesis! f(x) -- just right!

> f x -- too mathematical!

:) yet we are very happy to use the same syntax in shell scripts or the shell itself.

Post reply on HN