|
De programmeertaal Asha
Als side project ontwikkelt Jelle een nieuwe programmeertaal:
Asha (naar oud gebruik genoemd naar een vrouw, in dit geval zijn vrouw). Asha is een programmeertaal die zich focust op het beschrijven van pure wiskundige relaties. Je kan er op vrije wijze een wiskundig model, of verzameling functies mee uiteenzetten.
Programmeertalen nemen een belangrijke plaats in binnen de IT en het is een gebruik dat nieuwe ontwikkelingen uitgedrukt worden in nieuwe, experimentele talen. Zo worden bij Microsoft Research meerdere nieuwe talen tegelijkertijd ontwikkeld, en wordt er altijd gekeken naar mogelijkheden om de ontwikkelingen terug te koppelen naar de veelgebruikte mainstream talen. Op deze manier kan je aan nieuwe technieken werken zonder dat je daar de stabiliteit van een reeds werkende taal hoeft aan te tasten.
Vanuit een andere hoek, maar met gemeenschappelijke interesse, is men in de computer science ook druk doende met nieuwe programmeertalen. Vaak opgebouwd rond een nieuw wetenschappelijk concept spelen deze een belangrijke rol bij de innovatie van deze 'bouwstenen van software'. Bij de Universiteit Twente zijn ze bijvoorbeeld bezig met de ontwikkeling van de programmeertaal Tina.Tina's naam verwijst naar de programmeertaal Amanda, want Tina betekent: Tina is not Amanda. Amanda op haar beurt is weer een afgeleide van Miranda. Als het u nog niet duizelt: Asha is geïnspireerd op een principe van Tina(namelijk de mogelijkheid tot inverse functies) en flink beïnvloed door Amanda.
Asha is een programmeertaal waarin je niet op de traditionele manierprogrammeert, maar in plaats daarvan een stelsel van functies en wiskundige relaties daartussen uiteenzet. Er is dus geen knop 'draai dit programma', waar je op kan drukken. In plaats daarvan kan je door middel van een interpreter het door jou geschreven systeem bevragen. Je kan bijvoorbeeld vragen wat het antwoord op een bepaalde functie is (zoals wat is de uitvoer de van de functie Pindakaas met de invoer '3'), maar je kan ook vragen om een gegeven wiskundige expressie te vereenvoudigen, of om te kijken of een bepaalde wiskundige vergelijking bewezen kan worden.
Asha is zeer generiek opgesteld wat leidt tot een enorme vrijheid voor de programmeur. Een belangrijke feature van Asha is bijvoorbeeld nondeterminisme, of in gewone-mensen-taal: als je een vraag stelt hoeft daar niet per se één antwoord op te volgen, het kunnen er ook meerdere zijn. Asha is in staat met deze onzekerheid om te gaan.
Als u geïnteresseerd bent in de ontwikkelingen rond Asha dan kunt u kijken op de site van de programmeertaal: www.ashaspeak.org |