Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Technologie industrielle

Bosque :le nouveau langage de programmation de Microsoft sans boucles

La programmation structurée et les types de données abstraits sont devenus populaires dans les années 1970, et depuis lors, nous les utilisons dans presque tous les langages de programmation. Ces méthodologies ont permis aux programmeurs de se concentrer sur l'intention et le comportement de base de leur code sans se soucier de l'architecture matérielle. Bientôt, cela a conduit à une ère d'or des compilateurs et de l'environnement de développement intégré.

Afin d'améliorer encore la productivité, d'améliorer la qualité des logiciels et de permettre plusieurs nouveaux compilateurs et expériences d'outils de développement, les ingénieurs de Microsoft ont récemment mis au point un nouveau langage de programmation nommé Bosque.

Bosque est conçu pour écrire un code simple et facile à raisonner pour les machines et les humains. Il offre un certain nombre de façons d'éviter la « complexité accidentelle » dans le processus de codage et de développement.

Programmation Régularisée

Le contrôle de flux dans un modèle de programmation structuré est géré par des conditions, des sous-programmes et des boucles. Le nouveau langage de programmation, d'autre part, se débarrasse des sources de complexité telles que l'état mutable, l'égalité de référence et les boucles. C'est pourquoi les développeurs ont décrit ce paradigme comme une « programmation régularisée ».

Bosque est dérivé d'une combinaison de syntaxe et de type inspirés de TypeScript plus ML, et de sémantique inspirée de JavaScript/Node. Il prend en charge un système de types sans opinion qui permet aux programmeurs d'utiliser différents types nominaux, structurels et combinés pour coder de manière flexible les caractéristiques pertinentes du domaine du problème.

Référence :Microsoft | Aller au-delà de la programmation structurée

Le langage n'utilise pas les boucles « while », « do while » et « for » et a une approche complètement différente lorsqu'il s'agit d'appliquer des conditions. Mark Marron, informaticien chez Microsoft, a introduit le concept de « Functors » pour remplacer les boucles structurées tout en augmentant la qualité du logiciel.

Functeurs avec Transformateurs Symboliques

Bosque fournit des opérations de données algébriques en vrac spécialisées et un support intégré pour aucun (ou des données facultatives). Il prend également en charge le pipeline pour le traitement de la collecte, et if et correspondance comme expressions.

Il y a moins besoin d'un grand ensemble de combinateurs d'instructions en raison du riche ensemble de primitives d'expression dans Bosque. Le langage fournit une assertion (activé uniquement pour les versions de débogage) et check (activé pour toutes les versions) en tant que fonctionnalités de première classe, en plus des post/pré-conditions et des invariants de classe. De plus, il n'y a pas de construction en boucle dans Bosque.

Bosque pourrait être extrêmement utile dans les projets de développement basés sur le cloud dont les architectures dépendent de microservices, de fonctions sans serveur et d'API RESTful. Il pourrait permettre un chargement sans frais pour un démarrage rapide, un traçage ultra-faible des frais généraux et une durée d'exécution avec une variabilité des performances minimale.

Quelle est la prochaine étape ?

Ce nouveau langage est encore en phase de développement, et si vous souhaitez le tester, le code est disponible sur GitHub.

Les premières expériences indiquent qu'il peut permettre plusieurs expériences de nouvelle génération, telles que le marshaling automatique des API, le fuzzing amélioré, les tests symboliques et la compilation en temps réel avec une prise en charge stable de GC.

Lire : 10 règles de codage de la NASA pour la rédaction d'un programme critique pour la sécurité

Bosque est sujet à révision, il y a plusieurs bugs et fonctionnalités manquantes, et les performances peuvent encore être considérablement améliorées. Marron et son équipe se concentreront sur des expériences d'outils de développement plus avancées, telles que la définition automatique de limites pour l'utilisation de la mémoire au fil du temps et la vérification des applications exemptes d'erreurs d'exécution sans efforts supplémentaires.


Technologie industrielle

  1. 10 langages de programmation cloud les plus cool
  2. Programmation du microprocesseur
  3. Boucles à verrouillage de phase
  4. Opérateurs de programmation C
  5. Langage de programmation C PDF :Tutoriel de base pour les débutants
  6. Python New Line:Comment imprimer SANS nouvelle ligne en Python
  7. Microsoft réalise une nouvelle percée dans le domaine de l'IA conversationnelle
  8. GLTR :une nouvelle méthode pour détecter le langage généré par ordinateur
  9. 9 nouveaux langages de programmation à apprendre en 2021