Тут можно посмотреть, какие символы особенно доставляли программистам древних машин :)
Думаю, в "//" есть определённый смысл: традиционно для разделения имён в пути использовался "/"; он же, но поставленный в самом начале, обозначал корень иерархии. Но это локальный рут файловой системы, принадлежащий отдельной машине. А URI включает себя также и имя машины, т.е. в сети появляется самый-самый корень иерархии, глобальный рут. Его нужно отличать от локального, но желательно также не резервировать для его обозначения новые символы - чтобы их можно было использовать для прочих имён. Отсюда и мысль использовать тот же слэш, но удвоенный.
Вот ":", отделяющий имя схемы от иерархического пути, может и лишний - достаточно было потребовать, чтобы иерархия всегда начиналась с символа корня, который бы и служил разделителем. Было бы просто http//domain/path/file или urn:abc:def
мне частенько случалось впопыхах влеплять // вместо / напр: rm -rf home//user/trash
это, как правило, адекватно интерпретируется (в Bash, по крайней мере) а вот если убрать : , то название протокола может быть принято за название локальной директории(или наоборот). поэтому я считаю, что какой-нибудь приметный символ там не помешает.
P.S: Поэксперименторовал с визуально-эсететическими эффектами различных разделителей:
Интересная тема была бы, если бы *никсовый принцип монтирования томов распространился бы на интернет-ресурсы. Интернет - это федеративная распределённая файловая система, принцип адресации верхнего уровня мог бы быть таким же, как в локальной файловой системе, с одинарным слешем в корне. Расширения для запросов/параметров/якорей/моникеров/etc шли бы уровнем ниже. Браузер, получив глобальный адрес интернет-странички, автоматически монтировал бы домен сервера в определённом месте своей файловой системы как том (скажем ~/inet/domainname или ~/http/domainname, или что-то вроде), и работал бы ней как с родной ФС. Одновременно к этому тому имели бы доступ и другие программы. Примонтированный том служил бы кэшем, историей, мейлбоксом и проч, и демонтировался бы при очистке истории.
элегантно. :) учитывая новомодный тренд в сторону многопотоковых браузеров (код с каждoго домена выполняется отдельным потоком или даже процессом) не исключено, что так когда-то и будет. каждый процесс имел бы доступ только к файлам своего тома... вообще до сих пор ИМХО создателями браузеров двигало скорее желание оптимизации под скорость чем под модульность/безопасность, поэтому траверсировать 120 отдельных кэшей и историй желающих найдется и сейчас мало, но это постепенно меняется...
no subject
Date: 2009-10-14 02:31 pm (UTC)довольно удачна ;)
no subject
Date: 2009-10-14 03:38 pm (UTC)no subject
Date: 2009-10-14 05:40 pm (UTC)no subject
Date: 2009-10-14 06:33 pm (UTC)no subject
Date: 2009-10-14 06:53 pm (UTC)no subject
Date: 2009-10-14 07:45 pm (UTC)no subject
Date: 2009-10-14 08:20 pm (UTC)Думаю, в "//" есть определённый смысл: традиционно для разделения имён в пути использовался "/"; он же, но поставленный в самом начале, обозначал корень иерархии. Но это локальный рут файловой системы, принадлежащий отдельной машине. А URI включает себя также и имя машины, т.е. в сети появляется самый-самый корень иерархии, глобальный рут. Его нужно отличать от локального, но желательно также не резервировать для его обозначения новые символы - чтобы их можно было использовать для прочих имён. Отсюда и мысль использовать тот же слэш, но удвоенный.
no subject
Date: 2009-10-14 08:47 pm (UTC)no subject
Date: 2009-10-14 09:28 pm (UTC)no subject
Date: 2009-10-14 10:14 pm (UTC)напр: rm -rf home//user/trash
это, как правило, адекватно интерпретируется (в Bash, по крайней мере) а вот если убрать : , то название протокола может быть принято за название локальной директории(или наоборот). поэтому я считаю, что какой-нибудь приметный символ там не помешает.
P.S: Поэксперименторовал с визуально-эсететическими эффектами различных разделителей:
httx@@www.blabla.com
httx#www.blabla.com
httx~www.blabla.com
httx~~www.blabla.com
httх://www.blabla.com
httx**www.blabla.com
httx,,www.blabla.com
визуально мне лично двойная запятая импонирует, но семантически, как вы упоминали, символ корня целесообразнее...
no subject
Date: 2009-10-14 10:29 pm (UTC)http!www.blabla.com
или даже
http:)www.blabla.com
да, многое упущено...
Date: 2009-10-14 10:44 pm (UTC)http:-*www.defenselink.mil
http:-[]www.fda.gov
Re: да, многое упущено...
Date: 2009-10-14 10:53 pm (UTC)no subject
Date: 2009-10-14 10:31 pm (UTC)http:(www.suicide.com
no subject
Date: 2009-10-14 10:47 pm (UTC)http://community.livejournal.com/terra_linguarum/221227.html
no subject
Date: 2009-10-14 10:55 pm (UTC)no subject
Date: 2009-10-14 10:58 pm (UTC)no subject
Date: 2009-10-15 12:15 am (UTC)everything is a file
Date: 2009-10-19 03:09 pm (UTC)учитывая новомодный тренд в сторону многопотоковых браузеров (код с каждoго домена выполняется отдельным потоком или даже процессом) не исключено, что так когда-то и будет. каждый процесс имел бы доступ только к файлам своего тома... вообще до сих пор ИМХО создателями браузеров двигало скорее желание оптимизации под скорость чем под модульность/безопасность, поэтому траверсировать 120 отдельных кэшей и историй желающих найдется и сейчас мало, но это постепенно меняется...
no subject
Date: 2009-10-14 10:18 pm (UTC)