Wpisywanie manifestu — Manifest typing

W informatyce, manifest typowania jest wyraźna identyfikacja przez programistę oprogramowania w rodzaju każdej zmiennej jest zadeklarowana. Na przykład: jeśli zmienna X będzie przechowywać liczby całkowite, to jej typ musi być zadeklarowany jako liczba całkowita. Określenie „manifest wpisując” jest często używany z terminem utajonego typowania opisać różnicę między statyczne , kompilacji członkostwa typu obiektu i jego run-time typu tożsamości.

W przeciwieństwie do tego, niektóre języki programowania używają niejawnego pisania (aka wnioskowania o typie ), w którym typ jest wywnioskowany z kontekstu w czasie kompilacji lub umożliwiają dynamiczne wpisywanie, w którym zmienna jest właśnie zadeklarowana i może mieć przypisaną wartość dowolnego typu w czasie wykonywania.

Przykłady

Rozważmy następujący przykład napisany w języku programowania C :

#include <stdio.h>

int main(void) {
    char s[] = "Test String";
    float x = 0.0;
    int y = 0;

    printf("Hello, World!\n");
    return 0;
}

Zauważ, że zmienne s , x i y zostały zadeklarowane odpowiednio jako tablica znaków, liczba zmiennoprzecinkowa i liczba całkowita. System typów odrzuca w czasie kompilacji takie błędy, jak próba dodania s i x .

W przeciwieństwie do tego, w Standard ML , te typy nie muszą być wyraźnie zadeklarowane. Zamiast tego typ jest określany przez typ przypisanego wyrażenia.

let val s = "Test String"
    val x = 0.0
    val y = 0
in print "Hello, World!\n"
end

Nie ma żadnych oczywistych typów w tym programie, ale kompilator nadal wnioskuje typy string, reali intdla nich, i odrzuci ekspresję s+xjako błąd kompilacji.

Zewnętrzne linki