Project · 2025

sova

Write pseudocode in Spanish. Compile to WebAssembly.

in progressJFlex · CUP · WebAssembly

Overview

sova is a small, expressive programming language whose keywords read like Spanish pseudocode, and a full compiler that turns it into runnable WebAssembly.

Built to teach and prototype: you write FUNCION, MIENTRAS, MOSTRAR… and get a .wasm module that runs in Node.js or the browser.

Features

  • Static types
  • Functions by value and reference
  • Arrays and records
  • Runs in Node.js and the browser

How it works

01Write your algorithm in Spanish pseudocode.
02Compile: the lexer (JFlex) and LALR parser (CUP) emit WebAssembly.
03Run the .wasm with node loader.js or in the browser.

Example

factorial.sova
FUNCION MAIN() {
  ENT n := 4;
  ENT fact := 1;
  MIENTRAS n > 1 {
    fact := fact * n;
    n := n - 1;
  }
  MOSTRAR(fact);
}

> node loader.js
24