3 ms·
> you should just bite the bullet and make everything red I agree! It's also what I've been seeing in i.e. Scala, where everything is converging to a single M
by cube2222 5y ago
> you should just bite the bullet and make everything red
I agree! It's also what I've been seeing in i.e. Scala, where everything is converging to a single Monad. And in that case, monads are basically unnecessary. The point of them is to be able to customize your function colors.
Just use a language whose semicolon/newline semantics reflect the functionality you'd otherwise get with your "red" monad stack.
For me that means Go, where everything is async by default.
- jayd16 5y agoI don't think its so easy. Go goes a bit too far and makes the scheduling pre-emptive which can make targeting a specific thread (like a UI thread) harder. I think an ideal language would need to support cooperative threading and binding to specific thread contexts.
- metaltyphoon 5y agoDon’t know much but i thought Kotlin did this.
- jayd16 5y agoKotlin does seem to do it well although Kotlin functions are still considered colored.
- yencabulator 5y agoYou can make goroutine == OS thread with a single function call, where it matters: https://pkg.go.dev/runtime#LockOSThread https://pkg.go.dev/runtime#LockOSThread