spamsink: (Default)
[personal profile] spamsink
Когда я был маленький, мне очень нравилось, что бывают скобки (круглые), [квадратные] и {фигурные}. Откуда-то мне стало известно, что вложенные скобки, если их, скажем, три уровня, принято писать так: внутренние - круглые, затем - квадратные, и самые внешние - фигурные, чтобы сразу было видно, какая открывающая скобка соответствует какой закрывающей. Я был очень доволен, когда понял, как написать выражение, для которого "необходимы" все три вида скобок (ну и, естественно, как писать выражения, для которых необходим любой наперед заданный уровень вложенности).




Algol 68 Genie Mark 16 (released April 2009), copyright 2001-2009 J. Marcel van der Veer.
...
--brackets: consider [ .. ] and { .. } as equivalent to ( .. ).
When option brackets is specified, (...), [...] and {...} are equivalent to the
parser and any pair can be used where Algol 68 requires open-symbols and close-symbols.
This allows for clearer coding when parenthesis are nested.
А ЛИСПовцам - кошкин хвост!

Date: 2009-04-24 06:16 am (UTC)
From: [identity profile] http://users.livejournal.com/_tsvetkov_/
а я хотел водить каток. в детстве.

Date: 2009-04-24 06:21 am (UTC)
From: [identity profile] arno1251.livejournal.com
Ад для ЛИСПовцев: клава без скобок.

Date: 2009-04-24 07:39 am (UTC)
From: [identity profile] kcmamu.livejournal.com
А обязательно заглавные? А то p-q да b-d -- вот аж два типа скобок.

Date: 2009-04-24 07:02 am (UTC)
From: [identity profile] arno1251.livejournal.com
Нет такой же симметричной пары :(

Date: 2009-04-24 06:42 am (UTC)
From: [identity profile] mochalkina.livejournal.com
а каким тэгом Вы делаете фрагмент текста с таким вот подчеркиванием и примечанием? (да, я тупой)

Date: 2009-04-24 06:44 am (UTC)
From: [identity profile] cema.livejournal.com
Ну лиспы бывают разные (см. clojure). Но переопределить квадратную как круглую нельзя.

Date: 2009-04-24 05:02 pm (UTC)
From: [identity profile] http://users.livejournal.com/_navi_/
В схеме вроде квадратные и круглые эквивалентны были. Точно помню, что квадратные вместо круглых местами использовал, но подробностей не помню.

Date: 2009-04-24 07:23 am (UTC)
From: [identity profile] potan.livejournal.com
mzscheme позволяет использовать любые скобки.
В CL можно ридер подменить, что бы он скобки правильно обрабатывал.

Date: 2009-04-24 08:07 am (UTC)
From: [identity profile] cema.livejournal.com
Хороший вопрос.

Date: 2009-04-24 08:19 am (UTC)
From: [identity profile] potan.livejournal.com
На сколько я помню эта возможность входит в стандарт языка. Но глубоко не копал - Common Lisp необъятен :-).

Date: 2009-04-24 03:28 pm (UTC)
From: [identity profile] parovoz.livejournal.com
Читаем "Common Lisp. The Language", там всё написано. Лисповский ридер конфигурируется через *readtable*, в которой можно переопределить функцию любого символа, в том числе и скобок. Кстати, правильным образом сконфигурировав *readtable*, можно дёшево и сердито превратить Лисп в XML и даже в XSL :)

Date: 2009-04-24 08:34 am (UTC)
ak_47: (Default)
From: [personal profile] ak_47
Я предлагаю сразу переходить на l337 speak. Связь поколений сохраняется опять же.

Date: 2009-04-24 03:31 pm (UTC)
From: [identity profile] parovoz.livejournal.com
Можно ещё добавить <...> и /...\, а счастливые обладатели испаноязычных клавиатур могут наслаждаться "скобками" ¿...? и ¡...!

Date: 2009-04-24 04:12 pm (UTC)
From: [identity profile] parovoz.livejournal.com
Тогда так: <<...>> и //...\\.

Date: 2009-04-24 05:23 pm (UTC)
From: [identity profile] parovoz.livejournal.com
Мы о каком языке говорим? Если уж пошла речь о переопределении разделителей, то операторы сдвига и тем более признаки комментариев всегда можно тоже переопределить. Точно так же я могу сказать, что [...] и {...} тоже заняты (массивы и блоки).
From: [identity profile] parovoz.livejournal.com
Если брать какой-то конкретный, уже сложившийся язык, тот же C++, то все предложенные LJ и bq тоже не пойдут, потому что они идентификаторы (да ещё и неопределённые). Ну хорошо, не нравятся Вам <<..>> - возьмите <<<...>>> :) Хотя в Питоне и это сочетание символов зарезервировано...
From: [identity profile] parovoz.livejournal.com
Да конечно, плюшками! :)

В Форте скобок как таковых, насколько я понимаю, вообще нет. Бэйсик вроде бы одним видом скобок обходится. Если считать SGML/XML языком, то в нём только один вид скобок <...>.

Profile

spamsink: (Default)
spamsink

February 2026

S M T W T F S
12345 67
8 91011 121314
15161718 192021
22 2324 25262728

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 6th, 2026 09:55 am
Powered by Dreamwidth Studios