Неоднократно слышал что goto - это плохой стиль программирования (да ещё это иногда про switch говорят). Не скажите почему, ведь на asme переход на метку обычное дело и в порядке вещей.
если использовать его правильно, то ничего... проблема с гото пошла из-за того, что сишные адепты юзали его, где попало, что приводило к большим проблемам с читаемостью и пониманием написанного гавно-кода... еще в бородатые времена у плюсовых компиляторов был баг, когда в некоторых случаях из-за гото не срабатывали деструкторы, тк компилятор был туповат... то есть гото ломало раии концепты... --- Сообщение объединено, 6 фев 2019 --- вообще, если интересен этот вопрос, советую ознакомится с первоисточником - статьей Дейкстры из 70ых "гото консидеред хармфул" или что-то такое... --- Сообщение объединено, 6 фев 2019 --- во, вроде нашел... спасибо гуглу... 68 год, ппц...
VaVa, Потому что затрудняет читаемость кода. Так например обычное условие в тексте наглядно, визуально можно его видеть. А ветвление не наглядно, в таком случае нужно тратить лишние усилия - помнить все метки. При их даже не большом количестве это становится проблемой. А есчо фишка в том, что видя условные конструкции/циклы и прочее наглядное не нужно в уме держать граф, понимать связь между ветвлениями. Так как это отображено визуально. А десяток goto требует понятие алгоритма.
как-то весомых аргументов против goto нет... а asm рулит (хоть его скоро и не станет вообще особенно под win)
прикольный ник! Но M$ давно уже на С# переходит и избавляется постепенно от натив кода. В новой Visual Studio приложения для маркета пишутся только под .Net так что скоро и С++ не станет --- Сообщение объединено, 7 фев 2019 --- не питон M$ не любит - скорее всего будет на бейсеке --- Сообщение объединено, 7 фев 2019 --- хватит ржать скоро будем плакать ...
подавляющее количество компиляторов написано на языке самих компиляторов, так называемые селф-хостед компиляторы... для сборки новой версии просто нужно не потерять предыдущую версию... так компиль C# написан на C# (рослин имеется ввиду), GCC и Clang написаны на плюсах, компиль Rust написан на Rust, компиль Nim на Nim и тд и тп... --- Сообщение объединено, 7 фев 2019 --- не мелкомягкими едиными живы... есть линукс и мак, где языки для разработки по-умолчанию нативные...
M0rg0t, Верно. Это лишь упрощает атаку и делает анстаб софт. Это никогда не будет использовано в км. Эти яп не для этого, сам выхлоп такого компилера не пригоден для режима, где нужен контроль на уровне железа. Ключевой фундамент ядра пилится на асм, туда не допускают тех, у кого разум промыт скриптами.
Rel, У вас там на видосе человек что то чирикает в микрофон, я это не понимаю. Переведи, раз ссылку привёл на это.
пока мелкомягкие не запилят нормальный нативный компиль для C# (а попытки уже были, смотри .net native и corert), ни о каких драйверах на С# речи быть не может... возможно на определенном этапе фреймворк будет интегрирован в ядро, но нужно понимать, что как минимум текущий сборщик мусора - не про ядро совсем... есть проекты типа cosmos и mosa, но особых успехов от них мир так и не увидел, хотя идеи может быть там и неплохие зашиты...