First, you install npm and Java SE.
Then, you install eolang package:
$ npm install -g eolang
Then, you write a simple EO program in hello.eo
file
in the current directory:
[args...] > hello
QQ.io.stdout > @
"Hello, world!\n"
Then, you run it:
$ eoc dataize hello
That's it.
You can also do many other things with eoc
commands
(the flow is explained in this blog post):
register
finds necessary EO files and registers them in a JSON catalogassemble
parses EO files into XMIR, optimizes them, and pulls foreign EO objectstranspile
converts XMIR to target programming language (Java by default)compile
converts target language sources to binarieslink
puts all binaries together into a single executable binarydataize
executes the binary and dataizes a single objecttest
executes all visible unit tests
There are also commands that help manipulate with XMIR and EO sources (some of them are not implemented as of yet):
audit
inspects all required packages and reports their statusforeign
inspects all objects found in the program afterassemble
steptranslate
converts Java/C++/Python/etc. program to EO programdemu
removescage
andmemory
objectsdejump
removesgoto
objectsinfer
suggests object names where it's possible to infer themflatten
moves inner objects to upper level
This command line toolkit simply integrates other tools available in @objectionary GitHub organization.
First, run npm install
. Then, run grunt
. All tests should pass.
If you want to run a single test:
$ npm test -- test/test_mvnw.js
Make your changes and then make a pull request.