Skip to content

feat: add lancia workflow, launcher scripts, and docs updates#2

Open
Aron-Magg wants to merge 1 commit intokkratterf:mainfrom
Aron-Magg:main
Open

feat: add lancia workflow, launcher scripts, and docs updates#2
Aron-Magg wants to merge 1 commit intokkratterf:mainfrom
Aron-Magg:main

Conversation

@Aron-Magg
Copy link

Title: feat: add lancia command, fix compiler/runtime issues, and improve examples/docs

Summary

This PR introduces a new FratmScript CLI command, improves compiler behavior, fixes runtime pain points, and refreshes project docs and examples.

What Changed

1) New CLI command: lancia

  • Added lancia as the primary command to compile and execute .fratm files.
  • Kept backward compatibility with run as an alias.
  • Updated CLI help text and user-facing documentation.
  • Updated task runner recipes (justfile) to use lancia naming.

2) Compiler and language fixes

  • Improved OOP support in fratm-core:
    • class inheritance (figlio 'e)
    • super calls ('o pate)
    • static methods (fisso)
    • class methods without requiring facc
  • Extended lexer/parser/codegen accordingly.
  • Added/updated compiler tests for OOP and string edge cases.
  • Fixed parsing for multiline arrays in examples.
  • Fixed error formatting behavior in errors.rs (Neapolitanized messages now match tests).

3) Runtime and tooling improvements

  • Updated CLI execution path to correctly support interactive scripts (stdin passthrough).
  • Added OS-aware justfile improvements and clearer recipe docs/menu output.
  • Added/updated .gitignore rules to avoid tracking generated .js artifacts.

4) New content and docs

  • Added game:
    • Games/Pomodor_e_Muzzarel/pomodor_e_muzzarel.fratm
  • Added personal launcher:
    • PersonalScripts/run_personal_scripts.fratm
  • Added new examples:
    • examples/11_oop_avanzato.fratm
    • examples/12_trycatch_validazione.fratm
  • Updated module example to remove external React dependency:
    • examples/09_moduli.fratm
  • Added run guide:
    • RUN_EXAMPLES.md (English)
  • Updated README.md with new paths, links, commands, and workflow.

Verification

  • cargo test -p fratm-core passes.
  • Examples build and run with the updated CLI command (lancia).
  • Release binary command flow validated.

Notes

  • This PR keeps run as a compatibility alias to avoid breaking existing scripts immediately.
  • New docs prefer lancia everywhere.

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