эх раз, еще раз (программистское)
Oct. 8th, 2009 11:45 pmЕще Бисмарк заметил, что стандартные библиотеки - как сосиски: приятнее использовать по назначению, не зная в подробностях, как их делают.
В исходниках java.util.Arrays, когда после множества фасадных методов сортировки с разными опущенными аргументами дело доходит до "мяса", до настоящего кода сортировки, его предваряет следующий комментарий:
А дальше идет семь совершенно одинаковых копий одного и того же кода квиксорта, отличающихся только типами аргументов и локальных переменных. По две страницы кода на каждую копию. Например, основной метод начинается так (к нему еще есть три вспомогательных, тоже в семи копиях каждый).
C'est la vie.
В исходниках java.util.Arrays, когда после множества фасадных методов сортировки с разными опущенными аргументами дело доходит до "мяса", до настоящего кода сортировки, его предваряет следующий комментарий:
/* * The code for each of the seven primitive types is largely identical. * C'est la vie. */
А дальше идет семь совершенно одинаковых копий одного и того же кода квиксорта, отличающихся только типами аргументов и локальных переменных. По две страницы кода на каждую копию. Например, основной метод начинается так (к нему еще есть три вспомогательных, тоже в семи копиях каждый).
private static void sort1(long x[], int off, int len) { ... private static void sort1(int x[], int off, int len) { ... private static void sort1(short x[], int off, int len) { ... private static void sort1(char x[], int off, int len) { ... private static void sort1(byte x[], int off, int len) { ... private static void sort1(double x[], int off, int len) { ... private static void sort1(float x[], int off, int len) { ...
C'est la vie.
no subject
Date: 2009-10-20 12:51 am (UTC)звук, похожий на звук у в русском, но с неокругленными губами
по-русски обычно говорят "ы", и "ы" же используется в кириллических тюркских алфавитах. ı ближе к заднему ряду, но это детали.
в швейцарском (de-CH) умляуты ä/ö/ü при капитализации всегда переходят в диграфы Ae/Oe/Ue. это связано с тем, что на печатных машинках (и потом на клавиатурах) надо было уместить одновременно немецкую, французскую и итальянскую диакритику, и на редко использующиеся заглавные буквы места не хватило.
во французском (fr-FR, но не fr-CA!) есть различие между capitales (обычно без диакритики) и majuscules (обычно с диакритикой). и то, и другое переводится на английский как capital letter.
и т.п.
вообще правила сортировки, например, тоже часто зависят от языка, так что это всё никого удивлять по идее не должно.
no subject
Date: 2009-10-20 12:59 am (UTC)