{"id":21324144,"url":"https://github.com/mcejp/helium","last_synced_at":"2025-03-15T23:20:34.192Z","repository":{"id":132598594,"uuid":"258838011","full_name":"mcejp/Helium","owner":"mcejp","description":"A programming language Invented Here™","archived":false,"fork":false,"pushed_at":"2022-04-14T21:36:18.000Z","size":311,"stargazers_count":1,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-09T01:29:39.930Z","etag":null,"topics":["bytecode-interpreter","embeddable-scripting-language","scripting-language"],"latest_commit_sha":null,"homepage":"","language":"C++","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/mcejp.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":"2020-04-25T17:48:07.000Z","updated_at":"2023-04-05T07:40:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"3d9afe5a-b144-4628-b7cf-42947277a9ff","html_url":"https://github.com/mcejp/Helium","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/mcejp%2FHelium","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcejp%2FHelium/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcejp%2FHelium/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcejp%2FHelium/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mcejp","download_url":"https://codeload.github.com/mcejp/Helium/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243802751,"owners_count":20350293,"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":["bytecode-interpreter","embeddable-scripting-language","scripting-language"],"created_at":"2024-11-21T20:28:49.561Z","updated_at":"2025-03-15T23:20:34.146Z","avatar_url":"https://github.com/mcejp.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Helium Programming Language\n\nA little glossary:\n\n- A *list* of *items*: `(1, 2, 3)`\n- An *object* has *members* (probably should be *properties*, *attributes*, *fields*, or something)\n- All *functions* go into *modules*, including the fictitious *main function*\n- *Script functions* vs *native functions*.\n\n## How to build\n\nSimple! Using CMake:\n\n    mkdir cmake-build-debug\n    cd cmake-build-debug\n    cmake ..\n    cmake --build .\n\n## Debug mode\n\n- automatic disassembly is enabled by default (into _.helium_disassembly_)\n- full value tracing is enabled (`HELIUM_TRACE_VALUES`, output _.helium_value_trace_)\n- GC tracing is enabled (`HELIUM_TRACE_GC`, output _.helium_gc.log_)\n\n## Spec\n\n### Built-in types\n\n- boolean\n- integer\n- real\n- string\n- list\n- object\n- nativeFunction\n- scriptFunction\n- internal\n- nil\n\n### Implicit conversion rules\n\n- integer to real\n- note: no implicit conversions to bool\n    - use explicit comparison for `\u003cvalue\u003e != 0`, 0.0 and empty strings\n    - use `has \u003cvalue\u003e` to test against nil more succinctly\n\n## Notes\n\n- Garbage collection per https://researcher.watson.ibm.com/researcher/files/us-bacon/Bacon01Concurrent.pdf (like PHP 5.3)\n\n## TODO\n\n- some examples of usage\n- strings mutable or not?\n- all compile-time options\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcejp%2Fhelium","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmcejp%2Fhelium","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcejp%2Fhelium/lists"}