Tolk is een programma dat instructies uitvoert die zijn geschreven in een taal op hoog niveau. Er zijn twee manieren om programma’s uit te voeren die zijn geschreven in een taal op hoog niveau. De meest gebruikelijke is om het programma te compileren; de andere methode is om het programma door een tolk te leiden.
Tolk versus compiler
Een tolk vertaalt instructies op hoog niveau in een tussenvorm, die hij vervolgens uitvoert. Een compiler daarentegen vertaalt instructies op hoog niveau rechtstreeks in machinetaal. Gecompileerde programma’s werken over het algemeen sneller dan geïnterpreteerde programma’s. Het voordeel van een tolk is echter dat deze niet de compilatiefase hoeft te doorlopen waarin machine-instructies worden gegenereerd. Dit proces kan tijdrovend zijn als het programma lang is. De tolk daarentegen kan onmiddellijk programma’s op hoog niveau uitvoeren.
Om deze reden worden soms tolken gebruikt tijdens de ontwikkeling van een programma, wanneer een programmeur kleine secties tegelijk wil toevoegen en deze snel wil testen. Daarnaast worden tolken vaak ingezet in het onderwijs omdat ze studenten interactief laten programmeren.
Zowel tolken als compilers zijn beschikbaar voor de meeste talen op hoog niveau. BASIC en LISP zijn echter speciaal ontworpen om te worden uitgevoerd door een tolk. Bovendien gebruiken paginabeschrijvingstalen, zoals PostScript, een tolk. Elke PostScript-printer heeft bijvoorbeeld een ingebouwde interpreter die PostScript-instructies uitvoert.