All streams
Search
Write a publication
Pull to refresh
@math_coderread⁠-⁠only

User

Send message

Да, есть такое. Но я сомневаюсь, что 9 из 10 багов из-за этого. 1 из 10 — готов поверить. Остальные 8 должны быть и в Паскале.

В Паскале об этом вообще думать не надо практически

Это за счёт чего это? В Паскале нет указателей, разименований и прочих конструкций?

Предложил бы на базе Питона.

Он же принципиально тормозной.

в ночной дозор я играл на 7 какраз

Лет 5 назад я не смог найти решения. Сейчас попробовал — запустилась (на Win 10) по инструкции с old-games.ru


в дюну 2000 через досбокс на 10 винде.

Это не досовская игра. Может вы путаете с другой дюной? В Dune 2000 можно поиграть на Windows 10, но только благодаря Gruntmods, оригинальная же не работает.


рыцари старой республики нативно под 10 запускал (проблемы с экраном фиксятся конфигах)

В оконном режиме она запускается везде. В полноэкранном — увы, и это не фиксится.


червяки… так же вполне запускаются нативно

Червяков много и я не могу сейчас точно сказать какие именно требуют Windows XP, но такие есть.

Что "вуаля"? Я описал те случаи, когда не только "совместимость" не решает проблему, но решения нет вообще. А, например, с той же готикой надо лезть в тонкие настройки совместимости (есть такая малоизвестная и спрятанная фича в винде), тюнить их специальным образом и только тогда может быть заработает.

Dune 2000 работает в Win 8, но в Win 10 её запустить уже не удастся. Knights of the Old Republic не получиться запустить в полный экран ни на Win 8, ни на Win 10. С Gothic I тоже придётся изрядно повозиться и ещё не факт, что получится. Игру "Ночной дозор" не запустить на Win 7 и выше никаким способом. Оригинальные "Космические рейнджеры 2" — только с помощью wine. По крайней мере какая-то версия Worms также не идёт ни на чём старше Windows XP. И это только случаи, когда проблемы непреодолимы. Есть ещё, когда проблемы преодолимы, но надо очень долго мучиться. Например, серия игр про Гарри Поттера. И ещё много, много такого.

То есть, Нео сфейлил уже два раза ещё до момента выбора таблеток и его не отсеяли?

Конечно нет, ведь Морфиус был уверен, что Нео — Избранный.


И почему-то не отсеяли Сайфера.

Сайфер, как и остальные, делал выбор, не зная что его ждёт.

В этом случае вся статика летит к чертям.

Не обязательно. Просто решение получается сложным, даже монструозным.


Но это не значит, что так как сделано в Паскале — это единственный выход. Есть и другой: не иметь функций с переменным числом параметров ни в каком виде, а проблему удобного ввода-вывода решать иначе. Так сделано в Rust (ипользуются макросы), так сделано в современном C++ (используются темплейты). И решение из C# также может быть доведено до статического-типизированного (params IFormattable[] args вместо params object[] args), хотя оверхед из-за динамической диспатчеризации останется.

Это важно, когда вы придумываете язык. Когда грамматика уже есть как данность, это работает в обратную сторону: если в грамматике что-то не ложиться хорошо в LALR(1), вам будет сложно это сделать. Отход от LALR(1) — это проблема не техническая, и должна решаться не техническими средствами.

программиста учат думать перед тем, как что-то написать

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

Однако эти процедуры в Паскале действительно нетипичны для грамматики (принимают любое количество любых аргументов)

Иэ это, кстати, очень уродующая язык штука. Я в своё время из-за этого на С и перешёл: пусть printf и сложен и неудобен, но зато всё честно, а это важно для душевного здоровья программиста.

LLVM — да, а вот насчёт LEXX/YACC… Насколько я знаю (но это больше с чужих слов), как раз в неигрушечных компиляторах они, как правило, и не используются.


Они удобны — и мой небольшой опыт это подтверждает — 1) когда невысоки требования к обработке ошибок и вообще работе с невалидным исходным кодом, 2) когда язык только разрабатывается и нужно иметь возможность многократно и кардинально переделывать грамматику.


А при написании полноценного компилятора, с одной стороны, они не особо и помогают (если использовать LL-парсер — он легко пишется руками), а с другой создают лишние проблемы (отдельный язык, влекущий проблему сопряжения с ним; пляски когда надо сделать что-то хоть чуть-чуть нестандартное).

У C-подобных языков есть большое преимущество: возможность объявлять переменную там, где она нужна и тогда, когда она нужна. В паскале-подобных языках приходится или заранее, до написания собственно кода, придумывать, что написать в var блоке, либо бегать туда-сюда при написании кода, либо заполнять var блок когда функция уже написана. Ни один из вариантов не похож на заботу о программисте.

Ну есть такой фильм, называется "Матрица". Вполне самостоятельное законченное произведение. И есть трилогия фильмов "Матрица". Тоже вполне самостоятельное законченное произведение. Очевидно, что эти два произведения связаны друг с другом, но не тождественны друг другу.


Что касается реальности, то объективная реальность — это волновая функция вселенной (или, возможно, некий её редуцированный ошмёток). Всё остальное — это уже в большей или меньшей степени человеческий (в основном человеческий) взгляд на реальность.

Во втором фильме трилогии "Матрица". А я говорю не про трилогию, а про фильм "Матрица" — в нём подобных намёков нет.

Нет, как самостоятельное произведение, по отнощению к которому трилогия выступает ремейком/перезапуском/просто альтернативным взглядом на историю.

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

Да и вообще, у трилогии есть масса нестыковок и проблемных мест, но это не мешает ей быть культовой трилогией.

Ну, как по мне, фильм круче трилогии, и немало моих знакомых со мной согласны.


Кстати, концовка третьего фильма намекает, что локация с городом машин и Зионом — не реальный мир, а просто еще один уровень виртуальности. Такая себе матрешка, чтобы даже инакомыслящие находились под полным контролем, сами того не осознавая.

В Матрице-трилогии — да, но и то лишь намекает. В Матрице-фильме — по-видимому, никакой матрёшки нет.

Сцена с таблеками была не в "белой комнате", а просто в Матрице. Соответственно, Морфиус ничего там не создавал, и Нео создать не мог. (Там, видимо, были предметы, созданные в Загрузчике, но они существовали независимо от Морфиуса и никуда исчезать не собирались.) В момент выбора Нео ещё не понимал, что такое Матрица, не знал ни про каких спящих людей, и т. д.


Вывод: какие бы таблетки не употреблял написавший сие, на пользу ему это не пошло.

В этом году фанаты научной фантастики отмечают 20-летие с даты премьеры трилогии «Матрица».

И 20-летие с даты премьера фильма "Матрица", давайте не забывать об этом.

Information

Rating
Does not participate
Registered
Activity