Skip to content

Commit ac55ac3

Browse files
author
heineman
committed
Continuing documenting steps to run and cleaning up code.
1 parent f860e21 commit ac55ac3

File tree

4 files changed

+40
-6
lines changed

4 files changed

+40
-6
lines changed

Diff for: README.md

+4-2
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ Once you have downloaded the code from github, use the following statement
183183
from within the `$HOME` directory.
184184

185185
```
186-
sbt language-java/run
186+
sbt "language-java/runMain org.combinators.ep.language.java.GenerateAllJ"
187187
```
188188

189189
This will initiate the generation of Java code for all approaches for the following system:
@@ -193,7 +193,7 @@ This will initiate the generation of Java code for all approaches for the follow
193193
To generate Scala code for the above system, use the command:
194194

195195
```
196-
sbt language-newScala/run
196+
sbt "language-newScala/runMain org.combinators.ep.language.scala.codegen.GenerateAllJ"
197197
```
198198

199199
The generation time will vary, based upon your computer, but it should take about
@@ -329,6 +329,8 @@ output generated by our [GraphViz](core/src/main/scala/org/combinators/ep/domain
329329
All generated Scala code is compiled using Scala version 3.3.3 and version
330330
3.2.19 of the [Scalactic testing framework](https://www.scalatest.org/)
331331

332+
Python scripts require Python 3. Only the `scipy` package needs to be installed.
333+
332334
# References
333335

334336
1. Wadler, Philip, [Email to to Java Genericity Mailing List](http://homepages.inf.ed.ac.uk/wadler/papers/expression/expression.txt)

Diff for: TECHNICAL.txt

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
When you have a fresh clone of the git repository, enter the command `sbt compile` in the
2+
top-level directory to compile EpCoGen. SBT will properly install all necessary software
3+
libraries.
4+
5+
We have tested with SBT versions of 1.7.1, 1.9.8, and 1.10.7.
6+
7+
If your Java version is too advanced for the sbt, you may need to add the
8+
following to the build.st file to lower the associated Java version.
9+
10+
javacOptions ++= Seq("-source", "11", "-target", "11"),
11+
12+
And then you can install an openJDK version of Java 11 and use it by setting JAVA_HOME
13+
properly and/or configuring PATH variable appropriately.
14+
15+
===================================
16+
Examples to run
17+
===================================
18+
19+
Sample commands to run. The first column shows the time it was launched, so to generate all
20+
evolution stages for all approaches on a Linux machine took just under an hour. And the
21+
compiling process for all code took just about three hours.
22+
23+
15:17 sbt language-java/run
24+
16:08 cd target/
25+
16:09 cd ep-java
26+
16:11 python3 ../../scripts/compare.py ../../scripts/systems/system-main.json >> REPORT
27+
16:12 python3 ../../scripts/compile-java.py
28+
19:08 python3 ../../scripts/process-java.py > STATISTICS
29+
19:09 cd ..
30+
19:11 sbt "helloWorld/runMain org.combinators.fibonacci.FibonacciWithLucasScalaDirectToDiskMain"
31+
19:13 cd target/fib
32+
19:13 cd scala/
33+
19:13 sbt test

Diff for: language/inbetween/src/main/scala/org/combinators/ep/language/inbetween/functional/control/Functional.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ package org.combinators.ep.language.inbetween.functional.control
22

33
import org.combinators.ep.generator.Command.Generator
44
import org.combinators.ep.generator.{Command, Understands, paradigm}
5-
import org.combinators.ep.generator.paradigm.{Apply, IfThenElse, Reify, control}
6-
import org.combinators.ep.generator.paradigm.control.{PatternMatch, DeclareFunVariable => DFV, Functional => Fun}
5+
import org.combinators.ep.generator.paradigm.{Apply, Reify, control}
6+
import org.combinators.ep.generator.paradigm.control.{DeclareFunVariable => DFV, Functional => Fun}
77
import org.combinators.ep.language.inbetween.any
88
import org.combinators.ep.language.inbetween.any.AnyParadigm
99

Diff for: oldVersion.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,7 @@ In sbt, execute the command `language-haskell/run`.
3333

3434
Now in a separate terminal window request access to a git repository that would be generated, something like:
3535

36-
`git clone http://localhost:9000/grow/m5/m5.git`
37-
36+
`git clone http://localhost:9000/grow/m4/m4.git`
3837

3938
Valid values include:
4039

0 commit comments

Comments
 (0)