Effective Java 3rd edition by Joshua Bloch <https:...
# random
t
Effective Java 3rd edition by Joshua Bloch https://www.amazon.com/gp/product/0134685997/
l
it's just a single page: "just use kotlin"
(i stole this joke somewhere, sorry)
t
@lovis I was contemplating a witty remark, saying "Use Kotlin" was the TL;DR version
😅 1
l
how could you resist the temptation?! 😂
t
@lovis haha I strive to not make broad assertions that implies others' efforts are already deprecated, but that one is true.
l
t
An Effective Kotlin book can be one page as well. "If it compiles, you are using effective Kotlin."
Just don't do
fun myOp() = { }
.
Or
!!
s
or anything in the Kotlin Puzzlers talk 😛
t
@Shawn I was just thinking that... okay maybe there is some content for a book. Java interop would probably be a good chunk.
e
The hint for puzzlers is that you should not turn off IDEA inspections that are designed to warn you about those puzzlers
There should be Idiomatic Kotlin book, though. There is a big difference between Kotlin code that compiles and Kotlin code that is truly beautiful.
👍🏽 2
👍 9
K 9
c
Or: 'Kotlin, we cleaned up the messes covered in Bloch vols 1-3...'
🧌 1
'you're welcome'
p
Roman, would it be possible to make at least some of the puzzlers from the puzzle talk compile errors, instead of IDE warning? Surely you don't want to create a language that puzzles people unless they use the IDE...
e
I don’t think so. Puzzlers are not wrong. They are just non intuitive. That is were IDE is and should be helping.
p
I believe the language should strive to be intuitive if it does not hinder its capabilities.
e
Most of the puzzlers I know of use legit and well designed language features. They just combine them in some clever way. IMHO, it would be wrong to make it an error. This kind of code should be discouraged as a matter of style. So, it should be flagged by style-checking tools (IDE is one of those).
p
sounds good 🙂
l
kotlinc --treatPuzzlersAsErrors
t
@lovis don't stop there
kotlinc --treatAllWarningsAsErrors
s
kotlinc -wall -werror -wextra --pedantic
throw in a
--funroll-loops
for good measure 😛
l
kotlinc --ansi
? 😅
e
kotlinc --use-google-extensions 🧌
🧌 2