Dart 3.1 and a retrospective on functional style programming in Dart

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • Uno Platform

    Open-source platform for building cross-platform native Mobile, Web, Desktop and Embedded apps quickly. Create rich, C#/XAML, single-codebase apps from any IDE. Hot Reload included! 90m+ NuGet Downloads!!

    Not a fan of XAML after trying to get into it, but there is Uno Platform. It wraps native widgets on mobile, just like React Native (which is good for accessibility), and uses C#. https://platform.uno/

    My guess is that it's mainly focused on mobile. On Windows, it has no overhead (behaving like a normal WinUI 3 app), on macOS I think it uses Catalyst by default (which was developed by Apple to make more iOS apps available for Mac desktops) and on Linux it draws its own widgets that the devs try imitating the GTK style with.

    On Android and iOS, it just uses the native widgets which I think is a better experience so you can see my reasons for guessing it's mobile-first. That may or may not be what you want.

  • language

    Design of the Dart language

    Current syntax is not all that bad if you are going to do OO and add various helper methods on `Message` and its subclasses, but if you just want to define your data and no behavior / helpers - then it is exceedingly verbose.

    [1]: https://github.com/dart-lang/language/issues/3021

  • flutter-wonderous-app

    A showcase app for the Flutter SDK. Wonderous will educate and entertain as you uncover information about some of the most famous structures in the world.

    Wonderous:

    A showcase app for the Flutter SDK.

    Built by gskinner in partnership with the Flutter team, Wonderous deliberately pushes visual fidelity, effects and transitions to showcase what Flutter is truly capable of on modern mobile hardware.

    https://github.com/gskinnerTeam/flutter-wonderous-app

  • chokidar

    Minimal and efficient cross-platform file watching library

    > It’s typical to listen to this stream of events and use chained if-else statements to determine an action based on the type of the events that occur.

    You'd think something like directory watching would have a clear set of events that would make nice objects with consistent meanings, but in my experience file watching gets crazy complicated, and can have all sorts of edge cases.

    Just take a looked here for all the various edge cases that crop up: https://github.com/paulmillr/chokidar/issues

    Then you have linux, windows, macos, and maybe you want to abstract over some underlying implementation like chokidar vs fb/watchman vs webpack/watchpack. Every new OS release could also cause things to change.

    So usually its going to be a bunch of if-else statements hacked together to get around edge cases, and have to be revisited later on.

    Any attempt to abstract this into objects, just obfuscates things. And OO forces you to name things, when in fact they might be un-nameable. `FileSystemModifyEventExceptWhenXAndYAndSometimesZ`.

    The behavior might rely on a series of events together, so the object hierarchy must be re-worked.

    OO has this rosy idea that we just have to come up with the perfect hierarchy, but things change in unexpected ways, and everything must have a descriptive noun.

  • Fable: F# |> BABEL

    F# to JavaScript, TypeScript, Python, Rust and Dart Compiler

    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.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • An approach to optimizing TypeScript type checking performance

    6 projects | news.ycombinator.com | 14 Aug 2024
  • Fable: an F# to Dart compiler

    1 project | /r/dartlang | 26 Sep 2023
  • Is it possible to create Android apps using Rust?

    5 projects | /r/rust | 9 Jul 2023
  • URGENT HELP NEEDED! Should I learn C#, ASP.NET and the new MAUI framework?

    1 project | /r/dotnet | 16 Jun 2023
  • Python running on the Dart VM?

    4 projects | /r/dartlang | 9 Jun 2023