Zjevné psaní - Manifest typing
Typové systémy |
---|
Obecné pojmy |
Hlavní kategorie |
|
Vedlejší kategorie |
Ve vědě o počítačích, manifest psaní je jednoznačné identifikace pomocí softwarového programátora na typu každé proměnné je deklarována. Například: pokud proměnná X bude ukládat celá čísla, pak její typ musí být deklarován jako celé číslo. Termín „manifestu psaní“ je často používán s termínem latentní psaní pro popis rozdílu mezi statickým , v době kompilace typu členství v objektu a jeho běhu typu identity.
Naproti tomu některé programovací jazyky používají implicitní psaní (aka odvození typu ), kde je typ odvozen z kontextu v době kompilace nebo umožňuje dynamické psaní, ve kterém je proměnná právě deklarována a může jí být za běhu přiřazena hodnota jakéhokoli typu.
Příklady
Zvažte následující příklad napsaný v programovacím jazyce C :
#include <stdio.h>
int main(void) {
char s[] = "Test String";
float x = 0.0;
int y = 0;
printf("Hello, World!\n");
return 0;
}
Proměnné s , x a y byly deklarovány jako pole znaků, číslo s plovoucí desetinnou čárkou a celé číslo. Typový systém v době kompilace odmítá takové bludy, jako je snaha přidat s a x .
Naproti tomu ve standardním ML jsou typy nemusí být explicitně deklarovány. Místo toho je typ určen typem přiřazeného výrazu.
let val s = "Test String"
val x = 0.0
val y = 0
in print "Hello, World!\n"
end
Nejsou žádné zjevné druhy uvedené v tomto programu, ale kompilátor stále vyvozuje typy string
, real
a int
pro ně, a bude odmítat výraz s+x
jako chybu v čase kompilace.