aboutsummaryrefslogtreecommitdiff
path: root/frontend/convertDynamics.icl
AgeCommit message (Collapse)AuthorFilesLines
2016-06-06set FI_HasTypeCodes in fi_properties if a function contains type codes andjohnvg1-38/+41
should be converted in module convertDynamics, instead of storing a list with one nilPtr in fi_dynamics, remove unnecessary Let expressions with unused variables by initializing with VI_NotUsed instead of VI_Empty git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2724 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2014-04-03add unit typejohnvg1-0/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2365 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-12-13in derived dynamic types, add uniqueness to algebraic types that are always ↵johnvg1-1/+1
unique (the type definition has a * on the left), add Bool to GTT_Constructor to indicate uniqueness, generate TCE_UnqType in TypeCode for unique GTT_Constructor's, this uniqueness property should be propagated, but this is not implemented yet git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2336 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-04-02add type constraints in constructors and function arguments with universal ↵johnvg1-1/+4
quantifier (from iTask branch) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2218 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-08-14add extendable algebraic data types (merged from iTask branch)johnvg1-2/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2149 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-08-02add pattern match test using =: in expressions,johnvg1-5/+7
add constructors PE_Matches and IsConstructor in module syntax git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2130 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-05-25commit bug fix from revision 1735 again:johnvg1-13/+3
keep case_explicit, instead of setting case_explicit to False for all Case expressions (including cases not usings dynamics) in functions using dynamics. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2079 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-05-14import module _SystemDynamic instead of StdCleanTypes if -dynamics is used,johnvg1-56/+50
don't generate type representation in TD; functions, use TypeCodeConstructor and TD_ constructors instead of TypeCodeConstructor.. functions git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2070 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-11-10move type TypeCodeVariableInfo to module syntax, remove type ↵johnvg1-9/+1
DynamicValueAliasInfo, adjust imports git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2027 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-11-04remove differences in layout between the compiler and the iTask compiler,johnvg1-2/+3
modified case_explicit of generated cases git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1994 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-03-31use type Component instead of Group in the fusion modules: partition, ↵johnvg1-3/+10
classify and trans, because function pointers for generated functions are stored in the Component, they can be found without searching the new functions list git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1895 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-02-24git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1858 ↵johnvg1-9/+16
1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-02-23remove ImportedConstructors result from function ↵johnvg1-2/+2
convertDynamicPatternsIntoUnifyAppls, because it is always [] git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1847 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-02-23remove unused field wtis_collected_conses of WriteTypeInfoStatejohnvg1-6/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1843 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-02-07remove unused types in dynamic patterns in .tcl filejohnvg1-8/+0
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1833 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-02-02fix test for predefined module index in write_type_info,johnvg1-2/+0
requires new linkers git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1828 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-06-05keep case_explicit, instead of setting case_explicit to False for alljohnvg1-168/+98
Case expressions (including cases not usings dynamics) in functions using dynamics. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1735 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2006-11-01fix convertTypeCode for TCE_Selector, required if TC is used in thejohnvg1-48/+62
context of a class definition (e.g. class C a | TC a) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1618 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2005-11-22removed some code that has no effectjohnvg1-14/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1574 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2005-11-22removed unused function Fjohnvg1-3/+0
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1573 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2005-11-22removed use of /*2.0 and 0.2*/johnvg1-7/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1572 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2005-04-21remove unused variable nr_of_funsjohnvg1-3/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1531 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2004-04-19remove TC; typesronny1-4/+2
type constructors in dynamic types are now uniquely represented by the descriptor of their TD_ (type definition) function git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1486 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2004-03-17reification of type definitionsronny1-2/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1465 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2004-02-17cleanup: prune importsronny1-2/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1448 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-10-17added limited support for uniqueness attributes in dynamic typesronny1-0/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1394 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-08-19removed unused administrationsronny1-6/+6
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1370 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-08-19removed unused global type codes argumentsronny1-26/+17
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1369 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-05-16renamed field names of type Ident in syntax treeronny1-13/+13
s/\<mod_name\>/mod_ident/g s/\<ps_field_name\>/ps_field_ident/g s/\<ps_selector_name\>/ps_selector_ident/g s/\<pc_cons_name\>/pc_cons_ident/g s/\<class_name\>/class_ident/g s/\<gen_name\>/gen_ident/g s/\<gen_member_name\>/gen_member_ident/g s/\<gc_name\>/gc_ident/g s/\<gc_gname\>/gc_gident/g s/\<fs_name\>/fs_ident/g s/\<td_name\>/td_ident/g s/\<fv_name\>/fv_ident/g s/\<var_name\>/var_ident/g s/\<type_name\>/type_ident/g s/\<symb_name\>/symb_ident/g s/\<tv_name\>/tv_ident/g s/\<av_name\>/av_ident/g s/\<me_symb\>/me_ident/g s/\<ft_symb\>/ft_ident/g s/\<fun_symb\>/fun_ident/g s/\<cons_symb\>/cons_ident/g s/\<sd_symb\>/sd__ident/g git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1340 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-04-09don't call normalise if there are no variables in the typeronny1-6/+9
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1337 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-03-13use positive numbers for TypeVarFixedronny1-3/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1334 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-03-13introduced TypeFixedVar constructor for fixed type vars,ronny1-2/+1
the numbers of TypeFixedVars are still negative git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1333 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-03-13removed _TypePatternVar constructor from TypeCoderonny1-1/+2
The distinction between TypePatternVars and TypeVars is not really necessary. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1331 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-11-19- type synonyms in type definition written to a tcl-file are fully expanded now.martijnv1-24/+27
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1284 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-11-12bug fix,ronny1-3/+3
- compute correct number of type variables in type scheme - normalise if necessary git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1276 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-11-07correct numbering of type vars in right-hand side dynamicsronny1-3/+6
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1268 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-10-31Fix bug where wrong type code constructor was selected.ronny1-4/+4
The fix is to not use the index and table of type code constructors,. The indices and tables should be cleaned up later. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1265 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-10-14new type code and type code constructor representationronny1-206/+170
clean-up and renamed functions from StdDynamic git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1234 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-09-20moved var info definitions to the modules where they are usedronny1-0/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1204 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-09-20switch to 2.0 syntax, remove duplicated definitions from icl modulesronny1-5/+0
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1200 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-09-19major rewrite dynamicsronny1-1007/+626
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1197 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-07-29move typedefs from trans to syntax; allow for uncurried instances; fix ↵diederik1-1/+1
compare for PR_Unused git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1177 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-06-17removed ignored !'sjohnvg1-3/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1099 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-06-10- bug fix:types scopesmartijnv1-1/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1088 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-05-14- improved handling of equivalent types within one application to share amartijnv1-2/+2
single implementation. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1078 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-04-04* bug fix to correctly separate types without Clean definition from types whichmartijnv1-2/+1
have a Clean definition. git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1071 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-04-03- collection of used type constructors in unify/coerce. There are two sources:martijnv1-83/+118
dynamic pattern matches and types passed to type dependent functions. - added !Bool-field to GTT_Constructor - changed overloading, type and convertDynamics to propagate the type information git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1070 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-03-11- bug fix: added a forgotten alternative to function convertDynamics formartijnv1-3/+1
NoBind git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1055 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-03-11- bug fix: added a forgotten alternative to function convertDynamics formartijnv1-4/+5
NoBind git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1054 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-02-11removed comments that marked various patchesronny1-128/+16
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1016 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d