ext_118742 ([identity profile] mat33.livejournal.com) wrote in [community profile] weapon_sf2012-06-07 09:21 am

Оружие - баг


В норме, проги не "смешиваются", да :)
Однако, принцип инкапсуляции - уже в сочетании со "старыми" технологиями вроде DLL и кодаков, позволяют явить миру причудливые эффекты смешания скомпелированного кода - в памяти компа (те библиотеки, что линковались - только во время компиляции, а не в рантайме код смешивали).

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

Конечно, о коде будущего говорить - довольно беспредметно. Но уж коли создадут общие форматы каких-нибудь "баз знаний" - появится и у ИИ, управляющего мирным, али военным атомом возможность позаимствовать такую базу у "коллеги", выполняющего те же функции в игре.

Всё вышеперечисленное может быть вызвано одними глюками обновления прог и системы да интерракцией программ. Однако, заменить ваши библиотеки, подключающиеся в рантайме и используемые прогой системные объекты может и хакер и вирус.

[identity profile] pascendi.livejournal.com 2012-06-07 10:07 am (UTC)(link)
Во второй половине 80-х для некоей оборонной задачи была написана могучая информационная система (на Эльбрусе-2).
Однажды в институт, который ее разработал и эксплуатировал, приняли на работу молодого специалиста. Ему дали простенькую задачку, но с высокими требованиями к быстродействию. В задачке надо было считать синус. Товарищ для экономии времени захардкодил таблицу синусов, и программа вместо счета стала их просто выбирать из таблицы.

Скорость определения координат объекта на орбите (которые считала совершенно другая часть системы) выросла в 8 раз.