Error formatting macro: pagetree: java.lang.NullPointerException

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • printing at the REPL looks through a deref (e.g. on a promise)
    • this can block (possibly forever) if a data structure contains e.g. a promise
  • if a deref is potentially blocking, then I don't think the The REPL should not perform the deref for a print request unless there is a value
    • option 1: never deref possible blockers
    • option 2: have a bindable val that controls how REPL prints blocking derefs, analogous to the controls for lazy data structures
  • in any case, there needs to be a way to discover which derefs might blockhave a value

Facts

  • deref can block
    • Never for Var, Ref, Agent, and Atom
    • Sometimes for Future, Delay, and Promise

...