Programování

Microsoft si klade za cíl zjednodušit programovací jazyk Bosque

Společnost Microsoft zahájila nový open-source projekt pro vývoj programovacího jazyka Bosque. Účelem projektu Bosque language je vybudovat funkční programovací jazyk, který zabrání „náhodné složitosti“ v procesu vývoje.

Cíle designu pro jazyk Bosque zahrnují zlepšenou produktivitu vývojářů, lepší kvalitu softwaru a zpřístupnění řady nových překladačů a zkušeností s nástroji. Nový jazyk je umístěn jako experiment v regularizovaném designu pro strojový, rychlý a spolehlivý životní cyklus vývoje softwaru.

Klíčovým cílem je eliminace náhodné složitosti. Bosque kód má být jednoduchý a snadno srozumitelný jak pro stroje, tak pro lidi. V tomto bodě však Bosque zůstává velmi ve vývoji; Navrhovatelé nedoporučují používat Bosque pro žádnou produkční práci. Vývojářům se doporučuje experimentovat s nimi.

Některé funkce a možnosti designu provedené pro Bosque zahrnují následující:

  • Všechny hodnoty jsou neměnné, přičemž Bosque přijal funkční model s neměnnými daty. Porozumění účinku příkazu bloku kódu je zjednodušené, pokud je bez vedlejších účinků, uvádí dokumentace Bosque. Funkční jazyky těží ze zjednodušení vývoje programu, sofistikovaných nástrojů a optimalizací kompilátoru povolených tímto modelem.
  • Funkční programování je spojeno s rozsahy bloků a {…} složené závorky povolením více přiřazení aktualizovatelným proměnným var!.
  • Funkce jsou prvotřídní hodnoty a typy.
  • Konstruktory lambda kombinují definici kódu pro tělo lambda se sémantikou variabilní kopie pro uzavření zachycených proměnných při vytváření lambda.
  • Jednoduchý systém bez úsudku umožňuje použití řady strukturálních, kombinačních a nominálních typů k vyjádření záměru a kódování příslušných rysů problémové domény.
  • Zadané řetězce poskytují mechanismus pro zvedání známé struktury o obsahu řetězce do typu způsobem, který je pro lidi smysluplný a používaný kontrolou typu.
  • Parametry lze protahovat ref předávání argumentů. Alternativou k hodnotám s více návraty to zjednodušuje scénáře, kdy je proměnná předána metodě, která ji může použít a aktualizovat. Povolení aktualizace v parametru vylučuje další správu návratové hodnoty, která by byla vyžadována. Tato funkce ještě není implementována.
  • K dispozici jsou pojmenované argumenty, stejně jako operátory odpočinku a šíření. Mohou provádět manipulaci s daty jako součást vyvolání a operací konstruktoru.
  • Poskytuje se prvotřídní podpora pro vyjádření řady invarianty, kontroly zdravého rozumu a diagnostických tvrzení.
  • Hromadné algebraické datové operace v Bosque začínají hromadným čtením a aktualizací datových hodnot. Vytvořené operátory pomáhají zaměřit kód na celkový záměr a umožňují vývojářům provádět algebraické uvažování o operacích datové struktury. Algebraické operace jsou k dispozici pro datové typy, n-tice, záznamy a nominální typy, stejně jako pro operace včetně projekce, multi-aktualizace a sloučení.
  • Díky schopnosti iterativního zpracování se strukturované smyčky obchodují pro konstrukty iterativního zpracování na vysoké úrovni. Odebrání typového štítku pro zápis stejných smyček vylučuje třídy chyb včetně vázaných výpočtů; záměr je objasněn záměr.

Bosque se stává nejnovějším jazykovým projektem společnosti Microsoft, která vyrábí jazyky včetně C #, objektově orientovaného jazyka; F #, funkční jazyk; a TypeScript, typová nadmnožina JavaScriptu. Softwarový gigant dosáhl dobrého stupně úspěchu při vývoji jazyků, které si získávají popularitu. C # se například umístilo na pátém a TypeScript na 12. místě v nejnovějších jazykových žebříčcích RedMonk, které jsou založeny na diskusích o přetečení zásobníku a využití kódu v GitHubu.

Dokumentaci Bosque, příklady a referenční implementaci najdete na GitHubu. Výuky jsou v pracích.

$config[zx-auto] not found$config[zx-overlay] not found