Originally (like, a few years ago before I added the parse and various plugin-* packages) we had one implementation each of the canonicalName and canonicalVensimName functions in the compile package.
Over time I copied these functions into the parse and plugin-* packages because we didn't have a good way to share the implementations.
I ran into an issue with a model that uses parentheses in a variable name (and it's not easy to work around it in the mdl itself), so I would like to update our regex to handle this case (I will file a separate issue for that). But before fixing that issue, I would like to remove all the duplicate implementations so that we only have one place to fix.
Originally (like, a few years ago before I added the
parseand variousplugin-*packages) we had one implementation each of thecanonicalNameandcanonicalVensimNamefunctions in thecompilepackage.Over time I copied these functions into the
parseandplugin-*packages because we didn't have a good way to share the implementations.I ran into an issue with a model that uses parentheses in a variable name (and it's not easy to work around it in the mdl itself), so I would like to update our regex to handle this case (I will file a separate issue for that). But before fixing that issue, I would like to remove all the duplicate implementations so that we only have one place to fix.