Design Alternatives

Similar projects and alternatives to design

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better design alternative or higher similarity.

design reviews and mentions

Posts with mentions or reviews of design. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-07-17.
  • Why Am I Excited About WebAssembly?
    9 projects | news.ycombinator.com | 17 Jul 2022
    I have not been able to get excited about WASM due to the poor memory management situation. It’s been years since the MVP and we are still in limbo about freeing memory.

    A great issue documenting a lot of the pain points around this is here: https://github.com/WebAssembly/design/issues/1397

    Until this is solved WASM is dead in the water for a huge variety of applications. I am rooting for WASM, but it has been discouraging to watch this go unsolved over the years.

  • PyScript
    10 projects | news.ycombinator.com | 22 Jun 2022
    There are some important differences in approach. Java was never designed to be downloaded over a network, and didn't have a module format or JARs back then. This is part of what made it so slow. In contrast, efforts to make the encoding of modules as compact as possible started the moment WASM began. [1] It was based on past research in compactly encoding IRs, and the modules are often processed in parallel.

    The IR is also a lot less opinionated than other VMs. It started out being similar to a stripped-down JavaScript in capability, but broadened. At the same time it remained easy for browser engines to process into native code. Compared to optimizing applets, it has a simpler task to solve. This does have the disadvantage that modules need to come with their own runtimes. Compilers for established languages have to deal with the fact that their host languages expect to be running on a fully-featured OS instead of a browser.

    Even though it is a binary blob downloaded over the web, browsers come with disassemblers that allow you to see what is actually running. This is a step up over the JVM, but this is one part of WASM I find underwhelming. The messy development of the VM affected the text format the most, so it's more confusing than it really needs to be. Some docs expect you to write it like a Lisp, while disassemblers don't bother with that.

    WASM has quite a few problems, but they're at least different problems than the ones applets had.

    1. https://github.com/WebAssembly/design/blob/a19e4ccf9c250cc73...

  • What will a Chromium-only Web look like?
    6 projects | news.ycombinator.com | 22 Jun 2022
    You cannot escape the politics of browsers by going to WebAssembly, because that's where WebAssembly was born. To use features outside of the original WASM spec, you have to consult a table and perhaps use a polyfill, like with CSS or JS features. Browser implementer have a large influence on the direction of the VM. For example, around a year into the original spec's development, it switched from being based on an abstract syntax tree to being based on a stack (https://github.com/WebAssembly/design/issues/755). A big change like that, a year in! The s-expressions in the text format are an artifact of that period, since tools already relied on their existence for optimization.

    Anyone who writes a compiler or engine for WebAssembly it is going to have to deal with the mess of web standards, unfortunately.

  • When moving from JS to WASM is not worth it - Zaplib post mortem
    3 projects | reddit.com/r/programming | 30 Apr 2022
  • Why you can't secure a React Native (or any frontend) application
    2 projects | reddit.com/r/javascript | 24 Apr 2022
    Actually yes, you’re right and it’s well explained here https://github.com/WebAssembly/design/issues/1293 , it’s significantly harder to reverse engineer but still feasible to do so with enough determination.
  • Inline Assembly Language. What is that?
    2 projects | dev.to | 23 Mar 2022
    https://github.com/WebAssembly/design/issues/1206 https://webassembly.org https://stackoverflow.com/questions/12168575/executing-generated-assembler-inline
  • Pay Attention to WebAssembly
    12 projects | news.ycombinator.com | 31 Jan 2022
    > WebAssembly will never have direct access to the DOM

    I haven’t been paying much attention to WASM proposals for the last few years, but I thought that direct DOM access (avoiding JavaScript trampolining) was one of the driving goals of the reference type, interface type and garbage collection proposals. https://github.com/WebAssembly/proposals/issues/16 mentions “call Web APIs (passing primitives or DOM/GC/Web API objects) directly from WebAssembly without calling through JavaScript”, and WASM’s high level goals document <https://github.com/WebAssembly/design/blob/main/HighLevelGoa...> lists “access browser functionality through the same Web APIs that are accessible to JavaScript” (not “through JavaScript”, but “through the same APIs”). Am I misunderstanding things?

  • What excites you today (technologically speaking)?
    4 projects | news.ycombinator.com | 10 Oct 2021
    I found this thread quite interesting on that topic:

    https://github.com/WebAssembly/design/issues/1397

  • Why are you building a programming language?
    16 projects | reddit.com/r/ProgrammingLanguages | 5 Sep 2021
    The WASM group benchmarked various varint schemes (https://github.com/WebAssembly/design/issues/601), based on some feedback (https://news.ycombinator.com/item?id=11263378), and stuck with LEB-128 because apparently 90-94% of integers were encoded in 1 byte anyway, in their data sets, which makes the number of branches equal (at 1)
  • Microsoft Teams 2.0 will use half the memory, drop Electron
    4 projects | news.ycombinator.com | 26 Jun 2021
    It has been discussed but you're right it won't be any time soon:

    https://github.com/WebAssembly/design/issues/273

  • A note from our sponsor - Scout APM
    scoutapm.com | 1 Oct 2022
    Scout APM is great for developers who want to find and fix performance issues in their applications. With Scout, we'll take care of the bugs so you can focus on building great things 🚀. Learn more →

Stats

Basic design repo stats
19
11,008
1.4
4 days ago

WebAssembly/design is an open source project licensed under Apache License 2.0 which is an OSI approved license.

Build time-series-based applications quickly and at scale.
InfluxDB is the Time Series Data Platform where developers build real-time applications for analytics, IoT and cloud-native services in less time with less code.
www.influxdata.com
Find remote jobs at our new job board 99remotejobs.com. There are 8 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.