вот вам и совместимость
Oct. 11th, 2007 08:31 pm(эта запись будет понятна только программистам)
В общем, вот как оно будет. Прилетят к нам пришельцы, довольно скоро, ну и как водится будут с нам воевать. Пришельцы-то будут не так чтобы намного круче нас. Более развитая, конечно, технология, но не на сотни лет вперед ушли, на десятки. Мы поднатужимся, всей планетой объединимся, изо всех сил будем стараться их догонять - да еще к тому же нас больше, и у нас преимущество своего поля.
Так что война будет почти на равных. Долгая, кровопролитная, тяжелая. И в конце концов... они нас победят.
И в самый последний момент, представьте себе, что вот они уже готовы нажать кнопку, которая нас всех уничтожит, ну или там превратит в безмозглых рабов, в общем последний момент перед их окончательной победой, и мы их спрашиваем: скажите, говорим, а что мы не так делали? Ну вот мы старались очень, и даже казалось пару раз, что сможем отбиться, но в конце концов вы победили. У нас были шансы вообще?
И тогда инопланетяне посмотрят на нас, прищурятся хитро и скажут:
"А помните, когда вы на 64-битные компьютеры перешли, а int 32-битным оставили?"
В общем, вот как оно будет. Прилетят к нам пришельцы, довольно скоро, ну и как водится будут с нам воевать. Пришельцы-то будут не так чтобы намного круче нас. Более развитая, конечно, технология, но не на сотни лет вперед ушли, на десятки. Мы поднатужимся, всей планетой объединимся, изо всех сил будем стараться их догонять - да еще к тому же нас больше, и у нас преимущество своего поля.
Так что война будет почти на равных. Долгая, кровопролитная, тяжелая. И в конце концов... они нас победят.
И в самый последний момент, представьте себе, что вот они уже готовы нажать кнопку, которая нас всех уничтожит, ну или там превратит в безмозглых рабов, в общем последний момент перед их окончательной победой, и мы их спрашиваем: скажите, говорим, а что мы не так делали? Ну вот мы старались очень, и даже казалось пару раз, что сможем отбиться, но в конце концов вы победили. У нас были шансы вообще?
И тогда инопланетяне посмотрят на нас, прищурятся хитро и скажут:
"А помните, когда вы на 64-битные компьютеры перешли, а int 32-битным оставили?"
no subject
Date: 2007-10-11 07:41 pm (UTC)Если про С или плюсы говорить, то это ужасно плохо из-за pointer arithmetic, в которой получается нечто весьма странное, когда с одной стороны вокруг инты, а с другой -- пойнтеры всё-таки 64битные.
А в жаве или шарпе как-то довольно пофиг. Вот программист захотел сделать массив интов, точно зная, что они 32битные, потому что в стандарте так написано, ну и отлично, значит, ему больше не нужно пока. Иные программисты аж массивы шортов или вообще байтов делают, и ничего.
Стандартную библиотеку можно будет когда-нибудь переписать на лонги и совместимость замечательно сохранится, однако там, где нужно, будет всё хорошо. И интовые константы по дефолту считать лонгами. И тайп инференс очень уместно прокинет изменения дальше, там где он есть, конечно.
no subject
Date: 2007-10-11 08:48 pm (UTC)no subject
Date: 2007-10-12 05:53 am (UTC)?
ISO/IEC 9899:1999 6.3.2.3.6.
no subject
Date: 2007-10-12 05:57 am (UTC)no subject
Date: 2007-10-12 09:09 am (UTC)4 A pointer can be explicitly converted to any integral type large enough to hold it. The mapping function is
implementationdefined
[Note: it is intended to be unsurprising to those who know the addressing structure
of the underlying machine. ]
5 A value of integral type or enumeration type can be explicitly converted to a pointer.60) A pointer converted
to an integer of sufficient size (if any such exists on the implementation) and back to the same pointer type
will have its original value; mappings between pointers and integers are otherwise implementationdefined.
Особенно примечание понравилось -- "to be unsurprising" :)