Commit Graph
100 Commits
Author SHA1 Message Date
sergeych c9eb3df93d Add Deferred.joinAll helper 2026-04-09 11:27:32 +03:00
sergeych 402b8bb1b3 Fix native CLI TCP regression path 2026-04-09 11:00:23 +03:00
sergeych aa1b74620e docs for cli fix; KMP compatibility bug fix 2026-04-08 22:54:22 +03:00
sergeych ef95ed4405 package structure/import for CLI 2026-04-08 22:38:34 +03:00
sergeych b6c6ef021a fixed some exception catching problems on wasm target 2026-04-08 22:05:02 +03:00
sergeych c6cfd52b01 fixed site docs behavior on narrow screens 2026-04-08 10:53:21 +03:00
sergeych 12fb4fe0ba + String.replace 2026-04-08 10:45:01 +03:00
sergeych 368ce2ce8c added buffer.base64std 2026-04-08 09:27:52 +03:00
sergeychandClaude Sonnet 4.6 d0d79d2f07 docs: add LegacyDigest module documentation
- New docs/LegacyDigest.md: full reference for lyng.legacy_digest,
  covering the sha1() API, input types (String / Buffer), FIPS compliance
  note, and explicit guidance on appropriate vs. inappropriate use.

- docs/ai_stdlib_reference.md: entry in section 5 so AI agents know
  LegacyDigest.sha1() exists and is intentionally named as legacy-only.

- docs/whats_new.md: release-note section alongside Complex, Decimal,
  and Matrix, with a minimal runnable example and cross-link.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 19:53:01 +03:00
sergeychandClaude Sonnet 4.6 69013392d3 Add lyng.legacy_digest module with LegacyDigest.sha1()
Provides a pure Kotlin/KMP SHA-1 implementation with no extra dependencies,
exposed as `LegacyDigest.sha1(data)` in the `lyng.legacy_digest` package.

The naming deliberately signals that SHA-1 is cryptographically broken:
the object name `LegacyDigest` and prominent doc-comment warnings steer
users away from security-sensitive use while still enabling interoperability
with legacy protocols and file formats that require SHA-1.

API:
  import lyng.legacy_digest
  val hex: String = LegacyDigest.sha1("some string")   // UTF-8 input
  val hex: String = LegacyDigest.sha1(someBuffer)       // raw-byte input

Tests cover FIPS 180-4 known-answer vectors (empty, "abc", long message,
quick-brown-fox) at both the Kotlin and Lyng integration levels.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 19:51:04 +03:00
sergeychandClaude Sonnet 4.6 f145a90845 Fix method slot ID collision between instance and static methods
When createField() was called with a pre-assigned methodId, the ID was
used but methodIdMap was not updated and nextMethodId was not advanced.
This caused assignMethodId() for static methods to reuse slot IDs
already occupied by instance methods.

In complex.lyng, fromInt/imaginary got IDs 12/14 (same as plus/mul),
causing binary operator dispatch via CALL_MEMBER_SLOT to call the wrong
function (e.g. a*b would invoke imaginary instead of mul).

Fix: after computing effectiveMethodId in createField, always register
it in methodIdMap and advance nextMethodId past it so subsequent
auto-assignments start from a clean range.

