High - level talen creëren van programma's die zijn makkelijker voor een mens te ontcijferen , in tegenstelling tot low - level talen , die een machine gemakkelijker kan uitvoeren . Ze kunnen worden ingedeeld naar paradigma's , dat wil zeggen , classificaties van abstracties gebruikt om de zeggenschapsstructuur van de taal te begrijpen . Programmeertalen niet " afdalen " uit andere talen . Echter , taal ontwerpers lenen concepten en syntaxis van andere talen . Dit maakt nieuwe talen gemakkelijk te leren als je eenmaal de basis paradigma onder de knie hebt . Taal Typen De benadering van taal te typen verschilt per taal. Typering verwijst naar de indeling van de gegevens als een soort , en al dan niet een soort gegevens kunnen worden behandeld als een ander type gegevens door een programma . Zo wordt elk nummer, alfanumeriek teken of true /false waarde vertegenwoordigd door een binaire waarde . Daarom , zonder te typen , kon je een juridische uitdrukking die de waarde van het symbool berekent maken " ! " gedeeld door 2 . Getypeerde talen voorkomen dat dit , en static -achtige talen proef te typen voordat het programma wordt uitgevoerd , meestal wanneer gecompileerd . Samengesteld en geïnterpreteerde talen samenstellen van een taal zet het om in machine code en gecompileerde talen zijn ontworpen om te worden uitgevoerd op een zodanige wijze . Daarentegen , een geïnterpreteerde taal draait omdat een tolk programma scant de syntaxis taal en volgt de logische orden het vindt , zonder dat deze eerst te compileren . Het onderscheid tussen gecompileerd en geïnterpreteerde talen is vooral een kwestie van de voorkeur van de taal ontwerper - in theorie kan elke taal ofwel worden gecompileerd of geïnterpreteerd . Geïnterpreteerde talen worden ook wel ' scripting talen . " C + + , de meeste BASIC dialecten en Common Lisp zijn allemaal gecompileerde talen . Perl en Python zijn geïnterpreteerde talen . Java combineert zowel samengesteld en geïnterpreteerd paradigma , waarbij de normale Java-code is gecompileerd naar Java bytecode , die vervolgens door de Java Virtual Machine wordt geïnterpreteerd . Declaratieve vs Dwingend Programmeertalen kunnen belichamen declaratieve of imperatief paradigma : gedreven door computationele logica of control flow . Talen ontworpen met het declaratieve paradigma specificeren wat een machine zou moeten volbrengen , zonder noodzakelijkerwijs te geven hoe het moet worden gedaan . Zij omvatten talen gewijd aan een specifiek probleem domein, zoals HTML , en functionele programmeertalen zonder een blijvende toestand , zoals Lisp . De noodzaak paradigma daarentegen behandelt een programma een reeks opdrachten die de status van het programma te veranderen . Procedurele talen zoals C zijn noodzakelijk , en gestructureerde talen , zoals Java , gebruik maken van de dwingende stijl . Sommige talen , zoals die gevonden in een makefile gebruikt om programma's te bouwen , gebruik maken van zowel declaratieve en noodzakelijk stijlen . Gestructureerde en Object - Oriented Een speciale klasse van imperatieve talen , gestructureerde talen verdelen programma logica in aparte paragrafen aan "spaghetti -code ", of willekeurige logica springt reduceren tot moeilijk te volgen onderdelen van het programma . De gestructureerde aanpak werd gestold door object - georiënteerd programmeren , wat code snippets verdeeld in klassen en methoden . Java en C + + zijn objectgeoriënteerde programmeertalen . Metaprogramming " Metaprogramming " verwijst naar programma's die inwerken op andere programma's . Sommige talen zijn speciaal ontworpen voor metaprogramming . De Make taal , bijvoorbeeld , is een eenvoudige scripttaal die programma's geschreven in gecompileerde talen zoals C C + + en Python vertonen ook metaprogramming kenmerken . Compileert en draait |