Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pp+: update UIP-0119 #67

Merged
merged 5 commits into from
Jan 21, 2025
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 11 additions & 13 deletions UIPS/UIP-0119.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,20 +94,18 @@ with outputs for nouns like:
=> |%
+$ tase (each type vase) :: type/vase
+$ meta :: recursion metadata
$: saw=(set tase) :: recursive types
ids=(map type @) :: types id
dep=@ud :: remaining depth
veb=?(%base %most %lest) :: current verbosity
pin=vase :: (map term ppin)
==
$~ [~ ~ 30 %base ~] ::
$: saw=(set tase) :: recursive types
ids=(map type @) :: types id
dep=@ud :: maximum depth
veb=?(%base %most %lest) :: default verbosity
pin=(map term ppin) :: print overrides
== ::
+$ base $-([tase meta] (unit [meta tank])) :: base printer
+$ ppin $-([tase meta base] (unit [meta tank])) :: custom printer
--
::
|_ $: dep=@ud :: maximum depth
veb=?(%base %most %lest) :: default verbosity
pin=(map term ppin) :: print overrides
==
|%
:: … arms start here …
```
- `dep` will be decremented each time that a `%cell` is found, until
Expand Down Expand Up @@ -193,9 +191,9 @@ with outputs for nouns like:
## Backwards Compatibility

- Replacing the old pretty printer will break backwards compatibility with any
code that directly calls the pretty printer, but not with code that uses
functions like `+sell/+skol/+duck:ut/+dunk:ut`. It may also break any code
that relies on specific pretty printer outputs.
code that directly calls the pretty printer's door. However, it will not
marcusmiguel marked this conversation as resolved.
Show resolved Hide resolved
affect code that uses functions such as `+sell/+skol/+duck:ut/+dunk:ut`. It
marcusmiguel marked this conversation as resolved.
Show resolved Hide resolved
may also break code that relies on specific pretty printer outputs.

## Future work

Expand Down