With a fresh install of the current version of UCM, it appears that the base library is not included. It is required to run pull unison.public.base.latest lib.base at the UCM prompt, or else basic types (Text for example) are not found and nothing works.
I've never installed Unison, so I'm bumbling around with no clue in a strange system. Fortunately a kind soul left a comment on Exercism's Youtube video to help out.
Another comment mentions needing fork .base lib.base. That command caused an error for me, but fortunately it seems it's not needed. I don't know what the right procedure for getting started is, but it would be great to have it spelled out a bit more in HELP.md for the current version of Unison. To be fair, the Unison Quickstart guide also does not mention anything about it, despite what appears to be a significant effort to make the docs and system friendly to new users.
How to repeat
quickstart/main> cd .exercism.hello_world
☝️ The namespace .exercism.hello_world is empty.
.exercism.hello_world>
.exercism.hello_world> ls
nothing to show
.exercism.hello_world> add
😶
There's nothing for me to add right now.
Hint: I'm currently watching for definitions in .u files under the
~/g/exercism/unison/hello-world directory. Make sure you've updated something there
before using the `add` or `update` commands, or use `load` to load a file explicitly.
.exercism.hello_world> load hello.u
❓
I couldn't resolve any of these symbols:
2 | hello.hello : Text
Symbol Suggestions
Text No matches
.exercism.hello_world> fork .base lib.base
⚠️
The namespace .base doesn't exist.
.exercism.hello_world> pull unison.public.base.latest lib.base
Downloaded 779 entities.
✅
Successfully pulled into lib.base, which was empty.
.exercism.hello_world> fork .base lib.base
⚠️
The namespace .base doesn't exist.
.exercism.hello_world> fork lib.base
`fork src dest`creates the namespace `dest` as a copy of `src`.
.exercism.hello_world> load hello.u
I found and typechecked these definitions in hello.u. If you do an `add` or `update`, here's
how your codebase would change:
⍟ These new definitions are ok to `add`:
hello.hello : Text
.exercism.hello_world> add
⍟ I've added these definitions:
hello.hello : Text
.exercism.hello_world> load hello.test.u
I found and typechecked these definitions in hello.test.u. If you do an `add` or `update`,
here's how your codebase would change:
⍟ These new definitions are ok to `add`:
hello.test : Test
hello.tests : [Result]
Now evaluating any watch expressions (lines starting with `>`)... Ctrl+C cancels.
6 | test> hello.tests = runAll [hello.test]
✅ Passed : Passed 1 tests.
.exercism.hello_world>
With a fresh install of the current version of UCM, it appears that the base library is not included. It is required to run
pull unison.public.base.latest lib.base
at the UCM prompt, or else basic types (Text
for example) are not found and nothing works.I've never installed Unison, so I'm bumbling around with no clue in a strange system. Fortunately a kind soul left a comment on Exercism's Youtube video to help out.
Another comment mentions needing
fork .base lib.base
. That command caused an error for me, but fortunately it seems it's not needed. I don't know what the right procedure for getting started is, but it would be great to have it spelled out a bit more in HELP.md for the current version of Unison. To be fair, the Unison Quickstart guide also does not mention anything about it, despite what appears to be a significant effort to make the docs and system friendly to new users.How to repeat
System information
Arch Linux Latest (releases/M5g) ucm-linux.tar.gz downloaded from https://github.com/unisonweb/unison/releases/download/release%2FM5g/ucm-linux.tar.gz