[ANN] Fennel 0.5.0 released

Message ID
DKIM signature
Download raw message
Greetings Fennel folk.

I have just cut a release for Fennel 0.5.0.

The user-visible changes for this release are quite minor:

* Fix a bug where lambdas with no body would return true instead of nil.
* Fix a bug where global mangling would break when used with an environment.
* Fix a bug where globals tracking would lose track of allowed list.
* Fix a bug where top-level expressions in `include` would get skipped.

However, the really big news about this change is that now Fennel is
self-hosted, which is to say that the entire compiler is written *in Fennel*:


Other than the bugs above that we found during the self-hosting process,
there should be no noticeable changes between this and Fennel 0.4.2, but
we decided to bump the version more to indicate that internally it was
a very substantial change. We have tested it pretty thoroughly,
including comparing the compiler output across every publicly listed
love2d game written in Fennel from the wiki[1], and found that in most
cases the compiler output was byte-for-byte identical.

If you're interested in how we did this, you can read more about it


Thanks to everyone who contributed.


[1] - https://github.com/bakpakin/Fennel/wiki/Codebases#l%C3%96ve-games

[2] - The only difference in compiler output was that auto-generated
    local names were sometimes numbered in a slightly different order,
    which would not affect behavior: https://p.hagelb.org/fallen-diff.html
Reply to thread Export thread (mbox)