Un langage système axé sur une itération rapide, un contrôle explicite de bas niveau et une spécification de langage suffisamment petite pour être conservée dans son contexte.
Développé par Aerun.ai.
use "io" fn main() -> result<i64, io_error> { println("Hello, world!")? result.ok(0) }
seed explore une conception de langage système compact avec des compromis explicites.
| Langue | Compromis | seed |
|---|---|---|
| C/C++ | Rapide mais dangereux : erreurs de segmentation, débordements de tampon, utilisation après libération | Propriété, ressources linéaires, vues lexicales et risques explicites |
| Rust | Sûr et rapide, mais complexité brutale : vérificateur d'emprunt, durées de vie, taxe asynchrone | Aucune syntaxe à vie ; les mouvements, les vues et le nettoyage restent explicites |
| Allez | Simple, mais GC fait une pause, pas de contrôle de la mémoire, pas de qualité système | Pas de GC ; nettoyage déterministe et effets d'allocation explicites |
| Python/JS | Productif, mais exécution lente, lourde, pas pour le travail des systèmes | Pipeline LLVM natif avec des références mesurées et spécifiques à la charge de travail |
| Java/C# | VM robuste, mais verbeuse et lourde, échauffement lent | Pas de VM ni de préchauffage ; le profil d'exécution est sélectionné par cible |
| Tout ci-dessus | LLM-hostile — spécifications énormes, contexte plein de cas extrêmes | Grammaire compacte et compétence d'agent versionné |
Les langages existants ont été conçus avant le LLM époque. seed est conçu pour ça - assez simple pour qu'un LLM raisonner dans son ensemble, tout en conservant le contrôle explicite des systèmes. Le la compétence enregistrée maintient les agents sur la même syntaxe et le même contrat de propriété comme compilateur opérationnel.
Construit à partir de zéro. Aucune limitation externe.
LLVM IR est le backend canonique. La cible est constituée de boucles edit/check étroites avec des constructions incrémentielles rapides. Compilation au niveau objet pour une itération rapide.
Copie de scalaires, ressources de déplacement uniquement, clonage explicite, vues lexicales, linear t, nettoyage exact et pas de GC.
Les profils hébergés, autonomes, noyaux et sans exécution rendent visibles les services de plateforme et les limites dangereuses.
Linux est primaire ; Windows x86-64 passe sous le Vin, macOS x86-64 fonctionne sur Intel, et d'autres cibles publient leur exact object/link/run niveau.
Chaque construction renvoie une valeur. ADT, match, ?T options, propagation des résultats avec ?. Concurrence structurée avec spawn.
Grammaire compacte. Tient dans une seule fenêtre contextuelle. Les humains et les agents IA peuvent garder le langage dans son intégralité à l’esprit.
252 Grove répertoires de bibliothèques, 11 applications et 20 packages au stade du compilateur dans l'arborescence actuelle. Le nombre de répertoires est un inventaire, pas un état de préparation.
Qu’est-ce qui est opérationnel, qu’est-ce qu’une fondation testée et ce qui vient ensuite.
Fondation. G08 analyseur portable fermé, aide, complétion, surfaces, mise en page et instantanés. La propriété interactive du terminal/process reste la suivante.
Fondation / prototype. Des couches de stratégie réseau et HTTP existent ; le runtime Web intégré et un véritable cycle de vie window/renderer sont toujours ouverts.
Android tranche opérationnelle. L'hôte JNI, les cadres Canvas, les entrées et l'exécution AVD fonctionnent pour arm64/x86-64. Les widgets complets, l'accessibilité, la signature et iOS restent ouverts.
Actif v0.3. La fondation V3-G0-G13 est terminée ; V3-G14-G25 est propriétaire de l'extension de la production locale. La v0.2 P13 a été abandonnée et n'a pas été signalée comme réussie.
Prototype. Des packages mathématiques, temps, mise en page, saisie et interface utilisateur existent. Viennent ensuite le moteur de rendu, l'audio, les ressources, le packaging et une base de jeu exécutable.
Fondation de métadonnées. Des tenseurs, des ensembles de données, des configurations de modèles et des contrats d'expérimentation détenus existent ; les noyaux numériques, la formation et l’exécution des inférences restent ouverts.
Non node_modules gonfler. Pas de doublons par projet.
Chaque version de chaque bibliothèque vit une fois sous ~/.local/lib/seed. Dix projets utilisant la même version de bibliothèque partagent une copie.
Lien vers les builds par défaut .so fichiers dans le cache. seed build --static pour les binaires autonomes.
flock mutex + atomique rename(2). Deux projets en cours seed install en même temps, ne corrompre jamais le téléchargement de chacun.
seed uninstall supprime les paquets proprement. seed prune nettoie le cache source. Pas de gigaoctets de dépôts morts.
Une fois téléchargé, le cache sert chaque build sans accès au réseau. Verrouillez les versions exactes des fichiers afin que les versions soient reproductibles hors ligne.
Chaque version mise en cache enregistre une somme de contrôle dans seed.lock. La falsification ou la corruption est détectée sur chaque build.
Concepts familiers, zéro cérémonie.
struct point { x: i32 y: i32 } fn point.distance_squared(other: point) -> i32 { let dx = self.x - other.x let dy = self.y - other.y dx * dx + dy * dy } fn main() -> i32 { let origin = point.{ x: 0, y: 0 } let target = point.{ x: 3, y: 4 } origin.distance_squared(target) }
use "task" fn main() -> i64 { let pair = channel_new<i32>(1).or_abort() let sender = pair.sender let receiver = pair.receiver spawn { let _done = sender.send(42) } let received = receiver.recv() match received.value { some(value) => if value == 42 { 0 } else { 1 } none => 2 } }
L'omission est une conception. Ce que nous laissons de côté définit le langage.
seed est actuellement propriétaire et en pré-version. Les plans finaux, les tarifs et les conditions de support n'ont pas été expédiés.
Le compilateur, la spécification, le livre, les compétences de l'agent et les preuves de porte évoluent ensemble autour d'une seule implémentation opérationnelle.
Les travaux antérieurs à la version 1.0 sont signalés via des portes nommées, des niveaux cibles et des lignes de base reproductibles. L’état de préparation du produit n’est pas déduit de la présence de la source.
Les pistes de langage, CLI, TUI, Web, mobile, Ridge, jeu, ML et systèmes publient leur étape actuelle et la prochaine limite de preuves.
Le code que vous écrivez vous appartient. Pleine propriété. Aucune restriction. Aucune redevance. Vous l'expédiez, vous en êtes propriétaire – pour toujours.
Les licences commerciales sont la direction actuelle. Disponibilité concrète, les engagements en matière de prix, de compatibilité et de support seront publiés avec la version qui les fournit.
seed sera bientôt lancé. Déposez votre e-mail et nous vous informerons dès qu'il sera disponible.