errant/tacit

There is no license information available for the latest version (1.0.0-alpha) of this package.

A Simple ByteCode VM in PHP

Maintainers

Details

github.com/errant/tacit

Source

Issues

Installs: 6

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 3

Forks: 0

Open Issues: 0

Type:project

1.0.0-alpha 2014-10-21 21:16 UTC

This package is not auto-updated.

Last update: 2024-05-07 00:36:44 UTC


README

Build Status Code Coverage Scrutinizer Code Quality

Tacit is:

  • VM: A bytecode VM, with basic stack, memory management and interpreter
  • Tac: A toy language similar in style to Assembly that comes with a lexer and compiler

Implementing a VM (and indeed a language) in PHP is silly, it's slow and limited. However, Tacit might have a purpose; for example as an educational tool.

Tacit was built with the aim of being a safe, sandboxed scripting VM for a PHP-based game. Yes, a ridiculous notion but one that works surprisingly well for simple applications.

Get Started

  • Clone the Repository
  • Browse the examples folder
  • Try an example:
bin/tacit examples/simple.tac

Future

The aim is for Tacit to expand to be more featureful, on the list is:

  • Adding registers to the VM
  • Expanding the Tac language with more complex commands
  • The addition of a higher-level scripting language (& compiler) similar to Ruby/Python

More