Live data from Hacker News

Flutter desktop shells

github.com

181–190 of 322 posts

Re: Flutter desktop shells

#181
post #3

I really want to like Flutter, but I someone really don't want to spend the time to learn Dart. I can't really quantify it--some mix of yet-another Proprietary Google Technology, yet another ecosystem, yet another X. I'm tired I just want to build stuff that solves problems.

This is exactly how I feel. The lack of freedom to choose your own language is appalling. I don't want to be locked into a single language. If they targeted the JVM platform instead, would have the choice of Clojure, Scala, Kotlin, JRuby, etc. Also, targeting the JVM makes a lot of sense of Android, since ART complies JVM bytecode down to super-efficient machine code (at installation). I was really disappointed by Go…

The JVM doesn´t run in a browser or on iOS. Both of these are targets for Flutter.

Re: Flutter desktop shells

#182

Earlier quoted context omitted.

> Is it possible to work with Flutter using Typescript, or is it Dart only? You might be thinking that Flutter underneath is using JavaScript - to which Dart compiles. However this is not how Flutter works, there is no JavaScript involved anywhere in the stack. Dart is its own language - and it can run natively, unlike TypeScript - which is just a type system over JavaScript and needs to be compiled to JavaScript to…

Random Dart question - how is the standalone Dart VM implemented? What is it written in, is there a bytecode, etc? And is there a place where more details are available?

Dart VM is written primarily in C++.

There is bytecode, but the story here is kinda complicated - there are actually 2 different versions: one is called DBC and is used during development of Flutter applications on iOS, there is another called KBC - that one is more like a classical bytecode, it is currently in development.

> And is there a place where more details are available?

You can get some high level information at https://mrale.ph/dartvm

Let me know if you want to know something special.

Re: Flutter desktop shells

#183

Earlier quoted context omitted.

Except if Google gets bored with Fuchsia, like it has with tons of projects. Heck, from what you say, it already got bored with Android -- if Fucshia is to replace it in say 2022, it means that Android just lasted around 15 years as a platform.

15 years - so only four years less than MS-DOS ('81 - 2000) by which point it was considered hairy and terrible? I'm no big fan of Google, but 15 years is plenty long enough. And really, Android is definitely struggling and showing its age by this point.

Out of curiosity, why is android struggling? What aspect of it needs improvement?

Re: Flutter desktop shells

#184
post #3

I really want to like Flutter, but I someone really don't want to spend the time to learn Dart. I can't really quantify it--some mix of yet-another Proprietary Google Technology, yet another ecosystem, yet another X. I'm tired I just want to build stuff that solves problems.

Context: I was a Qt developer in a past life. The alternatives for cross-platform GUI are 1. Electron 2. Frameworks like C++/Qt C/Gtk 3. Bindings to (2) Using frameworks like Qt in native C++ sucks because C and C++ are just terrible languages for GUI development, even with the bolted on object systems and language extensions (Qt extends the C++ language). Using bindings to those frameworks is nice in theory because…

There are other options. Two I've used a little:

https://github.com/vurtun/nuklear

https://github.com/raysan5/raylib

Re: Flutter desktop shells

#185
post #138

Flutter looked great, until I realised that they were re-implementing all the OS controls themselves. For example: https://github.com/flutter/flutter/blob/1db5d66932b873e17c8c... This is the kind of thing that leads to an "uncanny valley" app, where things feel slightly off, or they look good until the OS changes something and Flutter doesn't keep up.

[deleted]

Re: Flutter desktop shells

#186
post #61

Earlier quoted context omitted.

To me Dart is pretty disappointing. Modern languages like Swift and Rust have shown the power of incorporating functional features like sum types and pattern matching. Dart just feels like the same sort of OO language we've been getting since Java became popular. Edit: Also the continued existence of null in new programming languages is a baffling choice to me.

Hi, I work on Dart. > functional features like sum types and pattern matching "Functional features" means different things to different people. Dart (like most modern languages) has a lot of the core functional features: first-class functions, closures, lambdas, higher-order functions. Our built-in collection libraries are heavily oriented around functional-style transformations. You don't need an external library to…

> It makes some kinds of code nicer, but doesn't significantly affect the expressiveness or capability of the language.

Sum types and exhaustive pattern matching aren't about expressiveness, they're tools for aiding code comprehension by increasing the locality of code that has no business being distributed into completely different classes, and decreasing the cost of making changes by heavily reducing the amount of test code that needs to be written to make sure a closed set of options is handled appropiately; in OOP languages you can get this by using interfaces but to make use of it you'd have to use huge classes with methods pertaining to every usage of this closed set.

I would never willingly pick up another language that doesn't provide me with them after experiencing the productivity gains. I really like the direction Dart is moving towards and the steps taken demonstrate there's a team behind it that cares about correctness and productivity over being just a familiar Java-like, but this is the one hard blocker for me.

Re: Flutter desktop shells

#187
post #133
post #132

Earlier quoted context omitted.

Objective-C and Swift help sell Apple's hardware. Besides Ad Words, there is very little being sold by Dart.

How so? Do you think apple sales would drop if they switched all development to using a more mainstream language?

Naturally, who would port their apps without a monetary value behind it?

Plus how much money would it cost to replace all the existing software stack?

Re: Flutter desktop shells

#188
post #153

Earlier quoted context omitted.

I'm the PM for the Flutter developer experience. I'm currently digging into the next steps for our desktop experiment with Flutter and I'm very interested to hear how your xplat desktop app dev options fall short. What do you need from an xplay desktop app dev framework and toolchain? Chris Sells csells@google.com

Unrelated question, when did you decide not to pursue a career in sales?

He must have heard the same "joke" his entire life.

Re: Flutter desktop shells

#189
Currently using dart and flutter full time, some c++ background. Can say that the docs are really well written and an addition to have native desktop is just another plus. Dart itself is very familiar to c++ and feels quite natural.

Re: Flutter desktop shells

#190

Earlier quoted context omitted.

Not just mobile. Dart (though not Flutter) is also used by the AdWords web app, which is quite enormous. That said, Adwords used to be written in GWT. It's not impossible to migrate, but quite a big job.

So, dart is safe until google moves onto the next thing it invents. How’s GWT looking these days?

Looks like it occasionally gets an update, even though the GWT team moved on to j2cl.

https://gwt.googlesource.com/gwt/+log

Post reply on HN