> делают практичными некоторые методики, о которых в C++ и иже с ним даже думать не получается
А именно? Что Вы имеете в виду?
> означает ли это, что система не должна в принципе допускать возможности работать иным образом?
Сложный вопрос. С одной стороны, кашу маслом не испортишь. Но вот считать RTTI и вообще интроспекцию необходимой частью OO без демонстрации сереьзных примеров применения, я бы не стал. При этом я не отрицаю реальную необходимость RTTI в С++, как уже было сказано - но это в силу ограниченности средств языка (того же отсутствия мультиметодов), а не в силу естественности применения RTTI в OO.
Кастирование нуля в указатель итп., конечно, не очень удачно. Но почему нельзя рассматривать строки как указатели на память - именно ради оптимизации, понятно не очень. Так или иначе, понятно, что среда действительно крайне ненадёжна - мне как раз, в отличие от вас, видится, что отчасти это следствие именно оптимизации (строк и массивов вообще).
> выкидывать информацию вообще в принципе некрасиво
Слишком общее утверждение. Эдак, вы еще захотите, чтобы программе были доступны собственные исходники.
> тип объектов как нечто, присутствующее лишь при компиляции. это чисто философски неприятно
RTTI уже есть (его значение в С++ я не преуменьшаю). А что еще нужно, кроме него, чтобы тип объекта присутствовал в Run Time? Доступ к контейнеру, содержащему имена и типы всех методов объекта? :-) Или? И что мы с такой информацией такого можем сделать?
И опять же, как отсутствие типа объекта превращает делает нам "unsafe runtime environment" ?
no subject
А именно? Что Вы имеете в виду?
> означает ли это, что система не должна в принципе допускать возможности работать иным образом?
Сложный вопрос. С одной стороны, кашу маслом не испортишь. Но вот считать RTTI и вообще интроспекцию необходимой частью OO без демонстрации сереьзных примеров применения, я бы не стал.
При этом я не отрицаю реальную необходимость RTTI в С++, как уже было сказано - но это в силу ограниченности средств языка (того же отсутствия мультиметодов), а не в силу естественности применения RTTI в OO.
Кастирование нуля в указатель итп., конечно, не очень удачно. Но почему нельзя рассматривать строки как указатели на память - именно ради оптимизации, понятно не очень. Так или иначе, понятно, что среда действительно крайне ненадёжна - мне как раз, в отличие от вас, видится, что отчасти это следствие именно оптимизации (строк и массивов вообще).
> выкидывать информацию вообще в принципе некрасиво
Слишком общее утверждение. Эдак, вы еще захотите, чтобы программе были доступны собственные исходники.
> тип объектов как нечто, присутствующее лишь при компиляции. это чисто философски неприятно
RTTI уже есть (его значение в С++ я не преуменьшаю). А что еще нужно, кроме него, чтобы тип объекта присутствовал в Run Time? Доступ к контейнеру, содержащему имена и типы всех методов объекта? :-) Или? И что мы с такой информацией такого можем сделать?
И опять же, как отсутствие типа объекта превращает делает нам "unsafe runtime environment" ?