Skip to content

P0rth0s/typeInferenceProloge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Prolog type Inference
Harry Deffebach
6448-5421
=====================================
Run
=====================================
[typeInf].
consult("typeInf.plt"), run_tests().
 
All tests should pass. In case of error please make sure you are loading typeInf correctly.

=====================================
Changes
=====================================

Added multiplaction for integers and floats, added division for floats.

Added Boolean type.
Also added many fType built in functions such as greater than, less than etc.

Added if statements.

Added for loops. Iter and var must be same type

Added local variables that are deleted after code in IN argument runs - Delete is broken.

Linked typeExp and typeCode so that blocks of exp could be passed into functions and return last type in list.
This was neccessary for for loops since TypeExpList returns a curried version.

Made it so typeCode could be ([S], T) or ([[S]], T). This represents having multiple blocks of code.
Ie. (code block) ;; (code block) - as requested in readme todo list

=====================================
Bugs
=====================================
Local variables are currently broken

Test on 114 fails cant define a function, then use the function in the same infer block.
However if we do a typeStatement definition of the function, then another typeStatement
definition we can use functions. The problem seems to be that the function is not initialized
when it is called. maybe???

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published