-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Description
In order to lift a particular Op to have a different typing, you need to write:
- an
OpTransformerspecific to the input and output opTypes. - a static method that does the transformation itself
So, for example, we want to support lifting fromItoIterable<I>across all arityFunctions,Computers, andInplaces. This would require a separateOpTransformerClass and separate static method forComputer,BiComputer,Function,BiFunction,Inplace, and so on. To support all Op types would quickly bloat the code base.
What would be nice, if it is possible, would be to ditch the OpTransformer class entirely and to use annotations to create an OpTransformer from the method itself. In this way we would get rid of the vast majority of the code boilerplate while maintaining the static methods that are in essence the key of the transformation.
Metadata
Metadata
Assignees
Labels
No labels