Skip to content

Add Hare implementation #711

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 15 commits into
base: master
Choose a base branch
from
Open

Conversation

einsiedlerspiel
Copy link

@einsiedlerspiel einsiedlerspiel commented Apr 9, 2025

mal implemented in pure hare https://harelang.org/ using only its standard library

There's no GC, I try to clean up any non persistent allocations but really for the most part I'm just leaking all the memory.
Metadata implementation is incomplete and only implemented for user defined functions and hashmaps, for everything else I used native types, adding meta data would probably require completely reworking that.

There's lots of things to clean up and add checks for, but I won't get to that any time soon so I thought I'll just send the PR now, before I'll never do it.

Had lot's of fun with the challenge, thanks for creating it!

Pull request requirements:

  • Commits are well written and well organized.
  • Commits for a specific implementation should be prefixed with
    the implementation name.
  • Github Actions CI passes all checks (including self-host)

Additional requirements if you are adding a new implementation (see FAQ for details):

  • Follow incremental structure (no common eval code)
  • Add impls/<IMPL>/Dockerfile
  • Add impls/<IMPL>/Makefile
  • Update IMPLS.yml
  • Update Makefile.impls
  • Update README.md

@einsiedlerspiel einsiedlerspiel force-pushed the hare branch 3 times, most recently from d2cec1c to c65605d Compare April 9, 2025 19:51
I only realised after finishing, that meta data for strings wasn't actually
asked.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant