aboutsummaryrefslogtreecommitdiff
path: root/frontend/parse.icl
AgeCommit message (Collapse)AuthorFilesLines
2017-03-07Tuple constructors (resolves #2)Camil Staps1-10/+13
2017-03-06Allow module on lower levelsCamil Staps1-1/+1
2017-03-06Revert previous commit; did not workCamil Staps1-9/+7
2017-03-06Make of in lambdacase optionalCamil Staps1-6/+8
2017-03-06Lambda-caseCamil Staps1-4/+23
2015-12-02allow # and | in \ expressionsjohnvg1-56/+122
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2671 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2015-11-27only allow infix constructor with arity 2, otherwise the compiler may crash ↵johnvg1-2/+11
when pattern matching git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2669 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2014-04-03add unit typejohnvg1-20/+60
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2365 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-10-23don't accept instance members defined using :==johnvg1-9/+20
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2306 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-06-03remove unused Bool of PE_Let contructorjohnvg1-3/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2249 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-04-10allow =: again for generic functions without argumentsjohnvg1-5/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2233 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-04-08add generic function dependencies for generic function definitions,johnvg1-41/+297
add generic case definitions in definition modules for the types used to make the generic representation, in generic case definitions in definition modules specify what generic info and dependencies are used git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2227 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-04-05add derive class for deriving generic functions in class context (from iTask ↵johnvg1-10/+37
branch) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2225 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-04-05change type GenericCaseDef, add types GenericCaseFunctions and GCFjohnvg1-17/+13
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2224 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-04-04add type constraints in dynamic typesjohnvg1-15/+26
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2221 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-04-02add type constraints in constructors and function arguments with universal ↵johnvg1-55/+105
quantifier (from iTask branch) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2218 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-10-24in the generic representation use RECORD instead of OBJECT and CONS for records,johnvg1-6/+6
change GenericInfo git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2191 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-10-16report a parse error if a strictness annotation or uniqueness attribute is ↵johnvg1-36/+60
used at the end of type or constructor arguments, for example: f :: Int ! -> Int or :: T = C Int * git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2189 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-10-08search and open file before calling wantModulejohnvg1-11/+14
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2184 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-09-21add hierarchical modulesjohnvg1-6/+7
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2177 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-08-14rename extendable to extensiblejohnvg1-4/+4
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-4/+31
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-41/+302
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-27replace function trySimpleExpressionT that parses either a pattern or an ↵johnvg1-122/+145
expression by functions trySimplePatternT and trySimpleExpressionT git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2126 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-07-27add functions wantPattern and wantExpressionjohnvg1-19/+40
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2124 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-07-27rename some functions in the parser,johnvg1-86/+79
use Pattern instead of LhsExpression and Expression instead of RhsExpression git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2122 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-07-24=: cannot be used anymore for variable definitionsjohnvg1-18/+23
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2120 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-03-23fix implicit qualified import of a module of which no (qualified) symbol is usedjohnvg1-3/+3
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2050 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-11-07remove differences in layout between the compiler and the iTask compilerjohnvg1-127/+131
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1999 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-08-10prevent compiler crash if an uppercase generic identifier is used in a patternjohnvg1-26/+21
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1958 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-04-21use strictness annotations in instance member types,johnvg1-10/+124
add instance member types in definition modules git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1932 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-04-18add instance declarations with a qualified class namejohnvg1-32/+42
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1928 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-04-14use type FunSpecials instead of Specials for specials of functionsjohnvg1-11/+23
(to have fewer differences with the haskell frontend branch) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1921 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-04-06add qualified import of a module, for functions, macros, constructors, types ↵johnvg1-40/+65
and classes git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1901 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-04-04use type ImportQualified instead of Bool for fields import_qualified and ↵johnvg1-3/+3
ei_qualified git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1899 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-03-21remove unused field td_context from type TypeDefjohnvg1-2/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1884 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-02-24git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1858 ↵johnvg1-9/+4
1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-02-23only generate a generic info argument for generic instances of kind *->*,johnvg1-3/+1
because OBJECT, CONS and FIELD have this kind and are the only types using generic info git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1855 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2010-11-24remove some old code in commentsjohnvg1-15/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1808 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2010-05-19allow shorted array and record updates after # or #! as:johnvg1-329/+363
r & f = e // same as r = {r & f=e} a & [i] = e // same as a = {a & [i]=e} nested and multiple updates are also allowed git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1786 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-12-22fix typo and remove numbers between () in error messagesjohnvg1-5/+5
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1755 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-05-14remember use of type Dynamicjohnvg1-52/+46
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1731 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-02-25add explicit import of generic functionsjohnvg1-0/+5
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1728 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2009-02-25replace type ImportedIdent by Ident because ii_extended is not usedjohnvg1-21/+14
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1727 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-11-20correct previous commitjohnvg1-1/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1692 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-11-20remove is_pattern argument from functionsjohnvg1-5/+5
want_array_assignments and want_array_assignment git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1689 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-04-13implement newtypejohnvg1-35/+62
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1672 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-04-12implement {# and {! in array comprehensions that create a new arrayjohnvg1-33/+53
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1671 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-04-12remove SwitchGenerics macrojohnvg1-11/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1668 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2007-02-14implement qualified explicit importsjohnvg1-152/+267
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1649 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d