Hacker News new | ask | show | jobs
by seandougall 2754 days ago
[raises hand] If it can avoid a >100 MB hello world, I’m on board. That makes it worth learning a language I would never have heard otherwise.
1 comments

If that's a serious suggestion then...

* Dart/Flutter {iOS, Android} [0]

* (Scheme|Lua|C)/IUP {Linux, Windows, macOS} [1]

* (QML with JS)/QtQuick {Windows, Linux, macOS, UWP, Android, iOS...} [2]

* (C++|Rust|Go|Python...)/Qt {Windows, Linux, macOS, UWP, Android, iOS...} [3]

* (TCL|Ada|Haskell|Python...)/Tk {Windows, Linux, macOS} [4]

* (TCL)/Hecl {Windows, Linux, macOS, Android} [5]

* (Scheme|C|JS|Haskell...)/GTK+ {Windows, Linux, macOS, Android^} [6]

* (C++|Python|Ruby|...)/WxWidgets {Windows, Linux, macOS, {Anywhere GTK or Qt run...}} [7]

(^ May not be stable or officially supported)

... All the platforms listed are cross-platform.

Some look native, some don't, but no Electron app does anyway.

Most package to single binary, some need proper packaging.

All are very simple to get started.

Tk has the least features, but TCL is just a shell language, so getting started is ridiculously easy. However, Tk can do things like inject its frames into any running process's window.

QT and GTK+ are the most powerful, which can confuse newcomers. But they're still simple to do simple things with.

I've used all but Flutter in a professional environment (but evaluated it), sometimes as maintainer, sometimes building something new. They're all solid. Different drawbacks with all of them, but there's always tradeoffs in programming.

For a beginner, I'd probably recommend QtQuick or WxWidgets.

[0] https://flutter.io/

[1] http://webserver2.tecgraf.puc-rio.br/iup/

[2] http://doc.qt.io/qt-5/qtquick-index.html

[3] https://wiki.qt.io/Language_Bindings

[4] https://www.tcl.tk/man/tcl8.5/TkCmd/tk.htm

[5] https://www.hecl.org/

[6] https://www.gtk.org/

[7] https://www.wxwidgets.org/

Most of them have been tried for ages and never got anywhere, and still look like crap (e.g. tcl).

Others have crappy support for different platforms (e.g. GTK and Windows/OSX) and that's for decades, not just because they are new.

None of them has the promise of Flutter: modern JS-like language, dead easy development, simple IDE support, cross platform, nice UI toolkit, hot reloading, and so on.

> modern JS-like language, dead easy development, simple IDE support, cross platform, nice UI toolkit, hot reloading, and so on.

That would be QtQuick.