IT-батл - доцент МГУ vs студент Rust-офил
От: Shmj Ниоткуда  
Дата: 01.10.22 07:07
Оценка: +1 -2
Ока интересно люди живут: https://habr.com/ru/post/598219/

Некий продвинутый со своим мнением доцент МГУ Столяров (оценить уровень можно по книгам — тут http://www.stolyarov.info/books ) выдвинул тезис:

Но дело даже не в этой экономии (размера исполняемого файла — Прим. авт.)…
Намного важнее сам принцип: язык Си позволяет полностью отказаться от возможностей стандартной библиотеки. Кроме Си, таким свойством — абсолютной независимостью от библиотечного кода, также иногда называемым zero runtime — обладают на сегодняшний день только языки ассемблеров; ни один язык высокого уровня не предоставляет такой возможности.


И далее студент опровергает этот тезис, опускает доцента, ставит вопрос о его проф. пригодности:

Но это бы лишний раз показало, что преподаватель, который влил эту чушь в голову студентам МГУ, не просто находится не на своем месте, он вообще ничего не смыслит в системном программировании.


Ваше мнение.

З.Ы.
Добавлю свое мнение. Книги посмотрел, некоторые сохранил. Понравились. Не ожидал такого уровня — чел. смотрит в суть. То что делает такие амбициозные заявления — тоже вызывает уважение, пусть эти заявления и спорные. После прочтения статьи и после того как увидел сколько нужно изврата, чтобы доказать что Rust тоже обладает свойством zero runtime — не хочется смотреть этот Rust.
Отредактировано 01.10.2022 9:20 Shmj . Предыдущая версия . Еще …
Отредактировано 01.10.2022 7:49 Shmj . Предыдущая версия .
Отредактировано 01.10.2022 7:48 Shmj . Предыдущая версия .
Отредактировано 01.10.2022 7:18 Shmj . Предыдущая версия .
Отредактировано 01.10.2022 7:13 Shmj . Предыдущая версия .
Re: IT-батл - ректор МГУ vs студент Rust-офил
От: Vi2 Удмуртия http://www.adem.ru
Дата: 01.10.22 07:32
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Некий продвинутый со своим мнением ректор МГУ Столяров ...


Ректор МГУ — Виктор Антонович Садовничий, а "Андрей Викторович Столяров, доцент кафедры алгоритмических языков факультета ВМК МГУ им. М. В. Ломоносова и по совместительству научрук студента-автора статьи."
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
Re[2]: IT-батл - ректор МГУ vs студент Rust-офил
От: Нomunculus Россия  
Дата: 01.10.22 07:35
Оценка: +3 :)))
Здравствуйте, Vi2, Вы писали:

Он перепутал «ректор» и «лектор»
Главное — кто кого опустил. Шамжа никак не избавится от своих фантазий про унижение и опускание .
Re[2]: IT-батл - ректор МГУ vs студент Rust-офил
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 01.10.22 07:50
Оценка:
Здравствуйте, Vi2, Вы писали:

S>>Некий продвинутый со своим мнением ректор МГУ Столяров ...


Vi2>Ректор МГУ — Виктор Антонович Садовничий, а "Андрей Викторович Столяров, доцент кафедры алгоритмических языков факультета ВМК МГУ им. М. В. Ломоносова и по совместительству научрук студента-автора статьи."


А жаль.
The God is real, unless declared integer.
Re: IT-батл - доцент МГУ vs студент Rust-офил
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 01.10.22 08:01
Оценка:
Здравствуйте, Shmj, Вы писали:

S>

S>Но это бы лишний раз показало, что преподаватель, который влил эту чушь в голову студентам МГУ, не просто находится не на своем месте, он вообще ничего не смыслит в системном программировании.


S>Ваше мнение.


Когда оценивают подобное утверждение, надо понимать минимум две вещи:

1. Чему равно "все" = "универсальное множество" в рассмотрении. Потому что всегда есть, например, где-нибудь какой-то наспех сляпанный одним студентом язык, который даёт 1/4 того, что есть в C89, при этом точно так же не требует стандартной библиотеки, но достаточен для написания драйверов. (Или, ещё грубее, язык, использованный марсианами. Мы про них ничего пока не знаем.) Естественно, он не рассматривается, и "все" будет включать "все достаточно известные, чтобы попасть в рассмотрение", и это не будет являться ошибкой автора.

