4 ms·
Ok, so to state the obvious, if you don't turn to racket for "programming language research" why do you use the language at all?
by darby_eight 2y ago
Ok, so to state the obvious, if you don't turn to racket for "programming language research" why do you use the language at all?
- djtango 2y agoAs a Clojure developer who did write some Racket, there is a satisfying purity to Scheme (at least to me).
- darby_eight 2y agoThis is a wonderful answer! I return to my main calling: figuring out why people use PLT scheme without an academic incentive. There must be an answer here somewhere....
- triyambakam 2y agoIs this a joke or why don't you think they answered the question?
- darby_eight 2y ago[flagged]
- runesoerensen 2y agoThis is just getting more confusing.
- darby_eight 2y agoamen
- runesoerensen 2y agoAlso (about HN and racket): https://news.ycombinator.com/item?id=9270478 https://news.ycombinator.com/item?id=9270478
- jnxx 2y agoI guess one can think of Clojure as a very Scheme-affine Lisp. Which is not surprising since Scheme was a kind of distilled iteration of Common Lisp as a common denominator. Are there any Schemes which are as "Batteries included" as Clojure with broad and deep library support? (I think Racket has quite good support!)
- zem 2y agoit's also a lovely general-purpose language, very pleasant to use.
- eru 2y agoThe same reason people use Haskell outside of 'programming language research', too, perhaps?
- tgbugs 2y agoOne reason is that it has one of the best cross platform native gui solutions out there. It exists because the research side was focused on teaching programming and needed a solution that their students could just install. There is a bit of a learning curve, but once you're over the hump it is just a pleasure to work with. See also things like https://docs.racket-lang.org/gui-easy/index.html https://docs.racket-lang.org/gui-easy/index.html.
- darby_eight 2y agoWord!
- SkiFire13 2y ago> One reason is that it has one of the best cross platform native gui solutions out there. I'm always a bit skeptical of these statements. How does it define "native"? Does it use gtk/libadwaita on Gnome and Qt on KDE? What about windows, does it use Win32, WPF, WinUI2 or WinUI3, all of which could be considered "native"? What about platform-dependent layouts?
- Bogdanp 2y agoIt's GTK on Linux, win32 on Windows, and Cocoa on macOS.
- kazinator 2y agoHow one defines "native GUI" is very simple: it uses the native widgets of the desktop OS, rather than custom-painting its own onto a pixel-level canvas. Buttons, input fields, lists/combos, context menus, the file picker dialog, what have you, are from the host system.
- rscho 2y agoErgonomics. It's extremely easy to use, especially in the GUI department. Generally, many things are super easy to use but not always top performance. Other things (macros) are truly exceptionally powerful, but rather complicated. So, industry-grade customer-facing code? Not its focus, maybe not. But incredibly easy internal tools? Sure!
- fuzztester 2y ago>It's extremely easy to use, especially in the GUI department. You mean it's easy to build GUI desktop apps with Racket?
- rscho 2y agoYes
- bmitc 2y agoIt becomes very limited quite quickly though. One quickly has to move to the pasteboard editor functionality, where you basically have to recreate everything yourself in a canvas, as the normal buttons and other graphical elements are not supported inside a canvas since they are native OS widgets. I started trying to build a complex enough GUI and just quit. There are bugs and the documentation is extremely terse. You have to rely on blog posts by one developer who has sorted it all out, but it's still really difficult to get an explicit handle on the concepts and functionality. Very, very few people use the pasteboard editor for complex things or even simple things. You'll be forging a path of your own for sure.
- t4ng0pwn3d 2y agoA lisp with a lot of features built in (websites, guis, etc)