idris-java icon indicating copy to clipboard operation
idris-java copied to clipboard

Installation instructions are needed

Open zraffer opened this issue 11 years ago • 8 comments

Currently there are no explanation how to attach this backend to Idris (neither in README nor in the wiki). I'd like to try it, but have no clue how to do it. Should I compile it before Idris? Or after Idris? Should I use any flags for compiling?

Thank you in advance.

zraffer avatar Dec 20 '14 07:12 zraffer

Basically here's how the Java backend works:

  1. Install Idris first.
  2. Install Idris-java via cabal install (quite the standard way of doing it)
  3. Compile a simple program (you'll need the .ibc file before Java code generation)
$ idris --check hello.idr
$ idris-java -o hello hello.ibc
$ ./hello

hello is a self-contained executable (with compiled Java bytecode)

This repository, indeed, needs some more documentation to help people getting started...

soimort avatar Jan 03 '15 10:01 soimort

@soimort Thank you, your solution is working.

zraffer avatar Jan 03 '15 12:01 zraffer

The more usual is to use idris --codegen java hello.ibc -o hello, instructing idris to invoke idris-java itself.

Melvar avatar Jan 03 '15 12:01 Melvar

The Idris wiki has horrendously out of date information for working with the different backend. Maybe it is a good idea for someone to update with moew current information, and to duplicate instructions for java here...

jfdm avatar Jan 03 '15 12:01 jfdm

Right now I'm not sure, the back-end even works. Edwin did the refactoring without giving much thought to it and I didn't have the time yet, to fix/update it. I suspect that it is also terribly out of date with respect to the features of the newest Idris versions.

JanBessai avatar Jan 03 '15 15:01 JanBessai

I just tried it with a fibonacci function and it worked. I haven't tried anything else.

How can one obtain the generated maven project and java source instead of the resulting executable?

All I can do with the result as is is a) run it as an executable file, in which case the fact that it's java is mostly irrelevant, or b) unpack it, getting a bunch of compiled classes and MANIFESTs.

Is the resulting executable file a valid JAR file? I can see that java can run it, and that unzip can unpack it, but is it going to work on other platforms?

ivanperez-keera avatar Apr 18 '15 08:04 ivanperez-keera

I've added instructions on how to install. There are also basic instructions on how to use the JAVA_IO monad. I'm working on a short tutorial but I see this as separate. Unless someone objects I'll close this soon.

bgaster avatar Sep 25 '15 19:09 bgaster

Great! Thank you!

zraffer avatar Sep 26 '15 15:09 zraffer