2. Когда именно было написано цитируемое утверждение. Книги Столярова вышли задолго до появления Rust.

Как-то автор слишком хамски себя повёл.

S>З.Ы.

S>Добавлю свое мнение. Книги посмотрел, некоторые сохранил. Понравились. Не ожидал такого уровня — чел. смотрит в суть. То что делает такие амбициозные заявления — тоже вызывает уважение, пусть эти заявления и спорные. После прочтения статьи и после того как увидел сколько нужно изврата, чтобы доказать что Rust тоже обладает свойством zero runtime — не хочется смотреть этот Rust.

Rust неплох, но это другая тема.
The God is real, unless declared integer.
Отредактировано 01.10.2022 8:16 netch80 . Предыдущая версия .
Re[2]: IT-батл - доцент МГУ vs студент Rust-офил
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 01.10.22 08:41
Оценка:
Здравствуйте, netch80, Вы писали:

N>Rust неплох, но это другая тема.

А что ты скажешь про zero-runtime? Нужно оно в нашем мире?
Sic luceat lux!
Re[3]: IT-батл - доцент МГУ vs студент Rust-офил
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 01.10.22 09:14
Оценка: 5 (3) +2
Здравствуйте, Kernan, Вы писали:

K>Здравствуйте, netch80, Вы писали:


N>>Rust неплох, но это другая тема.

K>А что ты скажешь про zero-runtime? Нужно оно в нашем мире?

Да, но редко. Вообще тут надо разделять несколько градаций движения к нему.

1. Просто возможность урезать стандартную библиотеку, чтобы что-то не подключалось, если явно не вызвано из основного кода. Как пример — работа с локалями для stdio или iostreams. В библиотеках, заточенных на статическую линковку, обычно это есть. Но вот в GNU libc очень долго этим не заморачивались, основной подход там был "все одинаково замапят в память, 20MB — пофиг, оно шарится между процессами". Сейчас несколько сдвинулись в сторону экономии.

2. Возможность собирать freestanding реализацию (не hosted), где часть возможностей просто отсутствует или сделана иначе. Например, ядра BSD систем обычно собираются во freestanding, что запрещает компилятору кучу всего. Если ты видишь printf, у него может даже совпадать сигнатура, но это другой printf (пишет в кольцевой буфер dmesg и пинает отдачу на читающий syslogd), всяких stdout тут просто нет. Менять printf("hello\n") на fputs("hello\n", stdout), как делает GCC начиная с 3.0 в hosted, нельзя, fputs не предоставляется. malloc, free в стандартной библиотеке могут писать в stderr, но тут нет stderr. И так далее.

И эта возможность гранулируется — что именно удалено? Где-то, как выше, stdio вырезан и заменён на другой, где чего-то нету и не будет. Где-то на 32-битке деление 64-битных чисел отправляется в спец. функцию типа divdi3(). А её нет, и компилятору лучше бы отказаться такое компилировать.

В этом смысле ядро — пример среды, которая ещё не zero, но уже не полная, где есть всё, что в стандарте. Детали отданы реализациям — стандарт только говорит "бывает freestanding, но что там, мы не регулируем".

3. Полный zero runtime. По-моему, обычно это уже спортивный результат, а не практически обусловленный. Если всё равно нужен код реализации, что мешает подключить маленькую библиотеку? Главное — сама возможность отрезать любой компонент из автоматически требуемых, который не подходит почему-то, а это обратно к пункту 2.

Но как теоретический абсолют — очень даже полезно.
The God is real, unless declared integer.
Отредактировано 02.10.2022 6:47 netch80 . Предыдущая версия .
Re: IT-батл - доцент МГУ vs студент Rust-офил
От: vsb Казахстан  
Дата: 01.10.22 09:24
Оценка: 3 (3) +2 :)
Я учился у Столярова. Он очень грамотный дядька. Пожалуй из всех преподов, которые мне преподавали, он самый крутой. Но он то ли троллит всех, то ли что, но у него по некоторым вопросом крайне экстравагантные взгляды, которые всерьёз воспринимать нельзя.

Ну и он всё-таки препод, а не 100% промышленный разработчик. Это тоже накладывает отпечаток.

