Chris Rink
Chris Rink
I think it would be a good idea to develop a benchmark suite for various parts of the system. For example, I keenly watch the startup time as `basilisp.core` grows...
In #354 and #361 we discuss various type hinting related changes. The ultimate goal would likely involve running MyPy or some other sort of more sophisticated type-checking tool over the...
In #354 I'm proposing to put the `:tag` metadata on AST nodes, but this ticket instead refers to the task of determining the tag of parent or bound nodes from...
Right now, functions generated via Basilisp do not have docstrings. Instead, they are generated like: ``` def f(): return None Var.intern(..., meta=lmap.map({"doc": "a docstring"})) ``` We could potentially improve utility...
Right now, all multi-arity function calls dispatch to the correct arity at runtime. In a tight loop sitaution, it might be nice to compile a direct call to the proper...
`tools.analyzer.jvm` and `tools.analyzer.js` nodes include `:tag` keywords with types for most types of nodes, which can help with emitting useful warnings and potentially annotating functions and arguments with return types.
When generating Python code, Basilisp will automatically munge symbol names which cannot be represented as Python code. For example, the Basilisp symbol `
Fixes #942
The methods implemented in `deftype` and `reify` should attempt to verify the signatures of implemented methods and issue warnings (or errors, if possible) when a signature mismatch occurs. I'm not...
The rules Basilisp uses for assessing `deftype`/`reify` super-type abstractness are overly restrictive for the Python ecosystem. Unlike Java, Python does not require an interface type inherit from [`abc.ABC`](https://docs.python.org/3/library/abc.html#abc.ABC) and even...