{"id":15289267,"url":"https://github.com/serprex/luwa","last_synced_at":"2025-10-26T17:09:50.842Z","repository":{"id":136808207,"uuid":"85644460","full_name":"serprex/luwa","owner":"serprex","description":"WIP jit lua to wasm","archived":false,"fork":false,"pushed_at":"2019-04-06T13:25:21.000Z","size":684,"stargazers_count":95,"open_issues_count":1,"forks_count":3,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-04-13T09:06:24.879Z","etag":null,"topics":["jit","lua","wasm"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/serprex.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-03-21T01:20:36.000Z","updated_at":"2024-10-25T16:26:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"9cb4b3b7-f35e-4900-98f0-45ccf1c575c0","html_url":"https://github.com/serprex/luwa","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serprex%2Fluwa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serprex%2Fluwa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serprex%2Fluwa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serprex%2Fluwa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/serprex","download_url":"https://codeload.github.com/serprex/luwa/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248688571,"owners_count":21145766,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["jit","lua","wasm"],"created_at":"2024-09-30T16:00:09.052Z","updated_at":"2025-10-26T17:09:50.733Z","avatar_url":"https://github.com/serprex.png","language":"Lua","funding_links":["https://patreon.com/serprex"],"categories":["Resources"],"sub_categories":["Compiles to JS, asm.js or WebAssembly for Browser"],"readme":"[![Build](https://travis-ci.org/serprex/luwa.svg?branch=master)](https://travis-ci.org/serprex/luwa)\n\nLuwa's end goal is to JIT to [WASM](https://webassembly.org). Right now it's a bit of a learning environment for me as I've never [written a language implementation](https://esolangs.org/wiki/User:Serprex) that required real parsing\n\nI'll try avoid my usual stream of consciousness here, instead that's at [my devlog](https://patreon.com/serprex)\n\n[`main.js`](main.js) is nodejs entrypoint\n\nWASM runtime is in `rt/`. [`rt/make.lua`](rt/make.lua) is luwa-agnostic macro-assembler logic. [`mkrt.lua`](rt/mkrt.lua) produces an `rt.wasm` which [`rt.js`](rt.js) interfaces\n\nGC is a LISP2 compacting GC. GC performance is a low priority given WASM GC RFC. See [`rt/gc.lua`](rt/gc.lua)\n\nVM needs to be reentrant. Currently running coroutine is oluastack. Builtins which call functions work by returning after setting up a necessary callstack. See [`rt/vm.lua`](rt/vm.lua)\n\n[`rt/prelude.lua`](rt/prelude.lua) implements builtins which do not require hand written wasm\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fserprex%2Fluwa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fserprex%2Fluwa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fserprex%2Fluwa/lists"}