{"id":16319806,"url":"https://github.com/klardotsh/gale","last_synced_at":"2025-03-22T21:32:00.557Z","repository":{"id":47123367,"uuid":"424781682","full_name":"klardotsh/gale","owner":"klardotsh","description":"Strongly-typed, minimal-ish, stack-based development at storm-force speed.","archived":false,"fork":false,"pushed_at":"2023-08-16T06:05:14.000Z","size":614,"stargazers_count":12,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-18T15:02:10.595Z","etag":null,"topics":["minimal","programming-language","stack-based","type-safe"],"latest_commit_sha":null,"homepage":"","language":"Zig","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"0bsd","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/klardotsh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"COPYING","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},"funding":{"liberapay":"klardotsh"}},"created_at":"2021-11-05T00:30:32.000Z","updated_at":"2024-01-12T18:24:01.000Z","dependencies_parsed_at":"2024-10-28T15:04:09.695Z","dependency_job_id":"063a78a8-859b-4ecd-9453-c6a7bd6b82e3","html_url":"https://github.com/klardotsh/gale","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/klardotsh%2Fgale","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/klardotsh%2Fgale/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/klardotsh%2Fgale/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/klardotsh%2Fgale/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/klardotsh","download_url":"https://codeload.github.com/klardotsh/gale/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245022770,"owners_count":20548593,"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":["minimal","programming-language","stack-based","type-safe"],"created_at":"2024-10-10T22:28:18.219Z","updated_at":"2025-03-22T21:32:00.205Z","avatar_url":"https://github.com/klardotsh.png","language":"Zig","funding_links":["https://liberapay.com/klardotsh"],"categories":["Zig"],"sub_categories":[],"readme":"# Gale: small-but-mighty, strongly-typed, concatenative development at storm-force speed\n\nGale is a [concatenative programming\nlanguage](https://en.wikipedia.org/wiki/Concatenative_programming_language)\nwhich:\n\n- Has a strong,\n  [dynamic](https://en.wikipedia.org/wiki/Type_system#Dynamic_type_checking_and_runtime_type_information),\n  and generally\n  [structural](https://en.wikipedia.org/wiki/Structural_type_system) type\n  system that offers a moderate degree of type inference.\n\n- Is designed interactively-first, with REPL and [Language\n  Server](https://en.wikipedia.org/wiki/Language_Server_Protocol) experiences\n  as first-class citizens, and as such encourages rapid prototyping and\n  experimentation.\n\n- Can be embedded within Zig and C applications (and those written in languages\n  supporting C FFI).\n\n- Sports a very small implementation: currently well under 5k lines of Zig\n  (subtracting comments and blank lines) gets a runtime off the ground.\n\n\u003c!-- TODO: ^ count whatever it takes to get basic I/O, a standard library, etc. --\u003e\n\n- Is extremely permissively licensed (`0BSD`, public domain equivalent)\n\n## What's it look like?\n\nSee the `sketches/` tree for now, which is in a constant state of flux and not\nnecessarily always kept up to date with what I'm aiming for, but I try.\n\n## Navigating this repo\n\n- `lib/gale` is a pure-Zig implementation of the Gale nucleus as a library\n- `src/gale` builds on these to provide a thin CLI that works with the usual\n  stdin/stdout/stderr\n- `tests/` includes various end-to-end tests of language functionality that\n  didn't cleanly fit as unit tests in the above categories\n\n## Supporting Gale's Development\n\nCurrently, Gale is just a nights-and-weekends side project whenever my rather\nbusy life allows, and as with any hobby, I don't expect payment for it. For now,\nsimply riffing ideas with me and experimenting with Gale as it grows is payment\nenough. If you really insist you want to financially support Gale in this\nextremely early phase, there's a LiberaPay link in the `.github/` tree.\n\n## Legal Yadda-Yadda\n\nGale's canonical implementation and standard library is released under the\n[Zero-Clause BSD License](https://tldrlegal.com/license/bsd-0-clause-license),\ndistributed alongside this source in a file called `COPYING`, and also found\nat the top of each source file.\n\nFurther, while not a legally binding mandate, I ask that you have fun with it,\nbuild cool stuff with it, don't exploit your fellow humans or the world at\nlarge with it, and generally don't be an ass within or outside of the project\nor anything written with it. And if you want to give attribution, it's\nof course also appreciated.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fklardotsh%2Fgale","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fklardotsh%2Fgale","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fklardotsh%2Fgale/lists"}