summaryrefslogtreecommitdiff
path: root/src/parser.mly
AgeCommit message (Collapse)Author
2015-06-24Support new memory write events in the sail front end and pretty printerKathy Gray
Events are eamem to signal the memory address to write to and wmv to pass the value to write
2015-05-13Add dynamic footprint dependency check event/outcomeKathy Gray
Also fix type checker bug in not reporting modifications to parameter values
2015-04-08Fixes for power compilation reworkingKathy Gray
2015-03-26Add subtraction to nexp grammar (removing the need to do a + (-1 * b))Kathy Gray
Fix up parsing on 2** precedence Fix errors on type variables in function definition
2015-01-12Add specialised support for numeric singleton types (i.e. what used to be ↵Kathy Gray
range<'N,'N>) Non-sugar syntax is -- forall Nat 'N. atom<'N> Sugar syntax is -- [: 'N :] Also begin adding pp support for generating ocaml from ast types.
2014-11-22signed multiplication and quotKathy Gray
2014-11-21Support signed and unsigned arithmeticKathy Gray
2014-08-27Changes to get another (slightly larger) executable running;Kathy Gray
adding executable as a test as well
2014-07-29A file can now declare that a default order is either inc or dec, and this ↵Kathy Gray
will be reflected in short hand type syntax, inc is still the default if undeclared So: default order dec register bit[32] t (* Declares t as a decreasing vector, starting at 31 on the left and decreasing to 0 *) default order inc register bit[32] o (* Declares o as an increasing vector, starting at 0 on the left and increasing to 31 *) It is presently possible to change the default mid-file; this is almost certainly bad and I will turn it into an error soon.
2014-07-14Initial support for aliases and exit through the type system and the ↵Kathy Gray
interpreter. An alias can be read within the interpreter, but not written to. Exits aren't yet taken in the interpreter.
2014-07-04Force end-of-input when parsing expression listGabriel Kerneis
2014-07-03Parse list of expressions in Sail_libGabriel Kerneis
2014-07-03Introduce a Sail libraryGabriel Kerneis
Used by the Power XML extraction tool.
2014-06-26Adding better support for unspecified values in indexed vectorsKathy Gray
Also begining to add support for nondeterministic blocks and cleaning up some of the Many warnings on pattern matches
2014-06-25Add support for memory barrierKathy Gray
2014-06-23Get indexed vectors, particularly with default values, workingKathy Gray
2014-06-04Fixup type coercions and overloadingKathy Gray
Reduce the number of implicit coercions we're doing, expanding overloading and fixing up types of functions. Warning: test_power does not run as not all overloaded funcitons are implemented Warning: vector concatenation does not pretty print to sail source yet
2014-05-19More parser comments (and remove one spurious atomic_)Gabriel Kerneis
2014-05-15Check name_sect during parsingGabriel Kerneis
2014-05-15Questions and comments about parserGabriel Kerneis
2014-05-15Missing cases in lexer and parserGabriel Kerneis
2014-05-12Avoid pattern-matching warnings in pretty-printerGabriel Kerneis
2014-04-15Put conditional path information into constraint gathering so that checking ↵Kathy Gray
uses appropriate information gleaned from pattern matching
2014-04-08Reduce redundant information in ASTKathy Gray
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 ( )