A representation of types, type-checker, method and compiler are provided
for checking consistency in various forms of an intermediate language.
Specifically, the typed intermediate language is suitable for use in
representing programs written in multiple (heterogeneous) source
languages including typed and untyped languages, loosely and strongly
typed languages, and languages with and without garbage collection. An
unknown type representation indicates that an element of the intermediate
language is associated with an unknown type. A method of type-checking a
code segment written in a programming language is provided using a rule
set that contains rules for type-checking an unknown type. The unknown
type allows for selectively retaining type information as the compilation
process continues and allows multiple programming languages to be
type-checked by the same type system.
Una rappresentazione dei tipi, l'tipo-ispettore, il metodo ed il compilatore sono forniti per il controllo della consistenza in varie forme di una lingua intermedia. Specificamente, la lingua intermedia scritta è adatta ad uso nel rappresentare i programmi scritti nelle lingue di partenza (eterogenee) multiple compreso le lingue scritte e non archiviate, le lingue senza bloccare e fortemente scritte e le lingue con e senza l'accumulazione dell'immondizia. Un tipo sconosciuto rappresentazione indica che un elemento della lingua intermedia è associato con un tipo sconosciuto. Un metodo di tipo-controllo del segmento di codice scritto in un linguaggio di programmazione è fornito usando una regola regolata che contiene le regole per il tipo-controllo del tipo sconosciuto. Il tipo sconosciuto tiene conto tipo selettivamente di ritegno le informazioni mentre il processo della compilazione continua e che permette che i linguaggi di programmazione multipli tipo-siano controllati dallo stesso tipo sistema.