-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hocc code generation #246
hocc code generation #246
Commits on Aug 25, 2024
-
Revamp source directive documentation
The original source directive documentation used an implausible parser generator example to demonstrate nuances that are irrelevant to e.g. `hocc` code generation. Add a practical `hocc`-based example, and replace the original contrived example with another that focuses on the edge case nuances.
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for 329601f - Browse repository at this point
Copy the full SHA 329601fView commit details -
Implement Option.{value,some}_or_thunk
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for fc1388e - Browse repository at this point
Copy the full SHA fc1388eView commit details -
Fix String.C.Slice.Pattern.find
A cursor computation double-counted characters preceding the beginning of the slice being searched. Remove the double counting and add a test on non-maximal slices.
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for b2305ea - Browse repository at this point
Copy the full SHA b2305eaView commit details -
Update the String.length deprecation string to refer to the correct a…
…lternatives
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for c51f79b - Browse repository at this point
Copy the full SHA c51f79bView commit details -
Fix some type constructor examples
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for 64bf996 - Browse repository at this point
Copy the full SHA 64bf996View commit details -
Exclude hocc-generated OCaml files from formatting requirements
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for c58471c - Browse repository at this point
Copy the full SHA c58471cView commit details -
Implement hocc Hemlock/OCaml code generation
This is the last version based on the hand-written recursive descent parser.
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for ca05cc6 - Browse repository at this point
Copy the full SHA ca05cc6View commit details -
Replace the hand-written recursive descent hocc parser with a hocc-generated parser. The parsers have equivalent behavior with the inconsequential exception of how leading/trailing comments are associated with reduction callback code and the postlude.
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for 456d281 - Browse repository at this point
Copy the full SHA 456d281View commit details -
Merge {Abstract,Concrete}Token into Token
This data structure simplification removes unnecessary complexity dating to before the finalization of hocc's generated parser API.
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for 7c0cf53 - Browse repository at this point
Copy the full SHA 7c0cf53View commit details -
Make myriad hocc enhancements and fixes
Add hocc bootstrapping instructions in a comment at the top of `Parse.hmh`. Dune refuses to allow writes outside the build directory, so this is a more manual process than ideal. Enhance symbol type syntax in the hocc grammar, which previously supported types of the form `M.t` to support unqualified types (e.g. `t`), as well as general qualified types (e.g. `M.N.t`). Mangle `tl` as `tl__hocc__` in generated code. Fix callback generation for prods sharing a callback block. Implement richer binding pattern syntax. Remove syntax support for embedded code within the hocc block, and make keywords contextual rather than global. Incidentally, codegen failed to emit such embedded code.
Jason Evans committedAug 25, 2024 Configuration menu - View commit details
-
Copy full SHA for bd11103 - Browse repository at this point
Copy the full SHA bd11103View commit details