<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/webassembly-is-here-5bakrrggx" -->

---
title: Webassembly is here | daily.dev
description: Quartex Pascal has completed a functional WebAssembly codegen, letting the compiler emit WAT and binary WASM alongside a JavaScript glue layer for calling WASM...
canonical: https://daily.dev/posts/webassembly-is-here-5bakrrggx
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Webassembly is here | daily.dev
og:description: Quartex Pascal has completed a functional WebAssembly codegen, letting the compiler emit WAT and binary WASM alongside a JavaScript glue layer for calling WASM...
og:url: https://daily.dev/posts/webassembly-is-here-5bakrrggx
og:image: https://api.daily.dev/og/posts/5BAKRrggX.png
og:image:alt: Webassembly is here
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Webassembly is here

**[Quartex Pascal](https://daily.dev/sources/quartex_pascal)** · 6 min read · 32 upvotes · 1 comments

## Summary

Quartex Pascal has completed a functional WebAssembly codegen, letting the compiler emit WAT and binary WASM alongside a JavaScript glue layer for calling WASM functions from QTX applications. The variant datatype, central to QTX's JS interop, will not be supported in WASM due to the performance overhead of runtime type tagging that WASM's lack of pointers would require. A new 'wasm' RTL namespace is planned to clone the system namespace for WASM-compatible code, though work on it hasn't started. Classes, records, and collections work inside WASM but can't cross the WASM-to-JavaScript boundary; interop still happens via external functions and procedures, similar to writing a DLL in Delphi. A command-line preview of the WASM compiler is planned for customers in the coming weeks, followed later by IDE integration.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://quartexdeveloper.com/2026/08/13/webassembly-is-here>

## Questions this post answers

### Does Quartex Pascal support compiling to WebAssembly now?

Yes, Quartex Pascal has a fully functional WebAssembly codegen that can output both WAT source files and binary WASM files. It also emits a separate JavaScript bridge file so WASM functions and procedures can be called from Quartex Pascal applications. A command-line preview of the WASM compiler was planned for release to customers, with later integration into the IDE once mature.

_daily.dev surfaces updates like this for developers tracking new webassembly compiler backends._

### Why don't WebAssembly compilers support the variant datatype like Delphi does?

Variant support is excluded because WebAssembly has no pointers, only weak references or buffer offsets, so a variant would need to be treated as a conditional record tagged on every write and read. This adds significant runtime overhead and still wouldn't interoperate with JavaScript-originated variants, so Quartex Pascal's WASM codegen leaves variant unsupported for now.

_developers weighing pascal-to-wasm ports can track how daily.dev covers variant and interop tradeoffs._

### Can WebAssembly code compiled from Quartex Pascal directly use classes shared with JavaScript?

No, classes, records, and ad-hoc structures are supported inside WebAssembly but do not cross over to JavaScript. Communication between WASM and JS still happens through ordinary external functions and procedures, similar to writing and consuming a DLL in Delphi or Lazarus, rather than through shared class instances.

_daily.dev helps developers porting Delphi libraries to wasm keep up with interop constraints like this._

## Community discussion

Top comments from developers on daily.dev.

**@jliter85** · 3 upvotes

> What stood out to me was how AI was used to accelerate the repetitive infrastructure work while leaving the deeper compiler decisions to the developers. That feels like a strong example of where AI can genuinely improve a development workflow rather than simply generate code. Getting Quartex Pascal to produce functional WebAssembly while maintaining a practical bridge back to JavaScript is an impressive milestone, and I’m interested to see where the WASM support goes as the new runtime namespace develops.

## Similar posts on daily.dev

- [WASM commandline compiler](https://daily.dev/posts/wasm-commandline-compiler-nqi4nd5sj) · Quartex Pascal · 21 upvotes · 3 comments
- [Generics, RTTI, a new compiler](https://daily.dev/posts/generics-rtti-a-new-compiler-13fsphzmu) · Quartex Pascal · 11 upvotes · 1 comments
- [WebAssembly Still Expanding Frontend Uses 10 Years Later](https://daily.dev/posts/webassembly-still-expanding-frontend-uses-10-years-later-5vvkxh8ef) · The New Stack · 0 upvotes · 0 comments
- [WebAssembly: an introduction](https://daily.dev/posts/webassembly-an-introduction-1iycvposp) · Flavio Copes · 3 upvotes · 0 comments
- [WebAssembly: The Web’s Fourth Language](https://daily.dev/posts/webassembly-the-web-s-fourth-language-twkny7sfg) · Medium · 3 upvotes · 0 comments

---

Tags: [#webassembly](https://daily.dev/tags/webassembly)

[View this post on daily.dev](https://daily.dev/posts/webassembly-is-here-5bakrrggx)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Webassembly is here","url":"https://daily.dev/posts/webassembly-is-here-5bakrrggx","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/webassembly-is-here-5bakrrggx"},"datePublished":"2026-08-13T16:44:21.141Z","dateModified":"2026-09-14T06:42:40.810Z","description":"Quartex Pascal has completed a functional WebAssembly codegen, letting the compiler emit WAT and binary WASM alongside a JavaScript glue layer for calling WASM...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/ab2a9ac3628f06d6c71a8c6fe50f04ad?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/ab2a9ac3628f06d6c71a8c6fe50f04ad?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Quartex Pascal","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Quartex Pascal","logo":"https://media.daily.dev/image/upload/s--jCoso2M5--/f_auto/v1719499385/logos/quartex_pascal","url":"https://daily.dev/sources/quartex_pascal"},"commentCount":1,"discussionUrl":"https://daily.dev/posts/webassembly-is-here-5bakrrggx","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":32},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":1}],"keywords":"webassembly","timeRequired":"PT6M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Quartex Pascal","item":"https://daily.dev/sources/quartex_pascal"},{"@type":"ListItem","position":3,"name":"Webassembly is here"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/webassembly-is-here-5bakrrggx","comment":[{"@type":"Comment","text":"What stood out to me was how AI was used to accelerate the repetitive infrastructure work while leaving the deeper compiler decisions to the developers. That feels like a strong example of where AI can genuinely improve a development workflow rather than simply generate code. Getting Quartex Pascal to produce functional WebAssembly while maintaining a practical bridge back to JavaScript is an impressive milestone, and I’m interested to see where the WASM support goes as the new runtime namespace develops.","datePublished":"2026-08-16T17:19:42.947Z","url":"https://daily.dev/posts/5BAKRrggX#c-IyPFrefn9","author":{"@type":"Person","name":"John Liter","url":"https://daily.dev/jliter85","image":"https://media.daily.dev/image/upload/s--DQ2HUrO4--/f_auto/v1785100315/avatars/avatar_yHf9cPdgTQEtokv6d8qhM?_a=BAMAMicg0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":3}}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/webassembly-is-here-5bakrrggx#faq","mainEntity":[{"@type":"Question","name":"Does Quartex Pascal support compiling to WebAssembly now?","acceptedAnswer":{"@type":"Answer","text":"Yes, Quartex Pascal has a fully functional WebAssembly codegen that can output both WAT source files and binary WASM files. It also emits a separate JavaScript bridge file so WASM functions and procedures can be called from Quartex Pascal applications. A command-line preview of the WASM compiler was planned for release to customers, with later integration into the IDE once mature. daily.dev surfaces updates like this for developers tracking new webassembly compiler backends."}},{"@type":"Question","name":"Why don't WebAssembly compilers support the variant datatype like Delphi does?","acceptedAnswer":{"@type":"Answer","text":"Variant support is excluded because WebAssembly has no pointers, only weak references or buffer offsets, so a variant would need to be treated as a conditional record tagged on every write and read. This adds significant runtime overhead and still wouldn't interoperate with JavaScript-originated variants, so Quartex Pascal's WASM codegen leaves variant unsupported for now. developers weighing pascal-to-wasm ports can track how daily.dev covers variant and interop tradeoffs."}},{"@type":"Question","name":"Can WebAssembly code compiled from Quartex Pascal directly use classes shared with JavaScript?","acceptedAnswer":{"@type":"Answer","text":"No, classes, records, and ad-hoc structures are supported inside WebAssembly but do not cross over to JavaScript. Communication between WASM and JS still happens through ordinary external functions and procedures, similar to writing and consuming a DLL in Delphi or Lazarus, rather than through shared class instances. daily.dev helps developers porting Delphi libraries to wasm keep up with interop constraints like this."}}]}
```

