tool-conventions VS infernu

Compare tool-conventions vs infernu and see what are their differences.

tool-conventions

Conventions supporting interoperatibility between tools working with WebAssembly. (by WebAssembly)

infernu

Type inference and checking for a safer JavaScript. (by sinelaw)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
tool-conventions infernu
3 2
287 337
2.4% -
5.6 0.0
10 days ago over 5 years ago
Haskell
Artistic License 2.0 GNU General Public License v2.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

tool-conventions

Posts with mentions or reviews of tool-conventions. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-09-26.
  • Isolates, MicroVMs, and WebAssembly (In 2022)
    10 projects | news.ycombinator.com | 26 Sep 2022
    > Better interoperability

    AFAIK, the examples you give all target a basic C ABI [0] or can be made to target the same ABI. In Rust, it means targeting wasm32-unknown-emscripten

    The Rust team is also working on a "WASM ABI"[1] which would be useful in taking advantage of stuff like multi-value returns, and other compilers could just choose to target that. More likely, the C ABI on WASM will be updated to account for missing features, and that'll be the standard for interoperability in the WASM ecosystem.

    [0]: https://github.com/WebAssembly/tool-conventions/blob/main/Ba...

    [1]: https://github.com/rust-lang/lang-team/blob/master/design-me...

  • Features of a dream programming language: 2nd draft.
    16 projects | dev.to | 10 Feb 2022
    C ABI: Compatible with the C language Application Binary Interface (ABI). So code in the language is usable from other languages. Inspired by Zig. Since compiling to WASM is desirable, WASM's C ABI could probably be used, instead of a separate implementation towards the C ABI.
  • Crates for (mutable) statics with non const initialization.
    1 project | /r/rust | 20 Jan 2021
    There is maybe a solution. From what I found the linker will glue constructor functions and they have an associated priority. (look https://github.com/WebAssembly/tool-conventions/blob/master/Linking.md here for the "linking meta data section"). I explored the ldd/wasm source code directory and it looks like there are also destructor functions. I have not found out in which sections such functions should be placed (after 1h of exploration). Would you like to pursue? I am ok to receive pushes or even share owner ship of the repository.

infernu

Posts with mentions or reviews of infernu. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-04-10.
  • The TypeScript Experience
    3 projects | dev.to | 10 Apr 2022
    Or maybe a sound type system can only be achieved either by limiting JavaScript or with a different language that compiles to JavaScript?
  • Features of a dream programming language: 2nd draft.
    16 projects | dev.to | 10 Feb 2022
    Very constrained. Since "constraints liberate, liberties constrain", as Bjarnason said. Inspired by Golang's minimalism, and Elm's guardrails. For learnability and maintainability. Since discipline doesn't scale (obligatory xkcd: with too much power, and the wrong nudges, all it takes is a moment of laziness/crunch-time to corrupt a strong foundation), and a complex language affords nerd-sniping kinds of puzzles, and bikeshedding and idiomatic analysis-paralysis. Counter-inspired by Haskell. The virtue of functional programming is that it subtracts features that are too-powerful/footguns (compared to OOP), namely: mutation & side-effects. The language designers should take care of and standardize all the idiomacy (natural modes of expression in the language). "Inside every big ugly language there is a small beautiful language trying to come out." -- sinelaw. The language should assume the developer is an unexperienced, lazy, (immediately) forgetful, and habitual creature. As long as software development is done by mere humans. This assumption sets the bar (the worst case), and is a good principle for DX, as well as UX. The constrained nature of the language should allow for quick learning and proficiency. Complexity should lie in the system and domain, not the language. When the language restricts what can be done, it's easier to understand what was done (a smaller space of possibilities reduces ambiguity and increases predictability, which gives speed for everyone, at a small initial learning cost). The language should avoid Pit of Despair programming, and leave the programmer in the Pit of Success: where its rules encourage you to write correct code in the first place. Inspired by Eric Lippert, but also by Rust.

What are some alternatives?

When comparing tool-conventions and infernu you can also consider the following projects:

ts-belt - 🔧 Fast, modern, and practical utility library for FP in TypeScript.

ascii-art-to-unicode - Small program to convert ASCII box art to Unicode box drawings.

dwarf-2-sourcemap - A DWARF to SourceMaps converter for WASM

ekg-carbon - An EKG backend to send statistics to Carbon (part of Graphite monitoring tools)

wyrcan

argon2 - Haskell bindings to libargon2 - the reference implementation of the Argon2 password-hashing function

ramda - :ram: Practical functional Javascript

gotta-go-fast - A command line utility for practicing typing and measuring your WPM and accuracy.

krustlet - Kubernetes Rust Kubelet [Moved to: https://github.com/krustlet/krustlet]

hascard - flashcard TUI with markdown cards

io-ts - Runtime type system for IO decoding/encoding

quokka - Repository for Quokka.js questions and issues