Skip to main content

Lenguaje de programacion con sintaxis completamente en espanol

Project description

Alvz Language v0.18.0

Lenguaje de programación interpretado con sintaxis completamente en español. Orientado a objetos, asíncrono, con tipado estático opcional. Basado en una VM de pila con 83 opcodes y compilación a WebAssembly.

Características

  • Sintaxis en español — keywords, errores y documentación en español
  • Orientado a objetos — clases, herencia, métodos estáticos, getters/setters, super
  • Async/await — ejecución concurrente con ThreadPoolExecutor
  • Tipado opcional — anotaciones de tipo con verificación estática (--no-check-types para deshabilitar)
  • 83 opcodes — VM de pila con bytecode completo (aritmética, control de flujo, closures, excepciones, debug)
  • 13 módulos stdlibmatematicas, cadenas, colecciones, testing, json, csv, sistema, fecha, http, sqlite, aleatorio, expresiones_regulares, consola
  • Compilación WASM — genera binarios .wasm compatibles con wasmtime 45+
  • LSP + DAP — language server con diagnósticos, completado, ir a definición, hover; debugger con breakpoints, paso a paso, inspección de variables
  • Extension VS Code — disponible en el Marketplace como "Alvz en Español": resaltado semántico, 48 snippets, autocompletado, iconos
  • Modo seguro--safe restringe FS, red, imports y recursos
  • CLI completaalvz archivo.alvz, alvz test, alvz fmt, alvz nuevo, alvz build, alvz fix, alvz bench, alvz debug, alvz install
  • Standalonealvz build genera ejecutables con PyInstaller o Nuitka
  • 626 tests — cobertura de VM, parser, lexer, WASM, LSP, DAP, tipos, formatter, fixer, benchmarks

Instalación

pip install -e .

Requiere Python 3.10+.

Uso rápido

# Ejecutar archivo
alvz programa.alvz

# Ejecutar via WebAssembly (37+ opcodes nativos)
alvz --wasm programa.alvz

# REPL interactivo
alvz

# Ejecutar tests
alvz test tests/

# Formatear código
alvz fmt programa.alvz

# Verificar tipos estáticamente
alvz --no-check-types programa.alvz   # deshabilita type checker

# Modo seguro (sin red, FS restringido)
alvz --safe programa.alvz

# Compilar a ejecutable o WASM
alvz build programa.alvz
alvz build programa.alvz --wasm

# Nuevo proyecto
alvz nuevo proyecto mi_app

# Analizar y corregir
alvz fix programa.alvz

# Benchmarks
alvz bench

# Depurar
alvz debug

Sintaxis básica

variable nombre = "Mundo"
imprimir("Hola " + nombre)

si (edad >= 18) {
    imprimir("Mayor de edad")
} sino {
    imprimir("Menor de edad")
}

mientras (x > 0) {
    imprimir(x)
    x = x - 1
}

funcion factorial(n) {
    si (n <= 1) {
        retornar 1
    }
    retornar n * factorial(n - 1)
}

clase Persona {
    variable nombre = ""
    variable edad = 0

    funcion inicializar(n, e) {
        nombre = n
        edad = e
    }

    funcion saludar() {
        imprimir("Hola, soy " + nombre)
    }
}

Documentación

Proyecto

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alvz_lenguaje-0.18.0.tar.gz (110.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

alvz_lenguaje-0.18.0-py3-none-any.whl (91.5 kB view details)

Uploaded Python 3

File details

Details for the file alvz_lenguaje-0.18.0.tar.gz.

File metadata

  • Download URL: alvz_lenguaje-0.18.0.tar.gz
  • Upload date:
  • Size: 110.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for alvz_lenguaje-0.18.0.tar.gz
Algorithm Hash digest
SHA256 e3e5b46d72b5747c8eca4d0e3358288e1684b5136303538ddec4530795339897
MD5 19feb7add2c2790a132d99a291d0aa0d
BLAKE2b-256 fa8cb6d077ae36131f22446a7547ccd079432e5734f42f62700e397ea820e40e

See more details on using hashes here.

File details

Details for the file alvz_lenguaje-0.18.0-py3-none-any.whl.

File metadata

  • Download URL: alvz_lenguaje-0.18.0-py3-none-any.whl
  • Upload date:
  • Size: 91.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for alvz_lenguaje-0.18.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9418d7f14f2c3ce7aaa6beabf5c7563968532f37a49e53194a47df0010e4d1c2
MD5 51105e6cd48a6d1c76916939f933f183
BLAKE2b-256 987f8af874f215b892641590c5e7996913a746deda956750efd88ae648bd62ee

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page