Also pre-assigns method IDs for non-static fun/fn declarations during
class body pre-scan so forward references resolve correctly in class
bodies, and adds ComplexModuleTest coverage for operator slot dispatch.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 19:41:18 +03:00
sergeych 2f145a0ea7 Fix nullable let member inference 2026-04-07 09:33:40 +03:00
sergeych 15617f6998 more docs 2026-04-07 01:01:26 +03:00
sergeych 583067780f Support object extension indexers 2026-04-07 00:49:51 +03:00
sergeych 8386337c42 missing docs on object extension 2026-04-07 00:05:34 +03:00
sergeych 83099148bd index return value inference fixed 2026-04-06 20:03:55 +03:00
sergeych 1fca2b112f Fix parsing of generic extension functions 2026-04-06 19:29:06 +03:00
sergeych 35628c8453 Support extensions on singleton objects 2026-04-06 19:24:28 +03:00
sergeych 671583638b v1.5.5-SNAPSHOT started. compile if support 2026-04-06 11:09:14 +03:00
sergeych 214f1aec9e v1.5.4 release 2026-04-05 06:34:30 +03:00
sergeych 657c0c5d18 optimize VM: removed cmd.isFast 2026-04-05 06:12:49 +03:00
sergeych 90718c3c17 optimize VM 2026-04-04 10:35:08 +03:00
sergeych d8454a11fc optimize arithmetics 2026-04-04 04:01:43 +03:00
sergeych 161f3f74e2 fixed disabled concurrency in CLI 2026-04-03 23:42:43 +03:00
sergeych 1cead7822a Prepare 1.5.4 release defaults and metadata 2026-04-03 23:28:09 +03:00
sergeych 064b927b1a Stabilize pi benchmark optimizations for release 2026-04-03 23:16:08 +03:00
sergeych a7ab0d3905 added static List.fill(size) { ... } 2026-04-03 21:15:41 +03:00
sergeych f1003f5b95 Add descending ranges and for-loop support 2026-04-03 20:58:08 +03:00
sergeych d8c53c500e Package JVM distribution as a zip, update symlink creation, and document changes in CLI and downloads. 2026-04-03 20:36:30 +03:00
sergeych b3efe019d9 Fix delay function to correctly interpret Int as milliseconds in scripts 2026-04-03 18:52:38 +03:00
sergeych 2414da59a7 fixed terminal problems in lyng CLI with new console support on linux 2026-04-03 12:12:55 +03:00
sergeych fd6d05d568 anotther compiler inference bug andlyng.io.console improvements 2026-04-03 11:55:25 +03:00
sergeych caad7d8ab9 stdlib inference bug fixed 2026-04-03 11:04:16 +03:00
sergeych 88b0bb2147 Add TCP server example and refactor script execution flow 2026-04-02 22:55:29 +03:00
sergeych 38646c6257 Update platform support matrix with detailed statuses and legend 2026-04-02 20:41:54 +03:00
sergeych f61ac35580 added networking to the CLI 2026-04-02 20:27:13 +03:00
sergeych 9bee0aed5b Merge branch 'inference-bug'
# Conflicts:
#	lyngio/src/commonMain/kotlin/net/sergeych/lyng/io/http/LyngHttpModule.kt
2026-04-02 20:06:11 +03:00
sergeych cd7e001f41 Refactor KMP networking backends 2026-04-02 20:04:25 +03:00
sergeych 62520f6203 Add downloads page and navigation link to site 2026-04-02 19:27:19 +03:00
sergeych d0aaa2c256 fix tetris code: declaration now in place 2026-04-02 19:25:17 +03:00
sergeych 5346d15a9f Add KMP networking backends 2026-04-02 19:23:46 +03:00
sergeych 7578128689 some order to outdated and special docs 2026-04-02 19:10:48 +03:00
sergeych 71243b6bde Stabilize browser unicode script test 2026-04-02 17:10:58 +03:00
sergeych 7b65ff9d0e Fix inference regression and green tests 2026-04-02 16:48:14 +03:00
sergeych d409a4bb8b Add verified Ktor-backed networking modules to lyngio 2026-04-02 16:19:14 +03:00
sergeych f168e9f6ed version bump 2026-04-02 13:01:51 +03:00
sergeych a051280e0c fix in site search and more tests on evalSession cancellation 2026-04-02 03:02:46 +03:00
sergeych fc01016a74 Added EvalSession way of controlling all coroutines started from a script 2026-04-02 02:05:14 +03:00
sergeych 446c8d9a6e minor additions 2026-04-01 02:51:00 +03:00
sergeych c140567e0c made last changes KMP compliant 2026-04-01 02:51:00 +03:00
sergeych 311cf6ee44 Add Lyng deferred cancellation support 2026-03-31 22:50:46 +03:00
sergeych 3e338f3d53 Fix sqrt type inference and add regression coverage 2026-03-31 22:26:58 +03:00
sergeych c097464750 - fixed CLI -x mode
- fixed a wrong error message when global symbol is not found
2026-03-31 20:52:31 +03:00
sergeych 6e9333844e support for Decimal.isInfitite and isNan 2026-03-31 19:13:45 +03:00
sergeych a976702caf support for Real.isInfitite and isNan 2026-03-31 19:08:11 +03:00
sergeych 850efedb72 Handle non-finite real/decimal arithmetic 2026-03-31 16:57:18 +03:00
sergeych f845213332 fixed Decima/Complex interop bug 2026-03-30 09:25:29 +03:00
sergeych cdd48ec871 Improved instance method resolution logic and added test for Decimal overloading. 2026-03-30 08:53:07 +03:00
sergeych 286ec30422 Added Decimal support for complex number 2026-03-30 08:20:55 +03:00
sergeych 8a560f5417 fixed interpolation bug 2026-03-29 12:35:10 +03:00
sergeych 966b6a31ae extended inference of fun return type 2026-03-29 03:57:02 +03:00
sergeych c3c0a3292b fixed Decimal conversion bug 2026-03-29 03:35:53 +03:00
sergeych aa9565b40b fixed Decimal (and other such classes ) comparison 2026-03-29 01:29:48 +03:00
sergeych 05d7432b37 fixes on Decimals and bound kotlin classes 2026-03-29 01:20:20 +03:00
sergeych c7c333b71a fixed some issues with Decimals 2026-03-29 00:39:48 +03:00
sergeych e55d9c835a another snapshot release, configs for matrix operations 2026-03-28 23:28:28 +03:00
sergeych 83d8c8b71f Added Vectors and Matrics operations, slicing, docs. 2026-03-28 22:25:40 +03:00
sergeych a72991d1b7 debug stuff cleanup and simplify 2026-03-28 17:50:53 +03:00
sergeych cd007050a8 added complext number support 2026-03-28 17:44:43 +03:00
sergeych 418b1ae2b6 Fix captured bound global writes in nested bytecode blocks 2026-03-28 00:47:08 +03:00
sergeych b0fb65a036 Fix bound property captures and property slot resolution 2026-03-28 00:00:59 +03:00
sergeych 86e8b2e2bc site upgrades 2026-03-27 22:36:23 +03:00
sergeych a98fe51983 version bump 2026-03-27 21:49:53 +03:00
sergeych f8d36beae1 Merge branch 'bigdecimals' 2026-03-27 21:32:25 +03:00
sergeych 580256d520 Add decimal module and operator interop registry 2026-03-27 21:31:37 +03:00
sergeych 5ab074ba9e readme updated 2026-03-27 21:30:21 +03:00
sergeych 4269310beb Use canonical class identity for delegate checks 2026-03-27 19:19:38 +03:00
sergeych 7c059b4741 Fix lazy delegate type resolution across modules 2026-03-27 18:57:27 +03:00
sergeych 217787e17a Temporary lazy builtin baseline 2026-03-27 18:46:53 +03:00
sergeych 9ddc7dbee6 Fix remaining compiler and VM review findings 2026-03-27 16:10:49 +03:00
sergeych 24937c7cf5 some commercial proposals and clarifications 2026-03-27 15:53:12 +03:00
sergeych ecc4d8b9ed Add explicit script import prep APIs and VM regression tests 2026-03-27 15:51:17 +03:00
sergeych 3d8bfe8863 Add Lyng string interpolation with docs/tests and refresh changelog 2026-03-25 18:43:23 +03:00
sergeych 3b83439788 Rewrite Lyng common-platform proposal with validated samples 2026-03-25 17:53:57 +03:00
sergeych 0af0f31e48 site version fix 2026-03-22 03:11:34 +03:00
sergeych d17ad9ef0d 1.5.0 release; console stability fix; tetris sample rewritten to be RC-free 2026-03-22 03:11:08 +03:00
sergeych 222a653040 pause for tetris ;) 2026-03-21 01:44:28 +03:00
sergeych f24c7d2715 some docs tweaks 2026-03-20 23:44:18 +03:00
sergeych 2546a5327f better tetris ;) 2026-03-20 23:04:01 +03:00
sergeych 4df6612eca 1.5.0-RC2: build fixes 2026-03-19 22:45:08 +03:00
sergeych 2a79c718ba 1.5.0-RC2: improved lyngio.console, some polishing 2026-03-19 22:41:06 +03:00
sergeych d92309d76c fixed version for site badge 2026-03-19 01:34:23 +03:00
sergeych 767e995a96 RC version bump 2026-03-19 01:33:08 +03:00
sergeych 794553d81d Add stdlib Random API and migrate tetris RNG 2026-03-19 01:30:35 +03:00
sergeych d9d7cafec8 +added console spport for lyngio
+added console support to lyng/jlyng CLI
+added unicode escapes
+created tetris console sample
2026-03-19 01:09:32 +03:00
sergeych 1a080bc53e added AI coding data for Lyng 2026-03-17 14:05:26 +03:00
sergeych a6492bb750 Add support for symbol inclusion via directive and refactor extern classes handling 2026-03-15 09:13:33 +03:00
sergeych d2a47d34a3 fixed extending extern classes (extension methods) 2026-03-15 05:35:29 +03:00
sergeych 8e0442670d extern generics classes fix, documentation on extern classes updated 2026-03-15 04:32:06 +03:00
sergeych 74eb8ff082 proposal: extending kotlin bridging ABI for generic externs 2026-03-15 04:22:36 +03:00