rescript-compiler
Fable: F# |> BABEL
Our great sponsors
rescript-compiler | Fable: F# |> BABEL | |
---|---|---|
93 | 60 | |
6,411 | 2,803 | |
1.2% | 1.2% | |
9.5 | 9.8 | |
4 days ago | 9 days ago | |
OCaml | F# | |
GNU General Public License v3.0 or later | MIT License |
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.
rescript-compiler
-
Learning Elm by porting a medium-sized web front end from React (2019)
If you’re a front-end developer, you should checkout ReScript[1], supposedly a JS-oriented successor of ReasonML and developed by the ReasonML team.
-
ReScript: Rust like features for JavaScript
ReScript is "Fast, Simple, Fully Typed JavaScript from the Future". What that means is that ReScript has a lightning fast compiler, an easy to learn JS like syntax, strong static types, with amazing features like pattern matching and variant types. Until 2020 it was called "BuckleScript" and is closely related to ReasonML.
-
Ask HN: Interest in a Rust-Inspired Language Compiling to JavaScript?
As another commenter has already suggested, ReasonML has a lot of what you described here.
However, modern JS-oriented toolchain for ReasonML is called ReScript and you can learn more here: https://rescript-lang.org/
-
How does one write React apps in a purely functional style without making the entire codebase a mess?
ReScript (before BuckleScript) https://rescript-lang.org/ is a functional language that can also use OOP. Ideal for Javascript and Typescript projects, React and servers. It integrates perfectly with Javascript and Typescript code https://rescript-lang.org/docs/react/latest/introduction
-
Show HN: EdgeDB Cloud and 4.0 with FTS and Auth
Thank you!
We invited Gabriel because we think what he's building is pretty cool. It showcases so much about EdgeDB: its type system, data model, query language, composability, introspection, etc.
I'm not a ReScript user myself. What I know is that it's a functional programming language somewhat heavily inspired by OCaml. Their website goes into details [1]
-
Strong typing, a hill I'm willing to die on
You might want to look into ReScript (https://rescript-lang.org/). It has strong static typing with type inference, and it is very fast.
-
Building React Components Using Unions in TypeScript
This is because a “Tagged Union”, another word for TypeScript’s Discriminated Union, is a way to “tag which one is in use right now… we check the tag to see”. Just like when you’re shopping and check the tag of a piece of clothing to see what the price is, what size it is, or what material it’s made out of. Languages like ReScript compile many of their Unions (called Variants) to JavaScript Objects that have a tag property.
-
Converting a JavaScript React app to a ReScript React app.
ReScript is "Fast, Simple, Fully Typed JavaScript from the Future". Let's take a look at how we can add it to an existing React project.
-
Way to High Confidence: The Ideal Testing Trophy
REscript
-
Domain Modelling in the Cloud & AWS CDK
Ultimately, Dhall wasn’t verbose enough nor was I Dhall ninja, but something like TypeScript or ReScript probably would have been better.
Fable: F# |> BABEL
-
Dada, an Experiement by the Creators of Rust
This conversation could be referring to https://fable.io/
Other than that, the question is indeed strange and I agree with your statements.
-
Exploring a foreign F# codebase
NOTE: For larger codebases with more history it is likely that the Program.fs file will have a lot of orchestration and logic as well. given that it is often where everything clashes and starts, for example the Fable Entrypoint is in Entry.fs and it contains a lot of code. The best you can do always is to start at the bottom of the file and work your way up. Remember: Everything at the bottom uses what has already been defined at the top so there are no circular dependencies or random functions/types at the bottom that can trip you off, everything comes from the top!
-
Revisiting WASM for F#
I am a big fan of going with web components + plain (build-less) javascript whenever possible, so it is not surprising that I often favor things like the Fable Compiler, where I can target my F# code directly to javascript and be as close to the native JS experience as possible, both for interop concerns and for ecosystem integration.
-
A new F# compiler feature: graph-based type-checking
https://fable.io/
Here build times are not really an issue as it seems to be hot-transpiling to js, so save and site is reloaded almost instant (at least small sites):
My small tools site built with Fable: https://peheje.github.io/compare.html
If you look at the JS - that's of-course the production minimized build, the transpiled JS is pretty nice and readable.
Super simple site - vanilla JS seems wonderfully easy with F#, easy to hide its warts and build easy re-usable items.
But there's of course also smarter stuff with two-way bindings via html annotation and builders etc. I am actually using Feliz.ViewEngine, which is building the HTML using F#, but only for the navigation bar. Might try converting a page to it.
Fable compiler - https://fable.io/
The F# community is very friendly (these sub-communities as well), and they have plenty of good issues/opportunities to contribute OSS work to across any skill level.
Phosphor isn't hiring right now, but we expect to begin a search for FE/interface engineers over the next few month. Email [email protected] for anyone interested.
-
Building React Components Using Unions in TypeScript
Naturally I’d recommend using a better language such as ReScript or Elm or PureScript or F#‘s Fable + Elmish, but “React” is the king right now and people perceive TypeScript as “less risky” for jobs/hiring, so here we are.
-
Dart 3.1 and a retrospective on functional style programming in Dart
Stuff like this: https://github.com/fable-compiler/Fable/issues/1822
It just seems like an incredibly ambitious project that appears to have very little equal but is mainly worked on by a handful of people but no corporate backing. I get the feeling that if you want to use it, you'll either be the only one doing what you're doing or among just a few people. I already use F# and feel this way about the core language itself.
-
Elixir – Why the dot (when calling anonymous functions)?
F# is also part of the OCaml family, has a great to-JS transpiler (https://fable.io/) and F# code can also be used in .NET projects.
- Is it possible to write games like Pac-Man in a functional language?
-
Are there any good resources on reflection in Fable?
Yeah, I just found that a while ago. Also, I found a link to the Fable reflection tests in its docs, and going over it, it seems like it supports all of it for types that are fully known at compile time.
What are some alternatives?
svelte-wasm
Elm - Compiler for Elm, a functional language for reliable webapps.
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
purescript - A strongly-typed language that compiles to JavaScript
reason - Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems
Sutil - Lightweight front-end framework for F# / Fable. No dependencies.
openapi-generator - OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)
ClojureCLR - A port of Clojure to the CLR, part of the Clojure project
Roslyn - The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.
Feliz - A fresh retake of the React API in Fable and a collection of high-quality components to build React applications in F#, optimized for happiness
melange - A mixture of tooling combined to produce JavaScript from OCaml & Reason
haxe - Haxe - The Cross-Platform Toolkit