Typový systém
systém pravidel přiřazující typy jednotlivým konstrukcím, ze kterých se skládá počítačový program / From Wikipedia, the free encyclopedia
Typový systém lze v informatice definovat jako „tvárný syntaktický rámec pro klasifikování výrazů podle toho, jaký druh hodnoty vypočítávají“.[1] Typový systém porovnává datové typy a výpočty ve výrazech a tím umožňuje zajistit, že nedojde k typovým chybám. Různé operace očekávají různé datové typy a typový systém zajišťuje, aby nebyly použity hodnoty, pro které nemá operace smysl.
Kompilátor může k uložení hodnoty použít staticky definovaný datový typ a pak na ni aplikovat příslušný typ výpočtu. Například kompilátor jazyka C používá datový typ float, který je podle IEEE 754 reprezentován jako 32bitové číslo, a používá pro něj speciální strojové instrukce určené pro výpočty s pohyblivou řádovou čárkou.
Úroveň typových omezení a způsob jejich posuzování mají vliv na typování daného programovacího jazyka. Programovací jazyk může v případě typového polymorfizmu přiřadit každému typu další operace s různými konkrétními algoritmy. Teorie typů řeší typové systémy, i když konkrétní typové systémy vycházejí z praktických otázek jako je architektura počítače, implementace překladače a konstrukce programovacího jazyka.