unison/unison-src/transcripts/fix1532.output.md
Greg Pfeil 0031542faf
Add a space before code block info strings
This is for consistency with the `cmark` style. Now the blocks we still
pretty-print ourselves will match the bulk of them that `cmark`
produces.
2024-07-10 13:56:07 -06:00

1.4 KiB

scratch/main> builtins.merge

  Done.

First, lets create two namespaces. foo and bar, and add some definitions.

foo.x = 42
foo.y = 100
bar.z = x + y

  Loading changes detected in scratch.u.

  I found and typechecked these definitions in scratch.u. If you
  do an `add` or `update`, here's how your codebase would
  change:
  
    ⍟ These new definitions are ok to `add`:
    
      bar.z : Nat
      foo.x : Nat
      foo.y : Nat

scratch/main> add

  ⍟ I've added these definitions:
  
    bar.z : Nat
    foo.x : Nat
    foo.y : Nat

Let's see what we have created...

scratch/main> ls

  1. bar/     (1 term)
  2. builtin/ (469 terms, 74 types)
  3. foo/     (2 terms)

Now, if we try deleting the namespace foo, we get an error, as expected.

scratch/main> delete.namespace foo

  ⚠️
  
  I didn't delete the namespace because the following
  definitions are still in use.
  
  Dependency   Referenced In
  x            1. bar.z
               
  y            2. bar.z
  
  If you want to proceed anyways and leave those definitions
  without names, use delete.namespace.force

Any numbered arguments should refer to bar.z.

scratch/main> debug.numberedArgs

  1. bar.z
  2. bar.z

We can then delete the dependent term, and then delete foo.

scratch/main> delete.term 1

  Done.

scratch/main> delete.namespace foo

  Done.