basil
basil copied to clipboard
Fast and flexible language exploring partial evaluation, context-sensitive parsing, and metaprogramming. Compiles JIT or AOT to native code.
Basil is planned to be a garbage-collected language, whereas most types in the language are value types (with the exceptions of strings, lists, and closures). In order to support more...
...and maybe lead to some monetization (as language itself is not monetizable, but an end-user product is). ## Motivation There are many hardly explored areas where compile-time evaluation brings major...
The langjam build of Basil ruthlessly leaked memory whenever it needed a string or list. This really shouldn't be the case for a proper release... This issue proposes a simple...
Basil compiles directly to native code, so it should be relatively straightforward to support unsafe pointer types and pointer arithmetic, at least from a codegen perspective. While the primary means...
Support the definition of functions with undefined bodies. These functions must have full type annotations, and represent external symbols that will be resolved at link time. This will allow Basil...
One of the most important elements of making Basil more accessible to new users is providing those users with access to useful library functions. In its first form, this will...
Basil should support integer types with widths less than 64 bits. Similar to [Go's primitive int types](https://tour.golang.org/basics/11), I propose redefining the current `Int` type as a generic "best size" integer...
Add bitwise operators including: - `&` (bitwise and) - `|` (bitwise or) - `>>` (bitwise left shift) - `
The current compiler backend goes directly from an abstract syntax tree to a list of instructions. It'd be easier to perform analyses and implement new compiler optimizations on an SSA...
We should reformat the Basil source code, since the formatting is pretty inconsistent after the language jam.