Skip to content

feat(vm): Basic Functions#103

Merged
davydog187 merged 2 commits intomainfrom
functions
Feb 7, 2026
Merged

feat(vm): Basic Functions#103
davydog187 merged 2 commits intomainfrom
functions

Conversation

@davydog187
Copy link
Contributor

@davydog187 davydog187 commented Feb 7, 2026

This implements basic functions without closures. Does not complete Phase 5 yet

  • Phase 0: Arithmetic operations and single return
  • Phase 1: Local variables with register assignment
  • Phase 2: Global variables (get_global, set_global)
  • Phase 3: Conditionals (if/elseif/else, and/or short-circuit)
  • Phase 4: Loops (while, repeat, numeric for)
  • Phase 5: Functions, closures, and upvalues
  • Phase 6: Tables and method calls
  • Phase 7: Native function calls (Lua→Elixir calling convention)
  • Phase 8: Generic for, varargs, and multiple returns
  • Phase 9: String concatenation and bitwise operations
  • Phase 10: Value encoding/decoding (Lua.VM.Value)
  • Phase 11: deflua integration (reimplement lib/lua.ex against VM.State)
  • Phase 12: Peephole optimizer
  • Phase 13: Remove Luerl dependency

This implements basic functions without closures
@davydog187 davydog187 merged commit 46c58f5 into main Feb 7, 2026
2 checks passed
@davydog187 davydog187 deleted the functions branch February 7, 2026 21:14
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