Home - mfichman/jogo GitHub Wiki

Jogo is a high(er) performance compiled language (like C++) with a clean, powerful syntax (like Python, Lua, or Ruby). It is designed for programming video and game servers. While Jogo is not on-par with C++ in terms of performance, the project's goal to keep the "time multiplier" less than 2x. Likewise, Jogo's syntax is not as powerful or succinct as Ruby or Python, but the goal is to do much better than C++.

Jogo started as an experimental programming language designed for writing video games. Most games use C++ for high-performance rendering/physics code, but then fall back to a scripting language for programming game logic. Unfortunately, there can be quite a lot of coupling code between the scripting language and the C++ engine. Jogo was designed to keep C++-like performance, but to make more high-level flexible constructs (like structural typing and closures) available to the programmer. To read more about the Jogo design decisions, see Design Rationale.

Jogo is a weekend project. While the language may never become popular, it does try to address some real problems with existing programming languages, and provide a native platform for game programming.

Documentation

Downloads

Who started this thing?

Jogo was designed and written by Matt Fichman.

How can I contribute?

I'm looking for help with Jogo. Starting a new language is a big task. In particular, I need help writing lots of additional tests, libraries, and compiler back-ends (x86-32 and ARM in particular -- the compiler currently only outputs x86-64). If you'd like to contribute, check out the GitHub repository, add yourself to the contributors page and send me a pull request. Also, check out the wish list.

Implementation notes