Go, Kotlin y Erlang: tres respuestas al mismo problema de concurrencia
Not sure where I am going with this garbage collection rabbit hole

Un análisis técnico compara cómo Go, Kotlin y Erlang/Elixir (en BEAM) resuelven la concurrencia masiva sobre pocos hilos del sistema. Cada lenguaje adopta un modelo distinto: Go usa canales estilo CSP con un scheduler M:N:P y recolección de basura no generacional; Kotlin se apoya en corrutinas; Erlang confía en procesos aislados y tolerancia a fallos. El artículo detalla la evolución de la prevención en Go (de cooperativa a basada en señales) y su impacto en el GC, y contrasta los tres enfoques con ejemplos concretos.
El trabajo del scheduler es distribuir goroutines listas para ejecutar sobre hilos de trabajo.