À propos du projet

SparkLang (dépôt sparklang, CLI spark, nom du produit SparkLang) est un langage de programmation et un runtime sous licence MIT qui exécute des fichiers .spark simples. Le README présente les fixtures de dry-run, la gestion de la compilation/bytecode, les playbooks et l'IDE Spark comme le cœur du projet, tandis que le réseau/web, la voix/PSTN et les appels de modèles en direct sont traités comme des surfaces optionnelles. Il est explicitement indiqué qu'il ne s'agit pas d'Apache Spark, ni d'AdaCore SPARK, ni d'un plugin Bifrost. Le comportement par défaut est hors ligne : le dry-run ne nécessite ni clés ni réseau, et seul un flag --live optionnel utilise un helper HTTP compagnon avec une passerelle compatible OpenAI configurée via AI_GATEWAY_URL et une clé API. Des variables d'environnement telles que SPARK_STT_URL / SPARK_TTS_URL et SPARK_TRAIN_* contrôlent les points de terminaison optionnels de parole et d'entraînement. La surface du langage décrite dans le README inclut des appels de modèle ask/generate avec slots, classify avec des enums mono ou multi-labels et confiance, extract avec des schémas inline, le chaînage de pipelines, des déclarations d'outils, des sessions listen/speak/voice, review/builder/implement pour la revue statique et la génération de code dans out/, des opérations de modèle (train, build, status, analyze, compare, improve, plan), head abstain/train/attach/ask pour une porte IDK sur les modèles locaux, binary open/elf/disasm/understand, la capture réseau et l'analyse pcap, os design/specify/generate pour des blueprints, des opérations browser/mitm, des sondes cuda/memory/pcie, et crypto/encrypt/gateway pour des enveloppes de chiffrement vers le modèle utilisant AES-256-GCM. Le dépôt est organisé autour d'un plan d'auteur documenté étiqueté A+B+C : une destination d'auto-hébergement à long terme, une VM de bootstrap C légère (bootstrap/), et un assembleur natif Spark (sparkasm/). L'arborescence d'assemblage GAS x86_64 sous asm/ est décrite comme un échafaudage d'exécution jetable plutôt que comme une source de vérité permanente. La structure inclut asm/, tools/ask/, tools/engine/, tools/browser/, selfhost/, hdl/classify_score.v, examples/*.spark, docs/*.md et un répertoire website/ pour le site marketing. La vérification est proposée via des commandes concrètes : make, make machine-proof (prétend produire un output asm-to-ELF, vérifié avec file), des exemples de dry-run tels que hello.spark, http_get.spark, classify_intent.spark et model_improve.spark, ainsi que make test, make test-e2e-browser, make sparkbc-e2e et make test-ide-paint. Des points d'entrée Python et Node sont présentés pour run(). Les déclarations de sécurité et d'honnêteté sont mises en avant : review n'évalue jamais le JavaScript web ; les URL de revue distante nécessitent --allow-net et sortent sinon avec une erreur claire ; la capture réseau reste derrière --allow-net-capture avec un code de sortie 4 documenté en cas d'absence de CAP_NET_RAW ; les sondes réseau en dry-run rapportent claimed:false ; os generate écrit uniquement des stubs éducatifs et ne redémarre ni n'installe jamais un OS ; l'entraînement de modèle en dry-run ne lance jamais de jobs. Les non-objectifs documentés incluent un ISA CPU personnalisé, un OS bare-metal de production, un rendu complet ES/CSS, un compilateur auto-hébergé terminé, des affirmations d'expédition de bitstream FPGA et tout entraînement GPU silencieux. La version indiquée dans le README est 0.6.2, avec le kit d'installation listé en 0.6.0.