Lucas Kramer
Lucas Kramer
I recently converted the historical version tags we had for Silver into actual releases. Copper (and now ableC) will be storing release version info in the actual releases instead of...
This is basically what we outlined in the COLA reflection paper, but the practical implications are much more annoying than I previously thought. For example, @602p wanted to move the...
For example for two files in the same grammar: ``` -- A.sv nonterminal Foo; abstract production foo top::Foo ::= {} ``` ``` -- B.sv import silver:langutil; attribute pp occurs on...
It appears that when an OOM error is encountered, attempting to print the (huge) stack trace when we are already out of memory causes something else to fail prematurely, and...
For context, this problem showed up in ableC, where we are trying to use the C preprocessor tags to control the disambiguation of identifiers, based on whether we are currently...
Some unexpected behavior was discovered when experimenting with layout on an ableC extension for prolog-style logic programming. The following is a somewhat simplified grammar that seems to exhibit the same...
Currently there exists a layer of forwarding "injectable" operator productions between type-based operator overloading and the host productions. This mechanism poses issues for extensibility, and complicates tree sharing in operator...
We should remove the `dec*` wrapper productions once all uses have been eliminated from ableC extensions.
Currently ableC uses `decExpr` profusely in operator overloading; we should be using the new tree sharing mechanism instead.
This is an interesting case that Ted and I were discussing yesterday, and actually turned out to be a bug with the optimization I made to the algebraic data type...