Hacker News new | ask | show | jobs
by lispm 3800 days ago
The SBCL Common Lisp compiler detects some of those type errors at compile time - especially for declared types:

    ;     (> SECRET GUESS)
    ;
    ; caught WARNING:
    ;   Derived type of GUESS is
    ;     (VALUES STRING &OPTIONAL),
    ;   conflicting with its asserted type
    ;     REAL.
    ;   See also:
    ;     The SBCL Manual, Node "Handling of Types"
    ;
    ; compilation unit finished
    ;   caught 1 WARNING condition
    ;   printed 8 notes
Common Lisp allows optional type declarations. SBCL (this feature it has inherited from CMUCL) uses those as compile time type assertions.