Ark
Important Notice!!
We've ported to Go. We've still got the original C code, which you can find here.
Due to the name change, we've migrated the subreddit from /r/alloy_lang to /r/ark_lang, go subscribe! Finally, our IRC channel has moved from #alloy-lang to #ark-lang on freenode.
Resources
Installing
Requires Go to be installed and $GOPATH setup.
Fetching LLVM
Fetching LLVM bindings:
$ go get -d llvm.org/llvm/bindings/go/llvm
Note that this can fail! For some reason it rejects the certificate, if you're having this
problem, try this little workaround:
$ svn checkout https://llvm.org/svn/llvm-project/llvm/trunk
Then accept the certificate by typing p
then pressing enter
. Once you've done this
cancel the checkout, and delete any files it makes... then run the following:
$ go get -d llvm.org/llvm/bindings/go/llvm
Installing Ark
Building LLVM bindings (must be done first and may take a while).
$ cd $GOPATH/src/llvm.org/llvm/bindings/go/
$ ./build.sh
$ go install llvm.org/llvm/bindings/go/llvm
Building ark:
$ go get github.com/ark-lang/ark
$ go install github.com/ark-lang/ark
$ ark
Make sure $GOPATH/bin
is in your $PATH
.
Usage
For detailed usage information, run ark help
. For information on specific commands, use ark help <command>
.
Building
ark build tests/big_test.ark
##& Docgen
ark docgen tests/big_test.ark --dir some_output_dir
make gen
and make fmt
The target gen
is included for the convenience of the developers. It runs go generate
on all the modules in ark.
Testing
If Ark is in your $PATH
:
$ ./test.py
If Ark is not in your $PATH
:
$ PATH=$PATH:"./bin/" ./test.py
License
Ark is licensed under the MIT License.