Readit News logoReadit News
finalfantasia commented on What’s new in Swift 6.2   hackingwithswift.com/arti... · Posted by u/ingve
finalfantasia · 10 months ago
“Swift has turned into a gigantic, super complicated bag of special cases, special syntax, special stuff…”

— Chris Lattner, 2024

https://blog.jacobstechtavern.com/p/apple-is-killing-swift

finalfantasia commented on Google Closure Library has been archived   github.com/google/closure... · Posted by u/benatkin
finalfantasia · 2 years ago
For those who are interested, here is the official statement from the ClojureScript team regarding Google Closure Library going into “maintenance mode” and its impact on ClojureScript:

https://clojurescript.org/news/2024-01-24-release

finalfantasia commented on Study Tips from Richard Feynman   piggsboson.medium.com/5-p... · Posted by u/takiwatanga
BurningFrog · 4 years ago
A lazier step 2 that works for me is to sleep for a full night.
finalfantasia · 4 years ago
This is also well known in the Clojure community as Hammock-Driven Development [1].

[1] https://youtu.be/f84n5oFoZBc

finalfantasia commented on GC progress from JDK 8 to JDK 17   kstefanj.github.io/2021/1... · Posted by u/carimura
Erlangen · 4 years ago
I am running 2021.2.3 now. `ps aux | grep GC` still shows "-XX:+UseConcMarkSweepGC"
finalfantasia · 4 years ago
They changed the default garbage collector to G1 last year.[1]

[1] https://github.com/JetBrains/intellij-community/commit/edf1c...

finalfantasia commented on Lisp as an Alternative to Java (2000)   norvig.com/java-lisp.html... · Posted by u/susam
Scarbutt · 5 years ago
I wouldn't call it "nicely", there is lot of stuff that makes it really tedious.

The bigger issue though is wasting time wrapping Java libraries and most comments I see about Clojure interop talk as if there is no cost to it.

Clojure has good foundations but the ecosystem never really developed.

finalfantasia · 5 years ago
> The bigger issue though is wasting time wrapping Java libraries and most comments I see about Clojure interop talk as if there is no cost to it.

You are not forced to "waste time" wrapping Java libraries. As a matter of fact, thanks to the interop features that are well thought out, using Java libraries directly via the interop is encouraged and preferred to wrappers (Java Time API is a good example.) You may _choose_ to write wrappers for Java libraries if they make consuming these libraries in your code a bit nicer.

> Clojure has good foundations but the ecosystem never really developed.

There's no separate ecosystem for Clojure(Script). The established ecosystems such as JVM, .NET, and JavaScript _are_ the Clojure ecosystem. The creator of Clojure(Script) realized that it would be practically impossible to build an ecosystem from scratch without significant investment (Sun spent billions of marketing dollars alone in Java) and thus deliberately chose to make Clojure(Script) a language hosted on well-developed platforms such as JVM, .NET, and JavaScript. Also because of this focus on being a hosted language, he went to great lengths to ensure the interop with its hosting platforms is as seamless as possible. If you need an example for awkward interop with Java, try Scala.

finalfantasia commented on Six Years of Professional Clojure   engineering.nanit.com/6-y... · Posted by u/erez-rabih
MeteorMarc · 5 years ago
What build tools do you use, maven?
finalfantasia · 5 years ago
Clojure developers tend to choose the official Clojure CLI tools [1] for new projects these days.

[1] https://clojure.org/guides/deps_and_cli

finalfantasia commented on Six Years of Professional Clojure   engineering.nanit.com/6-y... · Posted by u/erez-rabih
ivanech · 5 years ago
I started working professionally with Clojure earlier this year and this article rings true. I think the article leaves out a fourth downside to running on the JVM: cryptic stack traces. Clojure will often throw Java errors when you do something wrong in Clojure. It's a bit of a pain to reason about what part of your Clojure code this Java error relates to, especially when just starting out.
finalfantasia · 5 years ago
To be fair, this is not unique to Clojure. You need to deal with stack traces no matter what as long as you're using any programming language that targets the JVM (even statically type-checked languages like Scala). There are some great articles [1][2] that discuss various simple techniques helpful for debugging and dealing with stack traces.

[1] https://eli.thegreenplace.net/2017/notes-on-debugging-clojur...

[2] https://cognitect.com/blog/2017/6/5/repl-debugging-no-stackt...

finalfantasia commented on Six Years of Professional Clojure   engineering.nanit.com/6-y... · Posted by u/erez-rabih
scotty79 · 5 years ago
Interesting. How exactly that looks? Do you have files opened in your editor, change them then go into previously opened repl, and just call the functions and the new version of those function runs?
finalfantasia · 5 years ago
Thanks to the dynamic nature of Clojure programs, experienced Clojure developers use the REPL-driven development workflow as demonstrated in this video [1].

[1] https://youtu.be/gIoadGfm5T8

finalfantasia commented on Hands-on Scala Programming   handsonscala.com... · Posted by u/jvican
submeta · 6 years ago
Honestly interested to know: Is there any added value for a Python developer in learning and using Scala? I love Python, especially because of its ecosystem, its widespreadedness, and of course because of Pandas, Numpy, Matplotlib. But I miss functional constructs from Mathematica or Scheme. Scala seems to be much more systematic and profound, but again: For everyday usage, is it overkill?
finalfantasia · 6 years ago
I cannot answer your question. Since you love Python, I guess you don't have any problem with dynamic type-checking. You also mentioned Scheme, I take that as you don't mind parentheses either. :)

If you would like to try something that's closest to Scheme and has access to the rich libraries in both the Python and Java ecosystems, give Clojure a try. You have access to the Java libraries out of the box and, with libpython-clj [1], you get access to your familiar Python libraries.

[1] https://github.com/clj-python/libpython-clj

u/finalfantasia

KarmaCake day248June 11, 2016View Original