Frege / frege

Frege is a Haskell for the JVM. It brings purely functional programing to the Java platform.
https://github.com/Frege/frege/wiki/_pages
Other
3.64k stars 145 forks source link

FregeDoc on directories yields ClassCastException #392

Open Dierk opened 4 years ago

Dierk commented 4 years ago

as of version 3.25.84, calling frege.tools.Doc with a directory rather than a module name yields

Exception in thread "main" java.lang.ClassCastException: frege.runtime.BlackHole cannot be cast to java.io.File
        at frege.tools.Doc$1Let$24361$1.call(Doc.java:5916)
        at frege.tools.Doc$1Let$24361$1.call(Doc.java:5914)
        at frege.run8.Thunk.call(Thunk.java:230)
        at frege.tools.Doc.lambda$docDirEntry$197(Doc.java:5923)

What if file.list https://github.com/Frege/frege/blob/06bdbec0c8f2bb3990502958614ea5fe6be9654c/frege/tools/Doc.fr#L260 yields problematic entries like ".DS_Store" on Mac..

szabi commented 4 years ago

Hi, Dirk,

I see you've performed some clean-up tasks on the Frege repo recently.

Do you have some plans for the project looking forward?

Dierk commented 4 years ago

Yes, I work on the project when time allows - and every now and then, I have master students working on it - or with it, see https://dierk.github.io/Home/ Do you have any specific reason for asking?

renatoathaydes commented 2 years ago

Just so you know: Frege does not appear to work on Java 11+.

The last artifact published on Maven Central: Last updated: Tue, 29 Sep 2015 18:55:08 +0200

So I guess this project has been pretty much abandoned for a long time.

The error I get is this:

Exception in thread "Thread-2" java.lang.ExceptionInInitializerError
        at frege.interpreter.FregeInterpreter$36.eval(FregeInterpreter.java:7589)
        at frege.interpreter.FregeInterpreter$36.eval(FregeInterpreter.java:7541)
        at frege.runtime.Fun1$1.eval(Fun1.java:63)
...
Caused by: frege.runtime.Undefined: strange java.specification.version: Just "11"
        at frege.prelude.PreludeBase.error(PreludeBase.java:17968)
        at frege.compiler.types.Targets$1$1.eval(Targets.java:831)
        at frege.runtime.Delayed.call(Delayed.java:198)
        at frege.runtime.Delayed.forced(Delayed.java:257)
        at frege.prelude.Maybe.fromMaybe(Maybe.java:1247)
        at frege.compiler.types.Targets$1.eval(Targets.java:828)
        at frege.compiler.types.Targets$1.eval(Targets.java:821)
        at frege.runtime.Delayed.call(Delayed.java:198)
        at frege.runtime.Delayed.forced(Delayed.java:267)
        at frege.compiler.common.CompilerOptions.<clinit>(CompilerOptions.java:366)
Ingo60 commented 2 years ago

No wonder, as the Maven Version is totally out of date. You cannot use it.