Declaratieve taal

In de informatica worden computertalen ingedeeld in declaratieve talen en imperatieve talen. Heel kort gezegd is het verschil dat men in een declaratieve taal opschrijft wat er aan de hand is, en in een imperatieve taal hoe iets moet gebeuren. Een volkomen helder onderscheid is niet te maken.

Een taal is declaratief als de basiselementen geen opdrachten zijn, maar beschrijvingen die tot ingewikkelder beschrijvingen worden samengesteld. Daarmee is nog niets gezegd over de aard van die beschrijvingen. Er is daarom een groot spectrum aan declaratieve talen. Naar vorm zijn tekstuele en visuele talen te onderscheiden, qua doel zijn onder andere algebra's, logica's, opmaaktalen, documentformaten en modelleertalen bekend. Omdat vorm en doel samenhangen is het niet zinvol om alle mogelijke combinaties te behandelen. Verderop worden de volgende soorten besproken:

Een boodschappenlijstje dat volgens vaste regels opgesteld is, vormt een eenvoudig voorbeeld van imperatieve taal. Een imperatieve taal hoeft dus geen programmeertaal te zijn, en een programmeertaal hoeft niet imperatief te zijn. Toch zijn de meest bekende imperatieve talen programmeertalen, zie daarom imperatief programmeren voor dit onderwerp. Ook declaratieve talen hoeven niets met computers te maken te hebben: een plattegrond kan een declaratieve taaluiting zijn, evenzo een gestructureerde beschrijving van een supermarkt of van het logistieke proces dat zich daar afspeelt. Op de computer zijn HTML-pagina's, tekst- en databasebestanden en vele andere gebaseerd op declaratieve talen.

Een zuiver imperatieve taal is onmogelijk: het imperatieve boodschappenlijstje moet noodzakelijkerwijs de boodschappen omschrijven, of specificeren hoe ze te vinden zijn; evenzo is een programma een tekstuele of visuele declaratie van een gewenst elektronisch proces. Een taal in algemene zin kan wél volledig declaratief zijn, bij een computertaal is dat minder duidelijk: elke declaratie impliceert immers een opdracht aan de computer om iets weer te geven. Dat aspect is bij veel bestanden echter uitbesteed aan het programma waarmee het bestand geopend wordt. Zo is een hyperlink wel een imperatief element in HTML, maar het wordt aan de webbrowser overgelaten om daar al dan niet iets mee te doen; daarom wordt HTML gewoonlijk toch als declaratief beschouwd. Wel bevatten veel imperatieve talen voorzieningen met een declaratief karakter, en omgekeerd.


From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Tubidy