Disable unnecessary transformations and cleaning up API#331
Disable unnecessary transformations and cleaning up API#331bettinaheim merged 157 commits intofeatures/transformationSetupfrom
Conversation
…tructor on subtransformations
…check IdentifierReferences transformation!
…oldingOverExpressions
…ally controlled are *not* public
cesarzc
left a comment
There was a problem hiding this comment.
Renaming really made the code more readable, this is great!
@ScottCarda-MS What is the reason to want it a separate PR? There is no benefit to that in terms of resolving merge conflicts, and logically the API clean up belongs here. |
bamarsha
left a comment
There was a problem hiding this comment.
Thanks for capitalizing all the method names!
|
|
||
|
|
||
| namespace Microsoft.Quantum.QsCompiler.Transformations.IntrinsicResolutionTransformation | ||
| namespace Microsoft.Quantum.QsCompiler.Transformations.IntrinsicResolution |
There was a problem hiding this comment.
Should the file be renamed to IntrinsicResolution.cs as well? The naming convention in this folder seems split between files that end in Transformation and those that don't. Since the namespaces are being shortened it could make sense to shorten the filenames too.
There was a problem hiding this comment.
My preference would be to rename the files, too, dropping the *Transformation ending. It seems silly to have all files within a folder named Transformations ending in Transformations as well. The reason they were named this way I believe is that there is a RewriteStep folder in the Compiler project that contains files with the same name which implement the IRewriteStep interface invoking these transformations. Personally, I think having both files have the same name is fine.
There was a problem hiding this comment.
Oh, I see. Yes, I think it's fine to have the same filenames since it should be clear from context which one is the transformation. If we don't do that then for consistency I'd argue that Conjugations.cs, FunctorGeneration.cs, etc. should be renamed to ConjugationsTransformation.cs, FunctorGenerationTransformation.cs, etc. I prefer the shorter names. :)
Then we also have files like BasicTransformations.cs and CodeTransformations.cs, but having files named Basic.cs and Code.cs would probably be confusing.
src/QsCompiler/Transformations/MonomorphizationValidationTransformation.cs
Show resolved
Hide resolved
src/QsCompiler/Transformations/IntrinsicResolutionTransformation.cs
Outdated
Show resolved
Hide resolved
Co-Authored-By: Sarah Marshall <33814365+marshallsa@users.noreply.github.com>
…on.cs Co-Authored-By: Sarah Marshall <33814365+marshallsa@users.noreply.github.com>
Since we do a pretty heavy breaking change for our transformation setup, I went ahead and also made a pass to clean up the API.
This PR also disables subtransformations that are not needed.