~singpolyma/dhall-ruby

ref: e5560786a4ddbde7b6b1fc5e869bb3ef4e8b9126 dhall-ruby/lib/dhall/normalize.rb -rw-r--r-- 6.7 KiB
Update to new UnionType selection semantics
Fix rubocop except for parser metrics
fix type => [value|element]_type
Refactor LetBlock, allow single LetIn
Clean up style violations
Remove multi-argument applications

They only exist in binary encoding, so let's keep them there.
Working typechecker
Try on generic visitor
Generic subexpression_map

Make every Expression a ValueSemantics and use the known list of
attributes to map generically over any AST node.

Introduces a conditional, but removes boilerplate from every single
class.
Alpha normalization

Internal flag to disable for acceptance tests from the standard (which
assume beta-only normalization in some cases).  Otherwise, just always
alpha normalize as we go.
Update to fixed tests
Bare minimum refactor to pass the metrics
Pass most compliance tests

No import or multiline string support yet
Beta normalization complete
Implement "shift" function for variable indices
All beta normalization except for functions
First pass refactor
Implement many builtins and do Optional section
Next