Override `eval` to type check code in typed namespaces

Description

Problem

Monkey-patching a typed load isn't enough for real usage. By monkey-patching a typed eval, we can type check REPL interactions without the need for a separate REPL.

Solution

Add new clojure.core.typed/install var that monkey-patches both load and eval.

The typed eval looks at the current :lang metadata, instead of touching the file system with tools.namespace.

New (Leiningen) bootstrap code:

Pull request: 96
Commit: 0e71ef8
Version: 0.3.21

Environment

None
Completed

Assignee

Ambrose Bonnaire-Sergeant

Reporter

Ambrose Bonnaire-Sergeant

Labels

None

Approval

None

Patch

None

Fix versions

Priority

Minor