John-John Tedro

Results 99 issues of John-John Tedro

Support constant expressions, like these:x ```rust const VALUE = #{hello: "World"}; ``` They can reference other constant expressions, but will fail to compile if there are cycles: ```rust const VALUE...

enhancement
compiler

Support rust style attributes; ```rust #[hello] fn test() { } #[hello] struct Foo { } ``` This will be invoked as macros with the ast of the thing that it...

enhancement
good first issue
compiler
parser

The `Any` derive should be expanded to provide the following glue code automatically: Getters and setters for any fields which are `pub`, and not explicitly marked as `#[any(skip)]`. Constructor glue...

enhancement
compiler

This issue is open to document a potential soundness issue in Rune that might arise in case multiple `Any` types share the same type hashes. This is [documented in detail...

soundness
changelog

With 49af732c7dd0fa1f21cc5c54f56e0927e469602f we now have a functional macro subsystem. With this it should be possible to use and parse dynamic `macro fn`'s like these: ```rust macro fn hello(context, ast) {...

enhancement

Units have been designed so that they can be serialized. This can be used in the future cache a compilation or distribute units in bytecode format for later execution. This...

enhancement
good first issue

For everything that can be queried in the compiler, it's feasible to cache the results of the query in case they are unchanged. This would require structural hashing of anything...

enhancement

They are currently stored as HashMaps, but their data could be stored as an array with a shared lookaside table for which index a field corresponds to.

enhancement

We currently do variable indexing based on the bottom of the current call frame. This could in principle instead be based on the relative offset from the top of the...

enhancement