InversionSpaces
|
5c7f6a89c6
|
feat(compiler): Reimplement noXor compiler flag [LNG-347] (#1096)
* Fix imports
* Remove constants
* Return constants
* Refactor
* Add config
* Do not propagate errors
* Do not propagate errors through on
* Rename hop ephemeral streams
* Add comments
* Add tests
|
2024-03-05 10:45:21 +07:00 |
|
Dima
|
d7fef3db5f
|
fix(compiler): Bug in renaming [LNG-346] (#1094)
|
2024-02-29 09:23:34 +00:00 |
|
Dima
|
b22762ca6d
|
fix(compiler): Recursively find abilities [LNG-338] (#1086)
|
2024-02-21 14:11:21 +03:00 |
|
Dima
|
1a0b3a22c1
|
fix(compiler): Streams in closures generates wrong AIR (#1055)
|
2024-01-30 11:34:50 +03:00 |
|
Dima
|
abcb63db3b
|
perf(compiler): Inliner optimization [LNG-322] (#1047)
|
2024-01-22 10:08:06 +00:00 |
|
Dima
|
85f3ecdf39
|
fix(compiler): Add outside context to closures [LNG-317] (#1038)
|
2024-01-11 11:00:32 +03:00 |
|
Dima
|
5241f522d8
|
fix(compiler): Passing closures with abilities [LNG-314] (#1035)
|
2024-01-09 19:31:37 +03:00 |
|
InversionSpaces
|
ae32f80277
|
feat(compiler): for ... rec [LNG-307] (#1026)
* Add parser
* Add semantics
* Add inlining
* Add range test
* Rewrite to for ... rec
* Rewrite tests
* Fix import
* Add nested test
* Remove only
* Add yes|no test
* Add multi rec test
* Add pipeline test
* Unignore tests
* Change timeouts
* Add remote rec test
* Fix integration tests
* Add parser test
* Add semantics test
* Add inlining test
* Add comment
|
2024-01-09 12:48:02 +01:00 |
|
Dima
|
74d02e1f63
|
feat(language-server): Pass token types to LSP [LNG-285] (#999)
|
2023-12-07 12:06:51 +00:00 |
|
Dima
|
4cecab1a26
|
fix(compiler): Use correct empty stream as argument [LNG-280, LNG-292] (#967)
|
2023-11-28 10:45:12 +00:00 |
|
InversionSpaces
|
2d4b2aece4
|
fix(compiler): Allow returning resolved service as ability [LNG-266] (#977)
* Refactor
* Refactor type system
* Remove println
* Fix renaming
* Add unit tests
* Do not convert to call arrow
* Check ability
* Refactor captured values resolution
* Remove println
* Fix fields gathering
* Remove println
* Remove println
* Fix renaming, export ability
* Rename only abilities
* Fix unit tests
* Fix captured arrows renaming
* Add comments
* Refactor
* Rename only arrows
* Add comments, refactor
* Add comments
* Rename method
* Add integration test
---------
Co-authored-by: Anatolios Laskaris <github_me@nahsi.dev>
Co-authored-by: Dima <dmitry.shakhtarin@fluence.ai>
|
2023-11-23 10:12:44 +00:00 |
|
InversionSpaces
|
cee444862a
|
feat(compiler): Generate empty calls to responseHandlerSrv [LNG-286] (#979)
* Add noEmptyResponse
* Fix tests
|
2023-11-17 10:43:13 +00:00 |
|
InversionSpaces
|
11c8970fd8
|
feat(compiler)!: Make nil option bottom [LNG-279] (#968)
* Make nil option of bottom
* Fix tests
* Make literals of data type
* Add unit tests
* Remove print
|
2023-11-14 11:02:58 +00:00 |
|
InversionSpaces
|
68425ed42a
|
feat(compiler)!: Prohibit mutating options [LNG-277] (#960)
* Parse any nested type
* Refactor type system
* Fix restriction
* Refactor type resolution
* Return stream definition
* Update examples
* Refactor
* Refactor
* Refactor integration tests
* Export service
* Add integration test
* Fix args provider
* Add parser unit tests
* Add type resolution unit tests
* Add more unit tests
* DataTypeToken -> CompositeTypeToken
* GeneralStreamType -> MutableStreamType
* Refactor
* Refactor TypeResolution
* colType -> collectionType
* Refactor
* Fix PushToStreamSem
* BasicTypeToken -> ScalarTypeToken
* CompositeTypeToken -> BasicTypeToken
* Fix for nil
* Make stream collectible
* Refactor collectible type
* Use internalError
* Add unit tests
|
2023-11-13 11:58:36 +03:00 |
|
Dima
|
a1576efad9
|
fix(compiler): Code generate wrong stream name in AIR [LNG-276] (#958)
|
2023-11-02 13:13:25 +00:00 |
|
InversionSpaces
|
78ee753c7b
|
feat(compiler): Always generate last argument of fold [LNG-265] (#947)
* Always generate last in fold
* Fix unit tests
* Add methods
|
2023-10-30 12:58:51 +03:00 |
|
Dima
|
38f77285f5
|
fix(compiler): Throw an error when comparing an alias and a named type with the same name [LNG-231] (#946)
|
2023-10-27 11:18:44 +00:00 |
|
Dima
|
45ca7bbf3e
|
fix(compiler): Multiple closures in one function [LNG-262] (#941)
|
2023-10-27 09:24:52 +02:00 |
|
Dima
|
fab46ee130
|
fix(compiler): Return ability arrow [LNG-258] (#935)
|
2023-10-23 16:59:55 +03:00 |
|
InversionSpaces
|
c83d69e689
|
fix(compiler): Passed function is not handled correctly [LNG-260] (#940)
* Fix renaming
* Add integration test
|
2023-10-23 11:54:09 +00:00 |
|
InversionSpaces
|
03d23eb577
|
feat(compiler): Handle error function exit in tracing mode [LNG-250] (#921)
* Wrap function calls with xor
* Do not detach tracing call in case of error exit
* Fix comment
|
2023-10-17 13:42:38 +00:00 |
|
InversionSpaces
|
ba15d9e06a
|
fix(compiler): Fix topology for adjacent on s [LNG-257] (#929)
* Always enforce path
* Revert "Always enforce path"
This reverts commit 5ee1e37c9e .
* Add integration test
* Force return to relay
* Remove unused import
* Add comment
* Add unit test
* Add TODO
* Remove println
* Fix typo
|
2023-10-17 11:59:30 +00:00 |
|
InversionSpaces
|
5f6c47ffea
|
feat(compiler): Optimize math in compile time [LNG-245] (#922)
* Move service calls for math to inlining
* Fix: add predo
* Introduce CallServiceRaw
* Add comment
* Add optimization to inlining
* Add tests
* map -> mapValues
* Refactor type
* Add optimization
* Add optimization test
* Fix unit tests
* Fix PR comments
* Restrict optimization
* Add substraction to optimization
* Apply optimizations in gate
* Fix sign, move optimization to unfold
* Fix type and tests
* Fix unit tests
* Add unit test
* Fix after merge
* Add optimization, fix unit tests
* Fix comment
|
2023-10-09 13:02:26 +03:00 |
|
InversionSpaces
|
b298eebf5e
|
fix(compiler): Fix gate inlining [LNG-253] (#924)
* Fix gate inlining
* Remake stream gate inlining, fix unit tests
* Fix: add flat inline
* Refactor, add comments
|
2023-10-08 12:52:54 +02:00 |
|
Dima
|
878990a837
|
feat: Create structs with stream maps [fixes LNG-244] (#893)
|
2023-09-27 15:07:22 +03:00 |
|
InversionSpaces
|
ca6cae96ad
|
feat(compiler): Make if propagate errors [fixes LNG-202] (#779)
* Change if inlining, add fail model
* Inline if
* Fix, add comments
* Add integration test
* Fix test
* Fix test
* toBe -> toEqual
---------
Co-authored-by: Dima <dmitry.shakhtarin@fluence.ai>
|
2023-09-27 09:52:52 +00:00 |
|
InversionSpaces
|
f158074c4e
|
fix(compiler): Handle errors from result handling [fixes LNG-247] (#913)
Move args and return under try
|
2023-09-27 12:29:06 +03:00 |
|
InversionSpaces
|
a80033b81c
|
feat(compiler): Replace %last_error% with :error: [fixes LNG-239] (#883)
* %last_error% -> :error:
* Add integration test
* Fix integration tests
* Update integration test
|
2023-09-26 13:28:13 +03:00 |
|
InversionSpaces
|
27a781dd3f
|
feat(compiler): Add warnings subsystem [fixes LNG117] (#906)
* ErrorsAlgebra -> ReportAlgebra
* Refactor ReportAlgebra
* Refactor
* Refactor AquaError
* Fixes
* Add warnings, refactor
* Refactor parser
* Move semantics
* Savepoint
* Refactor semantics and compiler
* Refactor types
* Refactor compiler
* Refactor compiler
* Refactor types
* Refactor retunr types
* Return warnings
* Add simple warning
* Refactor to ValidatedNec
* Refactor
* Add comment
* Propagate warnings to LspContext
* Propagate warnings to LSP
* Add warnings to js api
* Update LSP js api
* Use export declare
* Add comment
* Refactor span rendering
* Remove variable name warning
* Add warning on unused call results
* Add unit tests
* Remove println
|
2023-09-25 13:00:43 +00:00 |
|
InversionSpaces
|
8741c910be
|
feat(compiler): Fail on internal error [fixes LNG-229] (#905)
* Refactor utils
* Add errors project
* logger.error -> internalError
* Add comment
* Suppress stack trace
---------
Co-authored-by: Dima <dmitry.shakhtarin@fluence.ai>
|
2023-09-19 17:01:42 +02:00 |
|
InversionSpaces
|
ed9e708939
|
fix(compiler): Fix arrows capture in closures [fixes LNG-242] (#903)
* Fix arrows capture
* Add comment
* Add test
* Add integration test
|
2023-09-19 14:25:11 +03:00 |
|
InversionSpaces
|
6be2a3d5da
|
feat(compiler): Services as abilities [fixes LNG-206] (#873)
* Refactor ServiceSem
* Refactor AbilityIdSem
* Remove tokens from state
* Refactor
* Add mangler
* Fix tests
* Refactor valueToRaw
* ServiceIdTag
* AbilityId -> ServiceId
* Add ServiceType
* Fix defineServiceType
* Refactor resolveArrowDef
* Refactor TypesHelper
* Add ServiceIdTag inlining
* Implement resolution
* Add service as ability passing
* Fix importing services
* Fix cli
* Implement default service
* Remove println
* Fix capture
* Add integration test
* Fix id
* Fix test
* Fix test
* Refactor test
* Do not resolve id
* Refactor FuncArrow creation
* Refactor FuncArrow wrapper creation
* Add named arguments
* Add comment
* ensureIsString -> valueToStringRaw, refactor OnSem
* Resolve services as abilities
* Add name to varNames
* Remove service hack
* Capture services, do not rename captured
* Rename arrows along with values
* Fix CallArrowRaw.map
* Fix unit tests
* Remove service case
* Refactor abilities state
* Propagate rootServiceIds
* Remove unused
* Add comments
* Refactor
* Refactor
* Add test
---------
Co-authored-by: Dima <dmitry.shakhtarin@fluence.ai>
|
2023-09-15 10:34:21 +02:00 |
|
InversionSpaces
|
c1fbea1a49
|
chore(compiler): Add PathFinder test (#872)
|
2023-09-04 11:22:57 +00:00 |
|
InversionSpaces
|
443e65e3d8
|
fix(compiler): Fix closure stream capture [fixes LNG-58] (#857)
|
2023-09-01 16:05:32 +03:00 |
|
InversionSpaces
|
2a0b207633
|
feat(compiler): Restrict abilities usage [fixes LNG-208] (#854)
* Refactor
* Refactor
* Refactor
* Remove ScopeRaw
* Refactor, forbid exporting
* Add export checks
* Refactor
* Forbid exporting abilities
* Fix integration tests
* Forbid implicit ability export
* Simplify exports
* Fordbid using non data types in collections
* Forbid unappropriate struct field types
* Refactor
* Add export tests
* Add collection tests
* Add struct fields test
* Fixes
* Fix
|
2023-08-24 16:09:39 +03:00 |
|
InversionSpaces
|
bf0b51fa5b
|
fix(compiler): Fix nested abilities [fixes LNG-220] (#852)
* Fix fields gathering
* Remove println
* Add test
* Remove println
* Add comments
* Add comments
|
2023-08-22 11:53:06 +02:00 |
|
Dima
|
8060695dbb
|
feat: parseq implementation (fixes LNG-223) (#840)
* parsec implementation
* add test code
* parsec expression
* Refactor
* Refactor
* Add return strategy to on
* Add ExitStrategy
* Add TopologyPath
* Add ExitStrategy.ToRelay
* Handle ToRelay
* Refactor
* Refactor
* Refactor
* Handle OnModel with Relay strategy
* parsec -> parseq
* parsec -> parseq
* Add semantics test
* Add topology tests
* Add comments
---------
Co-authored-by: InversionSpaces <InversionSpaces@vivaldi.net>
|
2023-08-21 14:26:30 +04:00 |
|
Dima
|
019611a89c
|
feat(compiler): Structural typing for data and abilities [fixes LNG-215] (#843)
|
2023-08-18 16:15:20 +03:00 |
|
InversionSpaces
|
eb4cdb0dd1
|
fix(compiler): Generate stream restriction for scoped exprs [fixes LNG-222] (#841)
* Add show for AST
* Update ForSem
* Fix if and try
* Fix else, otherwise, catch, add tests
* Add integration tests
|
2023-08-17 10:30:02 +04:00 |
|
InversionSpaces
|
f562bd40b6
|
fix(compiler): Refactor values [fixes LNG-57] (#821)
* Refactor parser
* Savepoint
* Refactor CliFunc and TypesInterpreter
* Fix CliFunc
* Fix parser tests
* Fix tests compilation
* Fix callArrowToRaw
* Fix co parsing, add tests
* Add par tests
* Fix field parsing, add test
* Return ability to CallArrowToken
* Fix names
* Refactor and add comments
* Refactor, add comments
* Fix
|
2023-08-15 13:33:34 +03:00 |
|
InversionSpaces
|
a5e9354aeb
|
feat(compiler): Add equality ops [fixes LNG-217] (#820)
* Add eq ops
* Fixed if
* Fix return
* Fix tests
* Add parser tests
* Fix types, add semantics tests
* Add integration tests
* Add integration test
* Remove comment
|
2023-08-09 13:38:24 +00:00 |
|
Dima
|
ef4b0143ac
|
fix(compiler): Runtime error on compilation exported functions with top types [fixes LNG-218] (#822)
|
2023-08-09 16:21:18 +03:00 |
|
Dima
|
4e3e70f4fc
|
fix(compiler): Nested abilities [fixes LNG-214] (#816)
|
2023-07-31 14:40:06 +03:00 |
|
InversionSpaces
|
a5b6102422
|
feat(compiler): Add boolean algebra [fixes LNG-211] (#814)
|
2023-07-27 14:11:36 +03:00 |
|
InversionSpaces
|
50ba194b86
|
fix(compiler): Fix math ops for u64 [fixes LNG-204] (#811)
|
2023-07-25 12:53:50 +03:00 |
|
Dima
|
63a9f42e86
|
feat(compiler): Abilities (#731)
|
2023-07-18 17:18:33 +00:00 |
|
InversionSpaces
|
b8b0fafda0
|
feat(compiler): Make on propagate errors [fixes LNG-203] (#788)
* Add fail model
* Make `on` propagate error
* Fix unit tests
* Fix TryTag inlining
* Update XorModel.wrap
* Add comments
* Remove wrapWithXor parameter
* Add unit tests
* Add integration tests
* Add comments
* Fix XorBranch topology
|
2023-07-12 16:18:47 +03:00 |
|
InversionSpaces
|
c1fe24b04d
|
feat(compiler): Make topology hop with non-FFI snippet [fixes LNG-125] (#764)
* Remove MakeRes.canon
* Replace noop with hop
* Rewrite join
* Remove JoinModel, fix tests
* Share code between tests
* Pass type in RestrictionTag(Model)
* Fix MakeRes.hop
* Fix wrapping
* Rename vars, add comments
* Fix XorBranch topology
* Fix tests
|
2023-07-06 12:44:37 +03:00 |
|
InversionSpaces
|
8ba7021cd4
|
refactor(semantics): Refactor semantics to produce concrete tags [fixes LNG-201] (#776)
* Introduce IfTag, TryTag; Remove XorTag
* Add IfTag, TryTag inlining
* Fix test compilation
* Fix test
* Hack to fix topology
* Support try otherwise syntax
* Add comments
* Refactor diff show
* Handle ParTag.Par in single check, add tests
|
2023-06-29 16:20:47 +00:00 |
|
Dima
|
339d3a8217
|
refactor: ArrowInliner refactoring (#777)
|
2023-06-29 11:43:38 +00:00 |
|