Плюс в некоторых вопросах на мой взгляд он не хочет разбираться, это ему, конечно, минус. По тому же расту, уверен, что он толком не вникал в язык. Хотя этим страдают многие опытные сишники — им всё кажется очевидным, хотя раст совсем не такой и там без серьёзного погружения высказывать своё мнение вообще не стоит.

В общем резюмируя — мнение Столярова по расту не стоит слушать, но при этом другие его работы и мнения слушать стоит, хотя бы аргументы воспринять. Хотя, наверное, это больше к молодёжи относится, на этом сайте все 30-летние деды, которых уже учить поздно.
Re: IT-батл - доцент МГУ vs студент Rust-офил
От: Константин Черногория  
Дата: 01.10.22 10:05
Оценка:
Rust полезный и умирать не будет, но IMO он очень переоценен сейчас.

На нём сильно сложнее программировать.

Профит от Rust для задач, для которых верно всё из следующего списка:
1. Критически важна безопасность.
2. Жалко runtime ресурсов на сборщик мусора.
3. Не сильно важен размер бинарников.
4. Не нужно интегрировать большие сторонние библиотеки, сделанные для C или C++. Примеры таких больших библиотек — Windows SDK (особенно C++ части вроде Direct3D или Media Foundation), Eigen.

Это не очень-то большое множество задач.
Например на web серверах достаточно памяти для GC, народ обычно выбирает golang, C#, Java, или вообще JS/TS.
В HPC обычно нужны сторонние библиотеки, они все для C, C++, Fortran, сейчас уже и для Python много.
В играх тоже, и ещё там пофигу на безопасность.
Re: IT-батл - доцент МГУ vs студент Rust-офил
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 01.10.22 11:59
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>Намного важнее сам принцип: язык Си позволяет полностью отказаться от возможностей стандартной библиотеки. Кроме Си, таким свойством — абсолютной независимостью от библиотечного кода, также иногда называемым zero runtime — обладают на сегодняшний день только языки ассемблеров; ни один язык высокого уровня не предоставляет такой возможности.

S>И далее студент опровергает этот тезис, опускает доцента, ставит вопрос о его проф. пригодности:

Лучше было сказать так, Си стимулирует отказаться от стандартной библиотеки в большей степени, чем многие другие языки программирования. И не только от стандартной, а вообще от чужих библиотек алгоритмов.

С ходу несколько причин этому:
1) Простые парадигмы программирования и нет сложных запутанных парадигм.
2) Возможность управлять памятью вручную и осуществлять вызовы системных функций.
3) Для совсем уж энтузиастов существуют ассемблерные вставки.

В итоге программирование становится ближе к математикам и аппаратчикам, нежели к абстракционистам и пользователям
Автор: velkin
Дата: 26.05.22
. Хотя по факту такое можно проворачивать на C++ и других языках программирования. Просто тот же C++ имея все возможности Си к этому стимулировать не будет. Напротив, там идёт стимуляция быть абстракционистом и пользователем.
Re: IT-батл - доцент МГУ vs студент Rust-офил
От: Baiker  
Дата: 01.10.22 12:48
Оценка: +1 :)
Шмж, скажи, что именно тебя так привлекло в этой теме? Фраза "студент опускает доцента"? Ну так на это только недавняя студота и фапает.
Возможности Си? Достаточно сказать, что на нём написано ядро Линукса. К слову, на языке Ди написана даже целая ОСь XOmB, так что клоуны с "ваш язык Ди плохой, патамучта там GC" постыдно идут нафиг.

S>Rust тоже обладает свойством zero runtime — не хочется смотреть этот Rust.


Это уже давно все поняли — сразу же посла анонса! Достаточно уделить 10 минут примерам кода, чтобы понять, что танцы на льду с ходулями на роликах — не наша тема.
Re: IT-батл - доцент МГУ vs студент Rust-офил
От: LaptevVV Россия  
Дата: 01.10.22 13:27
Оценка:
S>Добавлю свое мнение. Книги посмотрел, некоторые сохранил. Понравились. Не ожидал такого уровня — чел. смотрит в суть. То что делает такие амбициозные заявления — тоже вызывает уважение, пусть эти заявления и спорные. После прочтения статьи и после того как увидел сколько нужно изврата, чтобы доказать что Rust тоже обладает свойством zero runtime — не хочется смотреть этот Rust.
Книжки Столярова вполне приличны — для обучения программированию.
Пишет неформально, читать интересно.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: IT-батл - доцент МГУ vs студент Rust-офил
От: LaptevVV Россия  
Дата: 01.10.22 13:30
Оценка: +4 :)
vsb>В общем резюмируя — мнение Столярова по расту не стоит слушать, но при этом другие его работы и мнения слушать стоит, хотя бы аргументы воспринять. Хотя, наверное, это больше к молодёжи относится, на этом сайте все 30-летние деды, которых уже учить поздно.
30-тилетние деды — улыбнуло...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[3]: IT-батл - доцент МГУ vs студент Rust-офил
От: Pzz Россия https://github.com/alexpevzner
Дата: 01.10.22 19:53
Оценка:
Здравствуйте, Kernan, Вы писали:

