Aller au contenu principal

La philosophie et les objectifs de Wave

Wave vise à surmonter les limites des langages de bas niveau existants tout en créant un écosystème de développement intégré capable de couvrir divers domaines de développement avec un seul langage.

Au lieu de traiter des domaines aussi divers que le développement web, les systèmes d'exploitation, l'intelligence artificielle, la blockchain, le contrôle du matériel, les compilateurs, les réseaux et le cryptage, chacun avec un langage différent, Wave cherche à relier naturellement tous ces domaines au sein d'un seul langage et d'un seul système d'outils.

Wave ne voit pas l'universalité simplement comme « pouvant être utilisée en de nombreux endroits ». L'objectif est de répondre simultanément aux exigences de performance, de contrôle et de stabilité de chaque domaine, en maintenant une conception cohérente et des règles claires au niveau du langage.

Wave est conçu pour permettre même aux développeurs sans expertise approfondie du matériel d'exploiter les fonctionnalités matérielles. La bibliothèque matérielle standard abstrait les concepts matériels complexes pour permettre une utilisation intuitive.

Simultanément, Wave offre une approche de bas niveau pour contrôler directement le matériel si nécessaire. Cela permet aux développeurs de naviguer librement entre l'interface abstraite et le contrôle direct, minimisant ainsi la complexité du code sans sacrifier la performance.

In fine, Wave vise à fournir un environnement intégré capable de traiter diverses tâches avec un seul langage, offrant des performances efficaces et une expérience de développement cohérente.

Performance et efficacité

Wave est un langage conçu pour des performances élevées. Le compilateur et le modèle d'exécution visent à générer du code optimisé et sont configurés pour maintenir des performances stables sur diverses plateformes.

L'objectif est de fournir des caractéristiques de performance cohérentes avec un seul langage, des domaines de haut niveau comme les applications web aux domaines où la performance est cruciale, comme les systèmes d'exploitation ou les logiciels système.

Sécurité et gestion des erreurs

Wave considère la programmation sûre comme un critère de conception important. Il est conçu pour détecter autant que possible les erreurs au stade de la compilation afin de minimiser les problèmes pouvant survenir à l'exécution.

L'objectif est de garantir des stabilités fondamentales comme la sécurité de la mémoire et la sécurité des types, sans pour autant sacrifier les performances. Wave considère la sécurité et la performance non pas comme des concepts opposés, mais comme des éléments pouvant être atteints ensemble à travers la conception du langage.

Amélioration de la productivité des développeurs

Wave est conçu pour permettre aux développeurs de maîtriser rapidement le langage et de l'utiliser efficacement grâce à une syntaxe intuitive et cohérente.

De plus, une riche bibliothèque standard et un système d'outils (Vex, WSON, etc.) soutiennent la résolution de tâches complexes sans nécessiter de réimplémentation répétée. Cela permet aux développeurs de se concentrer davantage sur la résolution de problèmes elle-même que sur la configuration d'environnement ou le code standardisé.

Indépendance de la plateforme

Wave vise à être un langage non dépendant de systèmes d'exploitation ou d'environnements spécifiques. Il est conçu pour que le même code fonctionne de manière cohérente sur divers systèmes d'exploitation, permettant aux développeurs de réutiliser le code écrit une fois dans plusieurs environnements.

Cette indépendance de plateforme est l'un des éléments de base essentiels permettant à Wave de fonctionner comme un langage universel.

Communauté et extensibilité

Wave est un langage qui se développe en collaboration avec la communauté open source. Les utilisateurs et les développeurs peuvent librement participer à l'extension et à l'amélioration des fonctionnalités de Wave, et ce processus contribue également à façonner la direction et le degré d'achèvement du langage.

Wave est conçu avec la personnalisation et l'extension à l'esprit, permettant une utilisation flexible du langage et de l'écosystème pour des domaines ou des exigences spécifiques.

Objectifs futuristes

Wave ne se limite pas à l'environnement technologique actuel mais vise à être un langage capable d'accueillir les nouvelles tendances technologiques qui émergeront.

Nous prévoyons d'étendre continuellement le langage et le système d'outils en gardant à l'esprit les futures technologies telles que l'intelligence artificielle, les systèmes distribués et le calcul quantique. Cette orientation constitue la base pour que Wave ne soit pas seulement un outil à court terme, mais un langage capable de s'épanouir sur le long terme.