135 karma · joined June 9, 2018
* Not peer-reviewed
* Not published in a journal (but self-published on a personal website)
* Questionable filtering excludes high-quality studies
* Questionable weighting boosts low-quality studies
It's not really addressed. The semantic tokens API is intended for semantic highlighting:
> Semantic tokenization allows language servers to provide additional token information based on the language server's knowledge on how to resolve symbols in the context of a project.
Abusing the semantic tokens API for syntactic highlighting is slow, unnecessarily complex (why do I need to implement a language server just to do syntactic highlighting?), and only a partial solution (still need a TM grammar, still don't get correct code folding, etc.).
I keep reading on HN that "Kotlin isn't much better than Java X". Having used Java and Kotlin (mainly targeting JVM) full-time for 6 years, this doesn't match my experience at all.
Here are some of my favorite Kotlin improvements over Java that I leverage all the time:
* Much improved type system (nullable types, function types, declaration site variance, type aliases, contracts, better type inference, reified function type arguments)
* Local variables are final by default ("val")
* Type-level distinction between read-only and mutable collections (but compiled to Java collections under the hood, so no conversion required when interacting with Java)
* Much improved collection API
* Much improved lambdas (e.g., no pain points w/ mutating variables and checked exceptions)
* Extension functions (incredibly useful in practice)
* Much better DSL capabilities (great for UIs, generating HTML, etc.)
* Lazy properties (more generally: delegated properties)
* Coroutines (looking forward to Java's Loom; by then coroutines will have dramatically improved my async code for 5+ years)
* Great serialization support (kotlinx.serialization)
* Pragmatic macro-like capabilities via inline functions and compiler plugins (removes lots of boilerplate)
* Multiplatform support (JVM/JS/WASM/native; Graal native image is a good alternative to Kotlin/native and also works for Java)
Although I'm glad to see that Java is still improving, it will never get close to Kotlin. The most obvious reason is that many of Java's early design decisions were revised in Kotlin but are impossible or impractical to revise in Java. Also, Java carries the burden of being a platform language, whereas Kotlin can focus on being the best possible application language.
These days, I only use Java for libraries intended to be used from languages other than just Kotlin. In that case, I don't want to force Kotlin on users (stdlib dependency, debugging, etc.).
I don't think that's really true. The Java language specification is entirely prose. The book you linked to was written by "outsider" authors and published in 1999 (!).
Spreading unproven claims could, for example, cause people to rely on Ivermectin instead of getting vaccinated, which would be an extremely dangerous bet with almost nothing to win and almost everything to lose.
The vaccines are paid for by health insurances and the government. Even if you don't trust these institutions, keep in mind that it's in their best economic interest to protect you from this disease (vaccines are cheaper than ICU patients), curb its spread, and allow businesses to reopen (which increases tax revenue).
The US has the most effective vaccines (Pfizer and Moderna). Every other country in the West wants them (but unfortunately there isn't enough supply). There is absolutely no reason to fear a conspiracy. The real threat is that not enough people will be vaccinated soon enough, causing more health and economic devastation. You can do your part by getting your shot and encouraging others to get theirs.