Skip to content

Conversation

ingydotnet
Copy link
Contributor

@ingydotnet ingydotnet commented Aug 3, 2025

To test, run make -C yamlscript test.

The Makefile will auto-install the ys binary under the impls/yamlscript/.cache/ directory.

Passing first 2 steps with no skipped tests.

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

@ingydotnet ingydotnet marked this pull request as draft August 3, 2025 22:22
@ingydotnet ingydotnet changed the title yamlscript: Tests step0 and step1 fully passing yamlscript: WIP - Tests step0 and step1 fully passing Aug 3, 2025
@ingydotnet ingydotnet changed the title yamlscript: WIP - Tests step0 and step1 fully passing yamlscript: WIP - A new implementation Aug 4, 2025
Passing steps 0-3 so far, with no skipped tests.

To test, run `make -C impls/yamlscript test`.

The Makefile will auto-install the ys binary under the
`impls/yamlscript/.cache/.local/bin/` directory.

In other words, it should "just work" with no prerequisites.

YAMLScript (aka YS) was created in 2023 after I finished a mal
implementation in Perl.
Without the mal project, YS would not exist!

See: https://yamlscript.org

The code in this implementaion was ported almost directly from the
impls/mal "code" (which cannot run without a hosting implementation).

This is to say that the YS mal code (like the MAL mal code) reads much
like pseudocode, the difference being that the YS code actually runs!
And it can host the MAL mal code (of course).

This works out so well, because YS transpiles to Clojure.
It is literally a syntax dialect of Clojure (without a JVM, thanks to
the  GraalVM native-image compiler).
@kanaka kanaka added new_implementation A ticket that is proposing or requesting an implementation for a new language/platform enhancement and removed enhancement labels Aug 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new_implementation A ticket that is proposing or requesting an implementation for a new language/platform

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants