ну-ну... как вы представляете себе эти механизмы в ядре? и вообще как вы представляете интерпретатор эрланга в ядре?)) "не, сынок, это фантастика" (с) реклама плавленного сыра
cupuyc го и его предки foo(c: chan of <тип канала>){ # .. чтото делаем a := <- c; # ждем и получаем нечто из канала (другого потока/процесса/машины/ итд) c <-= ....; # отправляем нечто в канал } init(){ c := chan of <тип канала>; go foo(c); # запускаем поток foo # чето делаем; <-c; # ждем foo # итд } тоже все очень просто и продуманно. даже и не поймешь чего так носятся с потоко-синхронизацией, а не просто используют где и когда надо. язык С-образный. имеет классы без наследования, шаблоны и модули.