1
1
mirror of https://github.com/anoma/juvix.git synced 2025-01-06 06:53:33 +03:00
juvix/app
Jan Mas Rovira 021f183d33
Run Nockma in an Anoma node (#3128)
# Changes
1. Adds a new command `juvix dev anoma node`. This command runs the
anoma node.
2. Adds a flag `--anoma-dir` to `juvix dev nockma run`. When given, it
must point to the anoma clone. Then, it will run the nockma code in the
anoma node and report the result (with no traces).

# Prerequisites
1. An anoma clone at some specific commit. 
   ```
   git clone git@github.com:anoma/anoma.git
   cd anoma
   git checkout 98e3660b91cd55f1d9424dcff9420425ae98f5f8
   
   # build anoma
   mix deps.get
   mix escript.install hex protobuf
   mix compile

   # build the client
   mix do --app anoma_client escript.build
   ```
2. The `mix` command (elixir).
3. The [`grpcurl`](https://github.com/fullstorydev/grpcurl) command. To
install a single binary in `~/.local/bin` you can run:
   ```
curl -sSL
"https://github.com/fullstorydev/grpcurl/releases/download/v1.9.1/grpcurl_1.9.1_linux_x86_64.tar.gz"
| tar -xz -C ~/.local/bin --no-wildcards grpcurl
   ```

# Testing
I've not included any test. It can be tested locally like this:
```
cd juvix/tests/Anoma/Compilation/positive
juvix compile anoma test001.juvix
echo 20 > args.debug.nockma
juvix dev nockma run --anoma-dir ~/projects/anoma test001.nockma --args args.debug.nockma
2024-10-29 17:32:59 +01:00
..
Commands Run Nockma in an Anoma node (#3128) 2024-10-29 17:32:59 +01:00
TopCommand Export Juvix source code to latex (#2917) 2024-08-05 11:28:19 +02:00
App.hs Run Nockma in an Anoma node (#3128) 2024-10-29 17:32:59 +01:00
AsmInterpreter.hs Replace polysemy by effectful (#2663) 2024-03-21 12:09:34 +00:00
CommonOptions.hs Run Nockma in an Anoma node (#3128) 2024-10-29 17:32:59 +01:00
Evaluator.hs Make compile targets a subcommand instead of a flag (#2700) 2024-04-09 13:29:07 +02:00
GlobalOptions.hs Logger (#2908) 2024-07-22 17:14:37 +02:00
HaskelineJB.hs upgrade to Ghc 9.8.1 (#2624) 2024-02-07 09:47:48 +00:00
Main.hs Export Juvix source code to latex (#2917) 2024-08-05 11:28:19 +02:00
RegInterpreter.hs Replace polysemy by effectful (#2663) 2024-03-21 12:09:34 +00:00
TopCommand.hs Logger (#2908) 2024-07-22 17:14:37 +02:00
TreeEvaluator.hs Replace polysemy by effectful (#2663) 2024-03-21 12:09:34 +00:00