Ancestors

Written by Caroline Bell :QueerCat_Trans: on 2024-09-13 at 14:21

I'm trying to learn Scala but being forced to learn Scala Build Tool script instead.

SBT sucks. When are they going to fix the Gradle plugin?

I'm betting this is why the libraries are underdeveloped and kind of abandoned in some cases too.

I wanted to use Scala Swing but then I found out it hasn't been updated in like 9 months and is missing key features that make it unusable as an alternative to the full Java library.

I was going to work on the library but then I found out I'd have to use SBT to do so.

And their new testing library which I can't even seem to find a repo for. Perhaps it's inside the compiler repo which seems to be overly monolithic?

[#]Scala #Scala3 #ScalaSwing #JavaSwing #Swing #JVM

=> More informations about this toot | More toots from halotroop2288@techhub.social

Toot

Written by Caroline Bell :QueerCat_Trans: on 2024-09-13 at 14:30

Example of how terrible SBT is, from the Scala Swing build script:

run / fork := true

What the fuck does "run divided by fork is created and assigned to true" mean?

=> More informations about this toot | More toots from halotroop2288@techhub.social

Descendants

Written by GClaramunt on 2024-09-13 at 16:01

@halotroop2288 I wouldn't be that hard in this particular case, "/" has a pretty long history of being used as "path element separator" (unix, XPath, etc) and samewise, ALGOL started the tradition to use ":=" as assign the rh side value to the lh side ... I suppose the gradle equivalent is:

run.fork=true

i.e. "run dot product fork equals true" , which can also be pretty confusing in a build script :P

=> More informations about this toot | More toots from gclaramunt@mastodon.social

Written by Caroline Bell :QueerCat_Trans: on 2024-09-13 at 16:04

@gclaramunt No. Not in object-oriented programming. The dot is the standard separator between child elements. Actual path separators are only a thing in string literals.

Dot-products are usually defined as functions, not operators.

=> More informations about this toot | More toots from halotroop2288@techhub.social

Written by GClaramunt on 2024-09-13 at 18:32

@halotroop2288 my point was that reading symbols applying a different meaning ignoring the context, could easily lead to nonsense. In this case, I don't think it will be hard to build a mental mapping of "read / as child selector and := as assignment" that will allow to gain a better understanding of what that particular part of the build script is doing.

=> More informations about this toot | More toots from gclaramunt@mastodon.social

Proxy Information
Original URL
gemini://mastogem.picasoft.net/thread/113130721733238113
Status Code
Success (20)
Meta
text/gemini
Capsule Response Time
282.212048 milliseconds
Gemini-to-HTML Time
1.018459 milliseconds

This content has been proxied by September (3851b).