7.8.2 Runtime types

Prev Up Next Page 209 of 800 Search internet

Logiweb is untyped in the sense that it only supports one kind of data: the map. Tags, however, allow to think of tagged data as being typed, but the type check occurs at run-time as opposed to statically typed languages whose compilers can do type checking at compile time.

Even though Logiweb is born untyped, nothing prevents the user to define a typing discipline. Furthermore, the user may enforce the typing discipline by including a type checker together with the test case evaluator of the base page and the proof checker of the check page.

Thus, Logiweb is born without a static typing system but gives authors free hands to define their own typing system. If you make a typing system and want to share it with others, publish it on Logiweb. Then other users may use it if they like.

Note that when using the lgc compiler, static types can only be checked after parsing. The parser of the lgc compiler is untyped, so static types have to be implemented in such a way that one first does untyped parsing and then checks that types are correct. If one wants the parser to benefit from user types, one must write a new compiler.

The lgc compiler and the lgs source language are not part of the Logiweb standard, so feel free to define your own language and write your own compiler or software development environment. As long as your tool produces Logiweb pages in Logiweb vector format, your tool can be used together with the rest of Logiweb.

Prev Up Next Page 209 of 800 Search logiweb.eu

Copyright © 2010 Klaus Grue, GRD-2010-01-05