-
Notifications
You must be signed in to change notification settings - Fork 57
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
ASM Bytecode Generation to unwrap Expressions of adv-expr API #94
Conversation
…plementations to be available in constants
…API classes, make AsmCompiledExpression implement functional Expression, fix typos, encapsulate AsmGenerationContext
…to expose AsmGenerationContext to public API, refactor code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that the main problem is the exposed design. The AsmGenerationContext
should be made private or internal and hidden from the user. Also I think that produced entities should inherid Expression
so this functionality is compatible with functional implementation.
kmath-asm/src/main/kotlin/scientifik/kmath/expressions/AsmExpressions.kt
Outdated
Show resolved
Hide resolved
kmath-asm/src/main/kotlin/scientifik/kmath/expressions/AsmExpressions.kt
Outdated
Show resolved
Hide resolved
kmath-asm/src/main/kotlin/scientifik/kmath/expressions/AsmExpressions.kt
Outdated
Show resolved
Hide resolved
# Conflicts: # kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/Expression.kt # kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/FunctionalExpressions.kt
…binaryOperation, improve ASM API accordingly
# Conflicts: # kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/Expression.kt
@@ -0,0 +1,139 @@ | |||
package scientifik.kmath.expressions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The rename is meaningless since there is no class with that name. FunctionalExpressionAlgebra is acceptable though.
kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/Builders.kt
Show resolved
Hide resolved
kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/AsmExpressions.kt
Outdated
Show resolved
Hide resolved
kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/AsmExpressions.kt
Outdated
Show resolved
Hide resolved
kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/AsmGenerationContext.kt
Outdated
Show resolved
Hide resolved
kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/Optimization.kt
Outdated
Show resolved
Hide resolved
# Conflicts: # kmath-ast/build.gradle.kts # kmath-ast/src/commonMain/kotlin/scientifik/kmath/ast/parser.kt # kmath-ast/src/jvmMain/kotlin/scientifik/kmath/ast/Parser.kt # kmath-ast/src/jvmMain/kotlin/scientifik/kmath/ast/parser.kt
…ke AsmNode (ex-AsmExpression) an abstract class instead of interface
No description provided.