Commit Graph

351 Commits

Author SHA1 Message Date
Iaroslav
521ea8bddc
Rename ClassWriters.kt to be consistent with local code style, rename AsmBuilders.kt to asm.kt, rename AsmNode back to AsmExpression, rename AsmGenerator to AsmBuilder 2020-06-15 17:36:30 +07:00
Iaroslav
b57b55ec1a
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-refactor-agc
# Conflicts:
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/AsmBuilders.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/AsmExpressions.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/AsmBuilder.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/optimization.kt
2020-06-15 17:23:35 +07:00
3434dde1d1 ASM API simplification 2020-06-15 11:02:13 +03:00
Iaroslav
a7302f49ff
Convert to expression body 2020-06-14 23:13:26 +07:00
Iaroslav
a8fa385497
Rename loadFromVariables to loadVariable 2020-06-14 23:01:34 +07:00
Iaroslav
4e28ad7d4e
Minor refactor 2020-06-14 23:00:26 +07:00
Iaroslav
635aac5f30
Refactor ex-AsmGenerationContext, introduce many bytecode utility functions to make its code readable, update compile method 2020-06-14 22:58:09 +07:00
Alexander Nozik
878d1379e1
Merge pull request #94 from CommanderTvis/adv-expr
Optimization of expressions via ASM Bytecode Generation
2020-06-13 21:07:14 +03:00
Iaroslav
d3d348620a
Rename AsmExpression to AsmNode, encapsulate AsmGenerationContext, make AsmNode (ex-AsmExpression) an abstract class instead of interface 2020-06-14 00:30:39 +07:00
Iaroslav
28cecde05b
Fix compilation problems found after merge 2020-06-14 00:24:10 +07:00
Iaroslav
cedfd3fe09
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-asm
# 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
2020-06-14 00:21:07 +07:00
Iaroslav
af410dde70
Apply the suggested changes 2020-06-14 00:18:40 +07:00
0950580b85 Moe better-parse to common.
Watch for https://github.com/h0tk3y/better-parse/issues/27
2020-06-13 18:26:18 +03:00
Iaroslav
e91f6470d3
Implement constants inlining 2020-06-13 17:07:22 +07:00
Iaroslav
f9835979ea
Fix specification bug 2020-06-13 16:48:45 +07:00
Iaroslav
e65d1e43cf
Write tests 2020-06-13 16:16:57 +07:00
Iaroslav
223d238c43
Encapsulate MethodVisitor extensions 2020-06-13 15:53:54 +07:00
Iaroslav
834d1e1397
Move specific optimization functions to Optimization 2020-06-13 15:53:25 +07:00
Iaroslav
1582fde091
Replace JUnit @Test with kotlin-test @Test 2020-06-13 15:51:42 +07:00
866ae47239 replace raw by symbol in algebra 2020-06-13 11:51:33 +03:00
Iaroslav
fec8c7f9d1
Minor refactor and encapsulation 2020-06-13 15:50:21 +07:00
Iaroslav
36ad1fcf58
Minor refactor and document 2020-06-13 15:44:54 +07:00
Iaroslav
3ec1f7b5f1
Merge kmath-asm and kmath-ast modules, make all the ExpressionAlgebras concise and consistent, implement new-styled builders both for ASM and F. expressions 2020-06-13 02:26:12 +07:00
Iaroslav
b902f3980a
Fix issues found after merge 2020-06-12 22:10:56 +07:00
Iaroslav
07b938e582
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-asm
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/functionalExpressions.kt
#	settings.gradle.kts
2020-06-12 21:58:50 +07:00
09641a5c9c Documentation 2020-06-12 16:59:36 +03:00
2751cee926 MST expression 2020-06-12 16:56:58 +03:00
Iaroslav
39907a1da2
Add name adapting of *, +, / 2020-06-12 19:50:28 +07:00
Iaroslav
1b20978f9c
Merge remote-tracking branch 'mipt-npm/dev' into adv-expr-asm 2020-06-12 17:41:05 +07:00
047af8c172 Fix ND extendend fields 2020-06-12 11:11:13 +03:00
5e92d85c46 Separate ast module 2020-06-12 10:40:59 +03:00
66c5c392cb Merge remote-tracking branch 'origin/dev' into adv-expr 2020-06-12 09:22:55 +03:00
Alexander Nozik
e367895beb
Merge pull request #97 from CommanderTvis/master
Upgrade Gradle from 6.3 to 6.5
2020-06-12 09:22:05 +03:00
a77d3d0bbf Merge branch 'dev' of https://github.com/altavir/kmath into adv-expr 2020-06-12 08:46:45 +03:00
8f204d0e64 Merge branch 'dev' into adv-expr 2020-06-12 08:44:06 +03:00
f46615d3bc Left and right-side operations in Algebra 2020-06-12 08:43:47 +03:00
Alexander Nozik
916d6962e6
Merge pull request #101 from CommanderTvis/adv-expr-fix-multiply
Fix multiplication in several rings in NumberAlgebra
2020-06-11 13:25:36 +03:00
e8a6ecd5c3 Merge remote-tracking branch 'origin/adv-expr' into adv-expr 2020-06-11 12:47:01 +03:00
0507bfcc24 Expression simplification 2020-06-11 09:46:42 +03:00
Commander Tvis
60898a3512
Merge remote-tracking branch 'mipt-npm/dev' into adv-expr-asm 2020-06-11 10:35:48 +07:00
Commander Tvis
91fa6d64bb
Merge remote-tracking branch 'mipt-npm/dev' into adv-expr-asm 2020-06-11 10:31:40 +07:00
Commander Tvis
ef67d82d84
Repair multiplication for Int, Long, Short, Byte Ring 2020-06-11 10:21:13 +07:00
Commander Tvis
89fae39013
Improve tests 2020-06-11 09:27:23 +07:00
Commander Tvis
e6f97c532b
Minor refactor: replace space property with field 2020-06-11 08:50:37 +07:00
Commander Tvis
927aa589ad
Add missing override modifiers 2020-06-11 08:49:38 +07:00
Commander Tvis
a4dfb4eb15
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-asm
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/Expression.kt
2020-06-11 08:45:42 +07:00
Commander Tvis
a0453da4b3
Refactor, replace constants List with Array, create specification of named functions 2020-06-10 08:57:17 +07:00
Iaroslav
1b6a0a13d8
Completely rework Expression API to expose direct unaryOperation and binaryOperation, improve ASM API accordingly 2020-06-10 00:44:56 +07:00
Iaroslav
33a519c10b
Apply new interfaces structure to ASM Expression Field/Space 2020-06-09 22:22:15 +07:00
Iaroslav
4dcdc0f99c
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-asm
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/Expression.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/FunctionalExpressions.kt
2020-06-09 22:17:42 +07:00