reagents
haxe
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.
reagents
-
Transputer.net
The 1978 paper proposes a reasonable set of primitives and then walks through prose examples with them. The book proposes roughly the same primitives (channels are the big change, but stop is barely in the paper) and describes them in a formal notation for state machines. It's the difference between a sketch of a plausible idea and writing down the mathematics.
Related though much later, ocaml https://github.com/ocaml-multicore/reagents observed that the send/recv primitives make less sense than a swap primitive. Between occam and the current ocaml effort, concurrent ML is the same sort of model with the details really well thought through (e.g. a thread executing stop gets garbage collected).
-
OCaml 5.0 Multicore is out
Still early days, but I had done some exploratory work in the past on Reagents, a composable lock-free library [1]. Now that OCaml 5 is released, we're reviving this work.
It's semantics is weaker than STM -- unlike STM, it doesn't provide serializability but Reagents can compile down to multi-word compare and swap operations, which can be implemented with the help of hardware transactions (when present) or efficient software implementations of it [2]. Hence, Reagent programs should be faster than STM.
[1] https://github.com/ocaml-multicore/reagents
haxe
-
Wax compiler – a tiny language designed to transpile to other languages
This remineds me of Haxe[1]. I like Wax better because of the Common-Lisp-like syntax.
[1]: https://haxe.org
-
Marimo: Interactive Fluffy Ball
I thought this was a three.js demo but it's actually built with a language called haxe [1]. I've never heard of this language before and looks really cool. Makes me want to play with it!
[1] https://haxe.org/
- Haxe 4.3.4
- Ask HN: Does anyone here use Haxe?
-
Ask HN: What are some unpopular technologies you wish people knew more about?
The Haxe programming language (https://haxe.org/). It's insane how unpopular this is compared to its value.
"Haxe can build cross-platform applications targeting JavaScript, C++, C#, Java, JVM, Python, Lua, PHP, Flash, and allows access to each platform's native capabilities. Haxe has its own VMs (HashLink and NekoVM) but can also run in interpreted mode."
It's mostly popular in game dev circles, and is used by: Nortgard, Dead Cells, Papers Please, ... .
-
One Game, by One Man, on Six Platforms: The Good, the Bad and the Ugly
For those interested in cross platform game development, don't forget https://haxe.org/! The usefulness / popularity ratio is very high on this one :).
- Flash Museum – explore more than 130k flash games and animations
-
Is this idea worth pursuing? (a common grammar interface for various interpreted languages written in C)
Sounds like haxe: https://haxe.org/
-
TC39 Proposal: Types as Comments
I really enjoyed programming in AS3, and https://haxe.org/ was really helpful at the time to make development easier.
-
TIL: "private_constant"
Been tinkering in the Haxe programming language recently. I definitely suggest checking it out, but one thing I liked was private constants. I know other languages have this, but its where I've encountered it most recently.
What are some alternatives?
rescript-webapi - ReScript bindings to the DOM and other Web APIs
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
eso-light-attack-weave - This is a macro for the game Elder Scrolls Online
Phaser - Phaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering. [Moved to: https://github.com/phaserjs/phaser]
fut - Fusion programming language. Transpiling to C, C++, C#, D, Java, JavaScript, Python, Swift, TypeScript and OpenCL C.
Fable: F# |> BABEL - F# to JavaScript, TypeScript, Python, Rust and Dart Compiler
love - LÖVE is an awesome 2D game framework for Lua.
dhall - Maintainable configuration files
FrameworkBenchmarks - Source for the TechEmpower Framework Benchmarks project
Laravel - The Laravel Framework.
awesome-haxe-gamedev - Resources for game development on haxe
melange - A mixture of tooling combined to produce JavaScript from OCaml & Reason