Bosque is een gratis en open source programmeertaal ontwikkeld door Microsoft. Het is afgeleid van de syntaxis en typen TypeScript en de semantiek van ML- en Node / JavaScript-talen. Gebruikers met een JavaScript-achtergrond zullen Bosque bekend voorkomen. Het is ontworpen voor het schrijven van code die eenvoudig, duidelijk en gemakkelijk te lezen is voor zowel mensen als machines. Bosque richt zich op de implicaties van:
Het ontwerpen van een bytecode die diepgaande, geautomatiseerde code-redenering en de inzet van ontwikkeltools, compilers en runtime-systemen mogelijk maakt.
Gebruikmakend van de kracht van de bytecode om een gemakkelijk toegankelijke programmeertaal te bieden voor moderne ontwikkelaars. Het biedt ook een uitgebreide reeks taalfuncties voor het ontwikkelen van betrouwbare en goed presterende applicaties.
Van cloudontwikkeling de prioriteit maken om de uitdagingen aan te pakken die gepaard gaan met de acceptatie van het gedistribueerde cloudontwikkelingsmodel.
Bosque ondersteunt een eenvoudig en niet-eigenwijs type-systeem dat ontwikkelaars in staat stelt een reeks structurele, nominale en combinatietypes te gebruiken om intentie en coderingskenmerken van het probleemdomein over te brengen.
Bosque-programmeertaalfuncties
Opvallende kenmerken van Bosque zijn onder meer:
Onveranderlijk
Alle waarden in de Bosque-taal zijn onveranderlijk, wat betekent dat de staat niet kan worden gewijzigd nadat deze is gemaakt. Dit is populair bij veel functionele talen en verbetert de leesbaarheid en runtime-efficiëntie.
Getypte tekenreeksen
Getypte strings bieden een bekende structuur over de inhoud van een tekenreeks in het type op een manier die nuttig is voor mensen. Bosque biedt twee soorten getypte strings, SafeString en StringOf.
SafeString is geparametriseerd met een Validator reguliere expressie type, dus het beschrijft de taal waartoe de string behoort.
StringOf wordt geparametriseerd door elk type dat het Parsable-concept implementeert, waardoor het ideaal is voor het werken met gegevens in een aangepast formaat of lichte validatie.
Bulk algebraïsche bewerkingen
Deze functie ondersteunt bulksgewijs lezen en bijwerken van gegevenswaarden. Met bulkbewerkingen kunnen updates worden uitgevoerd als een atomaire bewerking zonder handmatig velden te extraheren en te kopiëren.
Fouten en controles
Bosque streeft ernaar het bouwen van betrouwbare software te vereenvoudigen. De taal biedt ondersteuning voor fouten en controles. Het drukt ook een reeks invarianten, gezondheidscontroles en diagnostische beweringen uit.