Live data from Hacker News

Frege – a Haskell for the JVM

github.com

11–20 of 51 posts

Re: Frege – a Haskell for the JVM

#11
post #10
post #8

Is writing "pure" Haskell to be hosted in a non-Haskell imperative environment a common thing to do, as opposed to separating the pure and the imperative via monads? Seems to me that Frege could make this quite attractive.

I fail to understand the question. Isn't hosting "pure" Haskell code in an imperative modern OS environment a common thing to do?

I mean leaving IO to a program to which the (pure-only) Haskell code is linked, dispensing with monad-based separation. Frege seems to make this particularly easy.

Re: Frege – a Haskell for the JVM

#12

One of the weaknesses of Clojure on the JVM is its ridiculously long startup time. How fast does Frege start up on the JVM?

It's okay, at least when you have SSD or at least decent RAM.

Here is an example:

    ingo@freguntu:~/Frege/frege$ time java -jar fregec.jar -version
    3.23.900
    0:00.22 62016k
    ingo@freguntu:~/Frege/frege$ ls -l fregec.jar -rw------- 1 ingo ingo 33426802 Mär  6 12:32 fregec.jar

Re: Frege – a Haskell for the JVM

#13

One of the weaknesses of Clojure on the JVM is its ridiculously long startup time. How fast does Frege start up on the JVM?

It's okay, at least when you have SSD or at least decent RAM. Here is an example: ingo@freguntu:~/Frege/frege$ time java -jar fregec.jar -version 3.23.900 0:00.22 62016k ingo@freguntu:~/Frege/frege$ ls -l fregec.jar -rw------- 1 ingo ingo 33426802 Mär 6 12:32 fregec.jar

22 milliseconds? Unless I'm mistaken that's blazing fast?

Re: Frege – a Haskell for the JVM

#14
post #11
post #10

Earlier quoted context omitted.

I fail to understand the question. Isn't hosting "pure" Haskell code in an imperative modern OS environment a common thing to do?

I mean leaving IO to a program to which the (pure-only) Haskell code is linked, dispensing with monad-based separation. Frege seems to make this particularly easy.

That's not that different to the standard separation of Haskell code between "inside IO" and "outside IO", is it? In this case, the calling Java code "lives" inside IO (as all Java programs do).

Re: Frege – a Haskell for the JVM

#15
I need to take a serious look at Frege. I am writing a book on Haskell and I have spent years using various JVM languages, so Frege seems like a good bet to invest some time on - if the development environment, REPL style Dev, etc. is as smooth as it is for Haskell.

Re: Frege – a Haskell for the JVM

#16

Earlier quoted context omitted.

It's okay, at least when you have SSD or at least decent RAM. Here is an example: ingo@freguntu:~/Frege/frege$ time java -jar fregec.jar -version 3.23.900 0:00.22 62016k ingo@freguntu:~/Frege/frege$ ls -l fregec.jar -rw------- 1 ingo ingo 33426802 Mär 6 12:32 fregec.jar

22 milliseconds? Unless I'm mistaken that's blazing fast?

I believe that's 220ms. Which isn't too bad. But Clojure can usually match that if you AOT everything.

It's still too slow for serious command-line utils, though, so you're back to Haskell.

Re: Frege – a Haskell for the JVM

#17

One of the weaknesses of Clojure on the JVM is its ridiculously long startup time. How fast does Frege start up on the JVM?

It's okay, at least when you have SSD or at least decent RAM. Here is an example: ingo@freguntu:~/Frege/frege$ time java -jar fregec.jar -version 3.23.900 0:00.22 62016k ingo@freguntu:~/Frege/frege$ ls -l fregec.jar -rw------- 1 ingo ingo 33426802 Mär 6 12:32 fregec.jar

Aren't you checking the Frege compiler, there?

The complaint about Clojure is that Clojure apps start slow. Frege compiles to Java and from there to bytecode, so you'd need to compare a hello world in both languages to answer the original question, I think.

Re: Frege – a Haskell for the JVM

#20

One of the weaknesses of Clojure on the JVM is its ridiculously long startup time. How fast does Frege start up on the JVM?

On a server, it's a non-issue. On desktop, likely, too. Modern Android does AOT compilation. Hopefully by the time Frege is ready for Android this will not be a problem anymore.
Post reply on HN