Заинтересовавшись концепцией продолжения, я начал читать вики, посты и пришел к этому «простому» примеру:
reset {
...
shift { k: (Int=>Int) => // the continuation k will be the '_ + 1' below
k(7)
} + 1
}
// result: 8
Без знания Scala я совершенно потерян здесь, не могу понятьиз того, как 8 выходит.
Ниже я попытался понять значение, но не смог.Любой парень, не могли бы вы дать мне краткое объяснение?Да, есть грамматические книги Scala, но они слишком толстые, меня больше интересует понимание концепции продолжения с разделителями, чем основной язык Scala ...
(Int=>Int)
Выглядит как делегат C #, ввод Int, вывод Int.
k: (Int=>Int) => k(7)
Я потерян здесь ... что такое k и что(Int => Int) => k (7)?
shift { k: (Int=>Int) => k(7) } + 1
Еще больше потеряно ...
reset { ...; shift { k: (Int=>Int) => k(7) } + 1 }
Еще больше и больше теряется ...