Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Industrietechnik

Bosque:Microsofts neue Programmiersprache ohne Schleifen

Strukturierte Programmierung und abstrakte Datentypen wurden in den 1970er Jahren populär und seitdem verwenden wir sie in fast allen Programmiersprachen. Diese Methoden ermöglichten es Programmierern, sich auf die Absicht und das Kernverhalten ihres Codes zu konzentrieren, ohne sich um die Hardwarearchitektur kümmern zu müssen. Dies führte bald zu einer goldenen Ära der Compiler und der integrierten Entwicklungsumgebung.

Um die Produktivität weiter zu steigern, die Softwarequalität zu verbessern und mehrere neue Compiler- und Entwicklertooling-Erfahrungen zu ermöglichen, haben Ingenieure bei Microsoft kürzlich eine neue Programmiersprache namens Bosque entwickelt.

Bosque wurde entwickelt, um einfachen und nachvollziehbaren Code für Maschinen und Menschen zu schreiben. Es bietet eine Reihe von Möglichkeiten, um „versehentliche Komplexität“ im Codierungs- und Entwicklungsprozess zu vermeiden.

Regularisierte Programmierung

Die Ablaufsteuerung in einem strukturierten Programmiermodell wird durch Bedingungen, Unterprogramme und Schleifen verwaltet. Die neue Programmiersprache hingegen beseitigt Komplexitätsquellen wie veränderlicher Zustand, Referenzgleichheit und Schleifen. Aus diesem Grund haben Entwickler dieses Paradigma als „reguläre Programmierung“ bezeichnet.

Bosque wird aus einer Kombination von TypeScript-inspirierter Syntax und Typ plus ML und JavaScript/Node-inspirierter Semantik abgeleitet. Es unterstützt ein nicht-innovatives Typsystem, das es Programmierern ermöglicht, verschiedene Nominal-, Struktur- und Kombinationstypen zu verwenden, um die relevanten Merkmale der Problemdomäne flexibel zu kodieren.

Referenz:Microsoft | Über die strukturierte Programmierung hinausgehen

Die Sprache verwendet keine Schleifen von "while", "do while" und "for" und verfolgt einen völlig anderen Ansatz, wenn es um das Anwenden von Bedingungen geht. Mark Marron, Informatiker bei Microsoft, führte das Konzept der „Funktoren“ ein, um strukturierte Schleifen zu ersetzen und gleichzeitig die Softwarequalität zu erhöhen.

Funktionen mit symbolischen Transformern

Bosque bietet spezialisierte algebraische Massendatenoperationen und integrierte Unterstützung für keine (oder optionale Daten) Verarbeitung. Es unterstützt auch die Pipeline für die Sammlungsverarbeitung und wenn und match als Ausdrücke.

Aufgrund des reichhaltigen Satzes an Ausdrucksprimitiven in Bosque besteht weniger Bedarf an einer großen Menge von Anweisungskombinatoren. Die Sprache bietet eine Behauptung (nur für Debug-Builds aktiviert) und check (für alle Builds aktiviert) als erstklassige Funktionen, zusätzlich zu Nach-/Vorbedingungen und Klasseninvarianten. Außerdem gibt es in Bosque kein Schleifenkonstrukt.

Bosque könnte in Cloud-basierten Entwicklungsprojekten äußerst nützlich sein, deren Architekturen von Microservices, serverlosen Funktionen und RESTful-APIs abhängen. Es könnte ein Null-Kosten-Laden für einen schnellen Start, ein extrem niedriges Overhead-Tracing und eine Laufzeit mit minimaler Leistungsvariabilität ermöglichen.

Wie geht es weiter?

Diese neue Sprache befindet sich noch in der Entwicklungsphase, und wenn Sie sie testen möchten, ist der Code auf GitHub verfügbar.

Erste Experimente deuten darauf hin, dass es mehrere Erfahrungen der nächsten Generation ermöglichen kann, wie z. B. API-Auto-Marshaling, verbessertes Fuzzing, symbolisches Testen und Echtzeitkompilierung mit stabiler GC-Unterstützung.

Lesen Sie:Die 10 Kodierungsregeln der NASA für das Schreiben von sicherheitskritischen Programmen

Bosque unterliegt einer Überarbeitung, es gibt mehrere Fehler und fehlende Funktionen, und die Leistung kann noch erheblich verbessert werden. Marron und sein Team werden sich auf fortgeschrittenere Entwicklertooling-Erfahrungen konzentrieren, wie das automatische Festlegen von Grenzen für die Speichernutzung im Laufe der Zeit und die Überprüfung von Apps ohne Laufzeitfehler ohne zusätzlichen Aufwand.


Industrietechnik

  1. 10 coolste Cloud-Programmiersprachen
  2. Mikroprozessorprogrammierung
  3. Phasenregelkreise
  4. C-Programmieroperatoren
  5. Programmiersprache C PDF:Grundlagen-Tutorial für Anfänger
  6. Python New Line:So drucken Sie OHNE Newline in Python
  7. Microsoft erzielt neuen Durchbruch im Bereich der Konversations-KI
  8. GLTR:Eine neue Methode zur Erkennung computergenerierter Sprachen
  9. 9 neue Programmiersprachen zum Erlernen im Jahr 2021
  10. C-Tutorial