This is a part of CS335:Compilers course at IITK. We have to implement these features:
- types and subtypes
- constrained and unconstrained types
- dynamic types
- conditional:if-else,case with others(like default in C)
- Unconditional:goto,return
- loops:for ,while_loop, until_loop, exit_loop, array_loop
- Integer types,Unsigned Integer types,Enumerations ( operators and attributes,enum,literals, Boolean and characters as enum literals ,enum subtypes,floating point types,fixed point types (ordinary as well as decimal)
- Arrays :with known subranges, with unknown subranges, with aliased elements,multidimensional arrays ,using arrays(assignment,concatenate,array attributes,null arrays)
- records:types of records are basic,tagged,null, discriminated, abstract tagged, limited,variant and union,with aliased elements
- All access types and their usage, limited types
- IO:text, direct, stream, sequential and storage
- Exceptions:predefined,IO,raising an exception.