- vitte-lang
- VitteLangVsCode
- homebrew-vitte
- VitteServerPluginsBackEnd-org
- PlatonEditor
- linguist
- muffin
- muffin-org
- steel.org
- OldSteel
- SteelVscode
- steel
- weather-pro
- vitte
- vitte.org
- vitte-corpus
Vitte est un nouveau langage de programmation en construction, pensé pour livrer des outils et des petits programmes sans bricolage. Il combine un compilateur, une IR/bytecode et un outil de build (Steel) pour garder un flux simple, fiable et reproductible.
- Écrire du code en Vitte.
- Compiler vers un format interne prêt à exécuter ou à brancher un backend.
- Builder/tester avec Steel.
- Une chaîne complète, pas juste une syntaxe.
- Une base claire et évolutive pour éviter les hacks.
- Une expérience de build et de tests cohérente.
Le dépôt principal du langage (compilateur, IR/bytecode, stdlib, tests) est privé.
vitte 1.0
space hello
entry app at hello
emit "Hello, Vitte"
.end
vitte 1.0
space demo/app
<<< doc
Exemple Vitte — démonstration minimale.
>>>
pull std/io as io
pull std/text as text
share all
# ----------------------------
# Types
# ----------------------------
form User
field id as U32
field name as Text
.end
pick Status
case Ok()
case Err(code as U32)
.end
# ----------------------------
# Fonctions
# ----------------------------
#[inline]
proc greet(u as User) gives Text
give text.join("Hello, ", u.name)
.end
# ----------------------------
# Logique
# ----------------------------
proc run(flag as Bool) gives Status
if flag
emit greet(User(id=1u32, name="Alice"))
give Status.Ok()
.end
otherwise
give Status.Err(42u32)
.end
.end
# ----------------------------
# Point d’entrée
# ----------------------------
entry app at demo/app
make ok as Bool = true
make st as Status = run(ok)
select st
when Status.Ok()
emit "Done"
.end
otherwise
emit "Failed"
.end
.end
!muf 4
;; Exemple complet: bakes build_debug/build_release et sorties ciblees
[workspace]
.set name "example-c"
.set root "."
.set target_dir "target"
.set profile "release"
..
[profile debug]
.set opt 0
.set debug 1
..
[profile release]
.set opt 2
.set debug 0
..
[tool cc]
.exec "cc"
..
[bake build_debug]
.make c_src cglob "src/**/*.c"
[run cc]
.set "-O${opt}" 1
.set "-g" "${debug}"
.takes c_src as "@args"
.emits exe as "-o"
..
.output exe "target/out/c_app_debug"
..
[bake build_release]
.make c_src cglob "src/**/*.c"
[run cc]
.set "-O${opt}" 1
.set "-g" "${debug}"
.takes c_src as "@args"
.emits exe as "-c"
..
.output exe "target/out/c_app_release"
..
# build tout
steel build steelconf
# ou bien:
steel runUne ouverture progressive (documentation, guidelines, contribution) est prévue une fois la base suffisamment stable.


