Fable: F# |> BABEL
ClojureCLR
Fable: F# |> BABEL | ClojureCLR | |
---|---|---|
61 | 11 | |
2,928 | 1,570 | |
0.1% | 0.3% | |
9.4 | 8.5 | |
14 days ago | 7 days ago | |
F# | C# | |
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.
Fable: F# |> BABEL
-
Zod: TypeScript-first schema validation with static type inference
Why not write your code in F# and compile it to TypeScript using Fable [1]?
This way you can use native language features for discriminated unions, functional pipelines, and exhaustive pattern matching to model your domain instead of shoe-horning such functionality into a non-ML language!
Model your domain in F#, consume it in Python or C# backends and TypeScript frontends. The downside is needing to know all of these languages and run times but I think I'd rather know F# and the quirks with interacting with TypeScript than a library like Effect!
[1] https://fable.io
-
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
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.
- Fable: an F# to Dart compiler
-
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?
ClojureCLR
-
Rust panics under the hood, and implementing them in .NET
Before Rich made Clojure for the JVM, he wrote dotLisp[1] for the CLR. Not long after Clojure was JVM hosted, it was also CLR hosted[2]. One of my first experiences with ML was F#[3], a ML variant that targets the CLR. These all predate the MIT licensed .net, but prior to that there was mono, which was also MIT licensed.
1: https://dotlisp.sourceforge.net/dotlisp.htm
2: https://github.com/clojure/clojure-clr
3: https://fsharp.org/
- Make a New Programming Language
- Try Clojure
-
Dada, an Experiement by the Creators of Rust
Yea, that's true. I forgot about that. I did think of Clojure CLR, but I don't get the impression that this is an all that natural or used implementation. ClojureScript is obviously much more used, although it is still a "different" language.
https://github.com/clojure/clojure-clr
-
Ask HN: Does an equivalent of Clojure exist for .NET?
ClojureCLR can already run on .NET 5.0 , so at least it made it through the .NET Core migration. I'm sure they'll get it to 6.0 at some point.
https://github.com/clojure/clojure-clr/wiki/Getting-started
- Clojure, but without the JVM?
-
Elixir Protocols vs. Clojure Multimethods
I recently found there was a clojure implementation for .NET and also one for the BEAM Virtual Machine. Has anyone used the latter? Regards
[1] https://github.com/clojure/clojure-clr
-
Scheme for embedding in .NET application
Maybe it's not exactly a scheme, but there's Clojure CLR and it's actively maintained: https://github.com/clojure/clojure-clr/wiki
-
Java on Truffle – Going Fully Metacircular
https://github.com/clojure/clojure-clr/commits/master
What are some alternatives?
rescript - ReScript is a robustly typed language that compiles to efficient and human-readable JavaScript.
F# - Please file issues or pull requests here: https://github.com/dotnet/fsharp
Sutil - Lightweight front-end framework for F# / Fable. No dependencies.
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
IronScheme - IronScheme
Fable - The project has moved to a separate organization. This project provides redirect for old Fable web site.
haxe - Haxe - The Cross-Platform Toolkit
Mono-basic - Visual Basic Compiler and Runtime
Bridge.NET - :spades: C# to JavaScript compiler. Write modern mobile and web apps in C#. Run anywhere with Bridge.NET.
Nemerle - Nemerle language. Main repository.