N>>Rust неплох, но это другая тема.

K>А что ты скажешь про zero-runtime? Нужно оно в нашем мире?

Бывает полезно, если мы пишем прошивку или ядро ОС. Но часто ли мы пишем прошивку или ядро ОС?

Ну и потом, самому компилятору не так уж много надо от библиотеки. Вполне можно ему выдать, что ему надо, сделав минималистическую библиотечку.

Совсем уж нулевого рантайма не бывает. Как минимум, надо .bss занулить, стек наладить, ...
Re[3]: IT-батл - доцент МГУ vs студент Rust-офил
От: Pzz Россия https://github.com/alexpevzner
Дата: 01.10.22 19:54
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>30-тилетние деды — улыбнуло...


Да мы с тобой, в нашем возрасте, вообще ходячие мертвецы. Только не говори никому, а до молодежь спать не будет, будут ужасы сниться.
Re[4]: IT-батл - доцент МГУ vs студент Rust-офил
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 01.10.22 21:18
Оценка: -2
Pzz> Да мы с тобой, в нашем возрасте, вообще ходячие мертвецы. Только не говори никому, а до молодежь спать не будет, будут ужасы сниться.

Студент пишет 1000 строчек кода в сутки.

Сколько написали вы за прошлую неделю?
Re[5]: IT-батл - доцент МГУ vs студент Rust-офил
От: Pzz Россия https://github.com/alexpevzner
Дата: 01.10.22 21:50
Оценка: +4
Здравствуйте, Эйнсток Файр, Вы писали:

ЭФ>Студент пишет 1000 строчек кода в сутки.


ЭФ>Сколько написали вы за прошлую неделю?


О качестве моего кода можно судить по моим опубликованным проектам:

https://github.com/alexpevzner/sane-airscan
https://github.com/OpenPrinting/ipp-usb

Если у тебя линукс, скорее всего, они оба есть в твоем дистрибутиве.

И 1000 строк кода в день, конечно, студент не пишет.
Re[4]: IT-батл - доцент МГУ vs студент Rust-офил
От: ути-пути Россия  
Дата: 01.10.22 21:50
Оценка: +1
Здравствуйте, netch80, Вы писали:

N>3. Полный zero runtime. По-моему, обычно это уже спортивный результат, а не практически обусловленный.


До сих пор широко распространены микроконтроллеры с десятками-сотнями байтов памяти. В основном из-за совместимости, но все равно, их еще много. Там это вполне практически обусловлено.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[5]: IT-батл - доцент МГУ vs студент Rust-офил
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 01.10.22 22:32
Оценка: +1
Здравствуйте, ути-пути, Вы писали:

N>>3. Полный zero runtime. По-моему, обычно это уже спортивный результат, а не практически обусловленный.


УП>До сих пор широко распространены микроконтроллеры с десятками-сотнями байтов памяти. В основном из-за совместимости, но все равно, их еще много. Там это вполне практически обусловлено.


Под такие обычно на асме пишут
Маньяк Робокряк колесит по городу
Re[6]: IT-батл - доцент МГУ vs студент Rust-офил
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 01.10.22 23:56
Оценка: -2 :))) :))
Pzz> О качестве моего кода можно судить по моим опубликованным проектам:

Так я не про качество говорю, а про количество.
В вашем хабе за последний год 38 недель из 52-х без коммитов.

Это потому что вы старенький и у вас низкая работоспособность.

Pzz> И 1000 строк кода в день, конечно, студент не пишет.


Регулярно не пишет, но в принципе может.
Отредактировано 01.10.2022 23:57 Эйнсток Файр . Предыдущая версия .
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.