I intend to make two major changes:
(1) change the Program data type so that the components of a program can be arranged in arbitrary order
(2) change type checking so that the result of type checking is Either (list of errors) (correct result)
These changes have currently been implemented in the smtgen branch. I have merged main into smtgen (which has apparently worked without problems) and now suggest to merge smtgen into main.
The changes in smtgen are currently still preliminary, in the following sense:
as to (1): I have created a type NewProgram that contains a list of top-level elements.
\What has to be done: change all the essential functions to work with NewProgram instead of Program.
as to (2): the typing functions have been changed to return a type TCEither t = Either [ErrorCause] t
What has to be done: change functions in L4LSP.hs to deal with this return type.
I intend to make two major changes: (1) change the Program data type so that the components of a program can be arranged in arbitrary order (2) change type checking so that the result of type checking is Either (list of errors) (correct result)
These changes have currently been implemented in the smtgen branch. I have merged main into smtgen (which has apparently worked without problems) and now suggest to merge smtgen into main.
The changes in smtgen are currently still preliminary, in the following sense:
as to (1): I have created a type NewProgram that contains a list of top-level elements. \What has to be done: change all the essential functions to work with NewProgram instead of Program.
as to (2): the typing functions have been changed to return a type TCEither t = Either [ErrorCause] t What has to be done: change functions in L4LSP.hs to deal with this return type.