ionide-vscode-fsharp
FrameworkBenchmarks
ionide-vscode-fsharp | FrameworkBenchmarks | |
---|---|---|
16 | 374 | |
844 | 7,420 | |
0.4% | 0.5% | |
8.6 | 9.8 | |
24 days ago | 4 days ago | |
F# | Java | |
MIT License | GNU General Public License v3.0 or later |
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.
ionide-vscode-fsharp
- Ask HN: Why do you think F# is not more popular, even within the .NET ecosystem?
-
Is there a modern IDE with good support for OCaml?
I'd love to see something similar to Microsoft's Ionide project or for JetBrains to invest in IDE support.
-
Why OCaml?
> Pretty good, https://ionide.io
It pains me to admit it because I really like F# but, with due respect to the developers, Ionide and its related projects are the most unstable toolchain I've ever used.
Spend half a day reloading the editor because the extension keeps hanging on non-trivial MSBuild only to discover that the formatter has truncated in half one of the files you worked on due to a soundness bug. (OCaml's editor support, in contrast, is quite stable.)
Rider is the best editing experience I've had with F#, by far.
-
How to get a non-broken F# development experience?
I know it's a recurring topic but it's reaching a high level of pain *again* (see NET SDK 6.0.400 and 7.0.100 previews don't currently work with Ionide).
-
The Case for C# and .NET
I don't disagree but it owes a lot of that to OCaml. That said, since we're talking about C#, F# and VS Code I'm gonna talk about a pet peeve I have. If you open a C# project in VS Code when the "Ionide" (basically the F# plugin for Code) is installed then Ionide thinks it's a F# project and will open some F# stuff after a few seconds (or prompt you to setup some F# stuff in its gitignore). The root cause has been identified (plugin activates when it sees a ".sln" file), a PR have been opened and rejected with no mention as to why (https://github.com/ionide/ionide-vscode-fsharp/pull/1401) and the developers behind it are frustratingly non-communicative about it, closing issues about it (https://github.com/ionide/ionide-vscode-fsharp/issues/1701). Usual rules about OSS maintainers apply, they don't technically owe us users anything ... but man it feels like we're being trolled by now :D
-
Rust Is Hard, Or: The Misery of Mainstream Programming
F# doesn't have a hard dependency on vscode. Resources from MS will obviously encourage using MS tooling, but ionide [1] is really good. The lsp+neovim workflow is not as good but getting better.
[1] https://ionide.io/
-
Making Ionide less "intrusive" in its new vscode version
Important thread about this: https://github.com/ionide/ionide-vscode-fsharp/issues/1693
-
Perf Avore: A Rule Based CrossPlatform Performance Based Monitoring and Analysis Tool
Perf Avore was developed on VSCode using the ionide plugin and dotnet cli.
-
A few newbie questions
I was on .Net 5 but same issue on 6. I tried the fix here- setting FSharp.dotnetRoot explicitly in settings.json and so far it seems better.
-
Debugging tests in VS Code
Make sure to keep an eye on this MR for that very capability :)
FrameworkBenchmarks
-
Popular Backend Frameworks Performance Benchmark
Since 2013, TechEmpower has established a backend framework benchmark. They meticulously define benchmark specifications and maintain an open-source approach that encourages contributions from the community. This benchmark has become a respected standard in the tech industry, serving as a reliable yardstick for technology competitors to assess the performance of their solutions (exemple Go Fiber, C# Asp.net, JS Just). So I can trust the Techempower benchmark.
- TechEmpower Framework Benchmarks
-
FrankenPHP: The Modern PHP App Server
Interested to see how this fares on Tech Empower's benchmarks: https://www.techempower.com/benchmarks/#hw=ph&test=fortune&s...
At the moment it is at the bottom as a "did not complete"
- TechEmpower: Most best-performing frameworks do not handle db connection issues
-
100 Exercises to Learn Rust
It seems like Rust is doing a pretty good job of applying to web apps and APIs:
https://www.techempower.com/benchmarks
-
Swift sucks at web serving or does it?
It would still be slower :P
At least once you start "gaming" benchmarks interpreted and/or dynamically typed languages have a strict ceiling they can't really surpass (just.js doesn't count as it's as thin wrapper on top of C as it can get)
https://www.techempower.com/benchmarks/#hw=ph&test=fortune&s...
(all top entries are bottlenecked by DB driver implementation and its ability to multiplex queries, and context switching cost, so those frameworks which can do perfect static partitioning and query multiplexing win out)
-
Why choose async/await over threads?
Neat. Thanks for sharing!
Interestingly, may-minihttp is faring very well in the TechEmpower benchmark [1], for whatever those benchmarks are worth. The code is also surprisingly straightforward [2].
[1] https://www.techempower.com/benchmarks/
[2] https://github.com/TechEmpower/FrameworkBenchmarks/blob/mast...
-
Ntex: Powerful, pragmatic, fast framework for composable networking services
ntex was formed after a schism in actix-web and Rust safety/unsafety, with ntex allowing more unsafe code for better performance.
ntex is at the top of the TechEmpower benchmarks, although those benchmarks are not apples-to-apples since each uses its own tricks: https://www.techempower.com/benchmarks/#hw=ph&test=fortune&s...
-
A decent VS Code and Ruby on Rails setup
Ruby is slow. Very slow. How much you may ask? https://www.techempower.com/benchmarks/#hw=ph&test=fortune&s... fastest Ruby entry is at 272th place. Sure, top entries tend to have questionable benchmark-golfing implementations, but it gives you a good primer on the overhead imposed by Ruby.
It is also not early 00s anymore, when you pick an interpreted language, you are not getting "better productivity and tooling". In fact, most interpreted languages lag behind other major languages significantly in the form of JS/TS, Python and Ruby suffering from different woes when it comes to package management and publishing. I would say only TS/JS manages to stand apart with being tolerable, and Python sometimes too by a virtue of its popularity and the amount of information out there whenever you need to troubleshoot.
If you liked Go but felt it being a too verbose to your liking, give .NET a try. I am advocating for it here on HN mostly for fun but it is, in fact, highly underappreciated, considered unsexy and boring while it's anything but after a complete change of trajectory in the last 3-5 years. It is actually the* stack people secretly want but simply don't know about because it is bundled together with Java in the public perception.
*productive CLI tooling, high performance, works well in a really wide range of workloads from low to high level, by far the best ORM across all languages and back-end framework that is easier to work with than Node.JS while consuming 0.1x resources
-
The Erlang Ecosystem [video]
Although that seems to have improved in recent years.
https://www.techempower.com/benchmarks/#hw=ph&test=json§...
What are some alternatives?
playwright-dotnet - .NET version of the Playwright testing and automation library.
zio-http - A next-generation Scala framework for building scalable, correct, and efficient HTTP clients and servers
proposal-pipeline-operator - A proposal for adding a useful pipe operator to JavaScript.
LiteNetLib - Lite reliable UDP library for Mono and .NET
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
django-ninja - 💨 Fast, Async-ready, Openapi, type hints based framework for building APIs
jakt - The Jakt Programming Language
drogon - Drogon: A C++14/17 based HTTP web application framework running on Linux/macOS/Unix/Windows [Moved to: https://github.com/drogonframework/drogon]
Perla - A cross-platform tool for unbundled front-end development that doesn't depend on Node or requires you to install a complex toolchain
C++ REST SDK - The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services.
Escalin
SQLBoiler - Generate a Go ORM tailored to your database schema.