basilisp icon indicating copy to clipboard operation
basilisp copied to clipboard

A Clojure-compatible(-ish) Lisp dialect targeting Python 3.8+

Results 72 basilisp issues
Sort by recently updated
recently updated
newest added

I started thinking that Lisps are great for embedding other languages and creating DSLs, so I was thinking it would be great to create a shell script DSL in addition...

issue-type:enhancement
lang

Clojure.org's [guide on data structures](https://clojure.org/reference/data_structures) mentions these specialized map and set implementations. ``` array-map sorted-map sorted-map-by sorted-set sorted-set-by subseq rseq (sorted-map implementation) rsubseq ```

issue-type:enhancement
lang

As of this writing, startup Basilisp up locally takes just over 4 seconds without a locally cached copy: ``` $ BASILISP_USE_DEV_LOGGER=true BASILISP_LOGGING_LEVEL=DEBUG BASILISP_DO_NOT_CACHE_NAMESPACES=true basilisp repl 2019-05-06 08:33:46,726 DEBUG [basilisp.lang.runtime.init_ns_var:1269] -...

issue-type:enhancement
lang
component:compiler
performance

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...

component:testing
performance

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...

enhancement
question
compiler

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...

issue-type:enhancement
component:compiler

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...

issue-type:enhancement
component:compiler

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...

issue-type:enhancement
component:compiler
performance

`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.

issue-type:enhancement
component:compiler