aboutsummaryrefslogtreecommitdiff
path: root/frontend/classify.icl
AgeCommit message (Collapse)AuthorFilesLines
2013-04-02add type constraints in constructors and function arguments with universal ↵johnvg1-1/+20
quantifier (from iTask branch) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2218 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-08-14rename extendable to extensiblejohnvg1-2/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2150 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-08-14add extendable algebraic data types (merged from iTask branch)johnvg1-8/+12
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2149 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-08-08make field aci_linearity_of_patterns of record ActiveCaseInfo strictjohnvg1-3/+14
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2138 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-08-07use an unboxed tail strict list for cc_linear_bits to reduce memory usagejohnvg1-10/+11
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2136 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-08-02add pattern match test using =: in expressions,johnvg1-4/+10
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-07-16optimize consumer analysis of cases,johnvg1-192/+337
don't create a list of arrays with variable references for each case alternative, instead allocate a few arrays and reuse these, unify and combine the reference counts after each alternative, optimize functions unify_counts and combine_counts, don't sort the case alternatives twice git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2118 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-06-18in module classify, unify of Seq n1 [] and Seq n2 [] is Seq (max n1 n2) []johnvg1-7/+11
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2099 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-06-11make RefCount array elements strict, to prevent a space leak of unify thunksjohnvg1-6/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2083 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-11-10move type TypeCodeVariableInfo to module syntax, remove type ↵johnvg1-4/+1
DynamicValueAliasInfo, adjust imports git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2027 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-11-08remove unnecessary imports of module check,johnvg1-1/+1
remove import of StdCompare in checksupport.dcl, changed some other imports git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2010 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-11-04remove differences in layout between the compiler and the iTask compilerjohnvg1-2/+4
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1989 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-04-19use unique array select and update instead of replacejohnvg1-1/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1930 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-03-31use type Component instead of Group in the fusion modules: partition, ↵johnvg1-178/+170
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-03-30make the following identical local functions of functions analyseGroups and ↵johnvg1-86/+55
reanalyseGroups global: get_linearity_info, get_linearity_info_of_pattern, get_var_index, set_linearity_info git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1893 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2010-02-05remove some white spacejohnvg1-41/+25
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1766 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2010-02-05move producerRequirements from module trans to module classifyjohnvg1-0/+241
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1765 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-04-11remove import of module checksupportjohnvg1-1/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1662 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-06-23optimize allocation of Par and Seq constructors to prevent heap overflowjohnvg1-2/+12
(>100 m) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1362 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-05-16renamed field names of type Ident in syntax treeronny1-7/+7
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-03-12extra curried fusion fixesdiederik1-227/+389
extended unused args analysis improved strictness for case instantiation dead code removal git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1329 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-01-08Bug fix: uniqueness error in recordssjakie1-5/+6
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1308 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-12-02add strictness annotationsdiederik1-7/+19
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1297 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-11-15Fix bug with active and accumulating dictionary argsdiederik1-0/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1282 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-09-30improved case classificationdiederik1-179/+180
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1213 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-09-30add 'safe' to active case info for casefun generationdiederik1-11/+80
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1212 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-08-07Add consumer annotations changed flag to reanalyseGroups result;diederik1-16/+67
Make all dictionary arguments active git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1185 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-07-25fix typodiederik1-2/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1174 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-07-25extend for reclassifydiederik1-110/+671
improve refcounts for case git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1173 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-07-25make args for which specials exist activediederik1-0/+14
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1172 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-07-25rename consumer classifications and add CUnuseddiederik1-43/+65
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1170 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-07-24move consumer classification to separate modulediederik1-0/+594
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1166 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d