jessewilson
06/03/2026, 10:54 PM.wit parser in Kotlin. It’s about 2,000 lines of code and it successfully decodes all the WASI .wit files. I’m intending to use this to built a host-side component model support, to complement Kotlin 2.4’s guest-side component model support.
https://github.com/wasmcomputercompany/wasmo/tree/main/support/wit
This is not yet a standalone open source project, but if anybody wants that, I’m happy to do that work.curioustechizen
06/04/2026, 10:47 AMcurioustechizen
06/04/2026, 10:51 AMjessewilson
06/04/2026, 11:31 AMbashor
06/04/2026, 5:15 PMjessewilson
07/09/2026, 8:52 PMjessewilson
07/09/2026, 8:54 PMconcatenate() in .wit ,
2. Brevity generated a commonMain interface plus lots of tricky bridging code
3. We implemented it in wasmWasiMain
4. We called it from jvmMain via Chicory.jessewilson
07/09/2026, 8:58 PMfuture or tuple or even bool.jessewilson
07/09/2026, 8:59 PMasync work, though I need to wrap my head around the semantics of thatjessewilson
07/09/2026, 9:03 PMjessewilson
08/28/2026, 11:22 AMjessewilson
09/14/2026, 8:57 PMList, Unit, and Any compile to appropriate JVM types and there’s no ugly bridging on either end. Other JVM languages don’t have it this nice.
With Brevity we’re trying to do the same for Kotlin + WebAssembly. Today I sent out this PR to do type mapping in-the-framework so application code doesn’t have to at the boundary.
We can take WASI 0.2’s wall-clock type and generate an interface that uses Kotlin’s `Instant`:
// Generated by Brevity. Do not edit.
package wit.wasi.clocks.v0_2_0
import kotlin.time.Instant
public interface WallClock {
public fun now(): Instant
...
}
(This uses a manually-registered adapter to build the Instant instance at runtime.)