gdlisp icon indicating copy to clipboard operation
gdlisp copied to clipboard

Lisp on the Godot platform

Results 61 gdlisp issues
Sort by recently updated
recently updated
newest added

While I think it's a good, healthy default to strip comments from the code, there should be a special comment syntax that is guaranteed to translate over to GDScript comments....

Try to minimize the number of build artifacts in the project root. Off the top of my head, I know `GDLisp.gd` and `GDLisp.msgpack` generate at the top-level.

#40 defined nested quasiquote semantics. Revisit this, I find them very unintuitive. ``,,x evaluates to `,1 if `x` has value `1`. How often do we want a nested `quasiquote` to...

``` (defmacro foo ()) #'foo ``` This should be a compile-time error. You cannot take a function reference to a macro.

bug

Right now, `access-slot` is a special form. But it's pretty close to being a function. I suggest that, rather than having `foo:bar` expand to (access-slot foo bar) as it currently...

``` (labels ((foo () (bar)) (bar () (foo))) (lambda () (foo) (bar))) ``` This produces a closure object that incorrectly uses the `_locals` name twice. ``` class _LambdaBlock extends GDLisp.Function:...

bug

Yeah, that. Consider implementing the 'reader macro' feature from Common Lisp, where a special form of macro can affect the parsing of future terms.

Macros are subject to function shadowing, which means (flet ((if () 999)) (if)) is well defined and returns `999`. That's because `if` is a macro, not a special form. Special...

My "unhealthy server" tests are failing intermittently, due to some unknown race condition between the two processes. Find a way to fix it. The offending tests are ignored for now....

``` (defn foo-bar () 1) (defn foo_bar () 2) ``` This code will pass GDLisp but fail on the Godot side, since `foo-bar` and `foo_bar` normalize to the same function...

bug