summaryrefslogtreecommitdiff
path: root/src/parser.mly
AgeCommit message (Collapse)Author
2014-04-01Fix parsing of nexp constraintsGabriel Kerneis
2014-03-27Check simple constraints (i.e. ones using only constants).Kathy Gray
Changes syntax of tuple type from * to , so that nexps of the form 8 * 'n can be supported in the parser, which was apparently not true before.
2014-03-26Steps towards solving constraintsKathy Gray
2014-03-20Type bit[n] means bit[0..n-1]Gabriel Kerneis
2014-03-18Add parser support for empty and one element vectorsKathy Gray
2014-03-18More library functions for PowerGabriel Kerneis
2014-03-07Treat registers as values when not being actively read or written to, so ↵Kathy Gray
that we can have a vector of registers for example. Also, register types can be explicitly referenced.
2014-03-04Various deinfix bugsGabriel Kerneis
2014-02-28Correct bug in parsing and handling a['a:'b] typesKathy Gray
2014-02-18Adding explicit order to for loopsKathy Gray
2014-02-05Replace symbolic link by actual fileGabriel Kerneis
2014-02-05Fix type id parsing error ans associated type checking bugs in scatteredsKathy Gray
2014-02-05Typechecking lets, concrete vectors, and function calls (minus effects)Kathy Gray
2014-02-05Deinfixable colonGabriel Kerneis
2014-01-07Lex bitzero and bitone literalsGabriel Kerneis
2013-12-17Remove spurious lexing tokensGabriel Kerneis
2013-12-13Fix effect annotation bug, take 2Kathy Gray
2013-12-13Fix effect annotation pretty-printingGabriel Kerneis
There is also a bug for parsing effect annotations (in fundecl). But for some reason, my fix for the parser does not work: test/test2.sail still refuses to parse (chokes on "effect pure"), even with "Effect" added to parser.mly.
2013-12-03Syntax changes per discussion with Peter, as well as L2.ott document clean up.Kathy Gray
Could not at this time return lists to [| |] from [|| ||] as the parser cannot distinguish a cast with enum’s syntactic sugar from the start of a parenthesised list (i.e. ( [|3|] ) And there are still conflicts with moving enums to [3], so those changes can’t be pushed in with current parser technology.
2013-11-29minor syntax fixupsKathy Gray
2013-11-28Updated syntax with working examplesKathy Gray
2013-11-27More front-end passes for type identifiersKathy Gray
2013-11-22Syntax changes per discussions on Thursday.Kathy Gray
First pass parser to identify type names is in progress (current test files fail, will correct once pre-parser is in place)
2013-11-20Fixed the parsing of applicationKathy Gray
2013-11-01Moved metatheory grammars into l2_rules.ottKathy Gray
Added val extern specification to language, parser, printer, and interpreter Added various def level type system support, expressions type system in place Except for assignment
2013-10-09Memory reading (small change to signature for memory writes).Kathy Gray
Also fixed parser to accept id ( )
2013-09-26Adding undefinedKathy Gray
Also interpreter now supports reading and writing of basic registers (i.e with no subranges yet)
2013-08-22Pretty printer for whole AST; due to parenthesis not always being placed ↵Kathy Gray
where needed, what is generated may not parse
2013-08-19Add loops and document optionnal else in conditionalGabriel Kerneis
Syntax: foreach id from exp (to|downto) exp (by exp)? exp foreach and by are keywords; from, to and downto aren't.
2013-08-14More cases translating from parse_ast to ast. Plus parser changes to syntax ↵Kathy Gray
to support type casts; syntax changes not yet reflected in ott file
2013-08-01More removal of ws from l2.ott, correction to parser, and adding finite-map ↵Kathy Gray
as preliminary to some minor type checking (for environments)
2013-08-01Parse <_u, implicit else, and fix whitespacesGabriel Kerneis
2013-07-31Adding reporting basic from Lem development, also adding basic error ↵Kathy Gray
messages for syntax and lexical errors (i.e. syntax error and location information)
2013-07-30More infix supportedKathy Gray
2013-07-26A parser without any conflicts.Kathy Gray
The ott files have been adjusted to reflect some syntax changes in typquant specifications, and the type annotations are not optional for function definitions; we need additional syntax to help the parser if we want to allow functions without type annotations.
2013-07-26Remove white space/terminal trackingKathy Gray
2013-07-25Clean trailing whitespaceGabriel Kerneis
2013-07-25Small changes to reduce conflicts or make notes regarding causes of conflictsKathy Gray
2013-07-24Parser compiles and compiles some very small test programs.Kathy Gray
Output is only given in the event of a parse or lex failure (with poor reporting for now) There are still 10 shift/reduce conflicts that may need further investigating and a few syntax changes that need discussion.
2013-07-24Missed files from previous commitKathy Gray
2013-07-23Down to 7 shift/reduce conflicts (with 0 reduce/reduce). Possibly some ↵Kathy Gray
syntax needs to change. ott file now builds a pdf again
2013-07-23Down to 21 odd shift/reduce and 41 :( odd reduce/reduce; and some ↵Kathy Gray
ambiguities mentioned in comments
2013-07-18More parsingKathy Gray
2013-07-17commit to merge with headKathy Gray
2013-07-17Separated ott file for parsable AST and parser changesKathy Gray
2013-07-12Parser in progress, and more src files for plumbing parsing, lexing and ↵Kathy Gray
eventual type checking together
2013-07-11Commit to rebaseKathy Gray
2013-07-11More parsing and ott file tweaks for better AST outputKathy Gray
2013-07-10Fixes to grammar omissions (i.e. naming_scheme_opt and type_def vs tdef), ↵Kathy Gray
more token addition, and start of parsing
2013-07-05More token corrections and additions based on l2_design notes.Kathy Gray
Lexer should now be complete