Re: Синтаксический оверхед
От: prVovik Россия  
Дата: 09.06.05 15:56
Оценка: 21 (7) +1 :))) :))) :))) :))) :))) :))) :))) :)))
Здравствуйте, Сергей Губанов, Вы писали:

А давайте посчитаем оверхед языка в плане его названия!!!!

Итак, расчитав метрики языков, у меня получился следующий результат:
-----------------
Язык      Метрика
-----------------
Оберон       6
-----------------
С            1
-----------------


Итого получаем, что оверхед "оберона" по названию в сравнении с "С" составляет 600% !!!!

Спрашивается, и как долго это название еще будет существовать?
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re: Синтаксический оверхед
От: Oleg Volkov  
Дата: 09.06.05 16:00
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

Провокатор
Re[2]: Синтаксический оверхед
От: moudrick Россия http://community.moudrick.net/
Дата: 09.06.05 16:25
Оценка: +1
S>
S>func (param1, param2, param3, param4, expr? param5: param6);
S>


Не пишите такой код ни на каком объектном языке.
Напрашивается паттерн "Граничный объект" (Introduce Parameter Object)
здесь
Re[3]: Синтаксический оверхед: а смысл-то в чем?
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 09.06.05 16:35
Оценка: +2 :)
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Здравствуйте, eao197, Вы писали:


E>>ИМХО: подобная критика не конструктивна.


СГ>Если бы я просто сказал, что вот, в Си-образном синтаксисе используется больше лексем чем нужно, это было бы одно, а тут я сказал, что их используется не просто больше, а от двух до трех раз больше чем нужно. Привел числа. Даже среднее число вывел 235 процентов получил.


В качестве эпифграфа:

-- Петька, приборы!?
-- 45!
-- Что 45?
-- А что приборы?


Если смысл был в том, чтобы опубликовать полученное тобой магическое значение 235, то, вероятно, ты его достиг. Но ведь твое начинание можно продолжить. Вот, например, у меня есть своя нотация для C++. Так вот в ней принято идентификаторы писать только строчными буквами, разделяя отдельные слова подчеркиванием. Более того, имена типов должны заканчиваться суффиксом _t:
my_very_useful_class_t my_class;
if( my_class.open_file_and_do_all_necessary_processing( file_to_process, file_to_result ) ) ...;

Интересно, во сколько процентов эта нотация хуже паскалевкого CamelCase:
MyVeryUsefulClass myClass;
if( myClass.openFileAndDoAllNecessaryProcessing( fileToProcess, fileToResult ) ) ...;


Да и вообще, чего мы мелочимся? Разговариваем про какие-то языки программирования, которыми пользуются тысячные доли процентов общего населения Земли. Почему бы не взяться за естественные языки?

В испанском (португальском?), к примеру, в начале вопросительных и восклицательных приложений нужно ставить перевернутый вопросительный или восклицательный знак. Явный оверхед.

Да что испанский, возьмем любимый английский. Вот где уроды! Да за одни только артикли (the, a, an, of) убивать нужно (оверхед же). А если еще и сочетание гласных/согласных (типа 'oo' как 'y', или 'ee' как 'и') прибавить! Доколи терпеть будем, спрашивается?

Да что английский, есть же еще французкий. Там кроме артиклей еще и последнюю букву в словах нужно писать. Ту самую, которая не читается. Обиженный богом народ, право слово.

Да вообще все европейские языки с их алфавитами -- жутчайший оверхед. Иное дело иероглифы -- одно понятие, один символ. Правда и там, говорят, элементы повторяются.


Да уж... Единственное, что по этому поводу вспоминается, так это:

Маразм крепчал.

... << RSDN@Home 1.1.4 beta 7 rev. 447>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[3]: Синтаксический оверхед
От: Слава Шевцов Россия http://www.rentaguru.ru/
Дата: 10.06.05 00:06
Оценка: 15 (7) +3 :))) :))) :)))
Здравствуйте, Сергей Губанов, Вы писали:

К>>Вопрос с ходу — ты всегда будешь циклы и комлексные условия с операциями в 1 строчку писать? И что помешало на сишном синтаксисе сделать также?


СГ>Я соблюдал общепринятые стандарты кодирования. Хочешь верь, а хочешь нет, но инструкции навроде:


Я там ниже дописал общепринятые нормы кодирования на С

СГ>WHILE a DO x END


while(a) x();

СГ>REPEAT x UNTIL b


do x() while(b);

СГ>IF a THEN x ELSE y END


a ? x() : y();

СГ>CASE n OF a: x | b: y ELSE z END


a ? x() : (b ? y() : z());

СГ>ну натурально принято писать в одну строчку.


Ну натурально ваш код длиннее. Этож надо так неэкономно относиться к месту на мониторе
----------------------------------------------------------------------------------------------
Rentaguru
Re: Синтаксический оверхед
От: Real 3L0 Россия http://prikhodko.blogspot.com
Дата: 10.06.05 01:39
Оценка: :)
Здравствуйте, Сергей Губанов, Вы писали:

СГ>1) Известно, что Си-образный синтаксис использует больше лексем чем это реально необходимо.


Первый раз в жизни, читая юмор с утра, было так грустно.
В игнор тему.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Вселенная бесконечна как вширь, так и вглубь.
Re[2]: Синтаксический оверхед
От: Кодёнок  
Дата: 10.06.05 05:33
Оценка:
СГ>>1) Известно, что Си-образный синтаксис использует больше лексем чем это реально необходимо.

R3>Первый раз в жизни, читая юмор с утра, было так грустно.

R3>В игнор тему.

Тьфу-тьфу, вам не кажется, что проект Оберон и его потомки плохо влияет на людей
Re: Синтаксический оверхед
От: ForestLabs Россия  
Дата: 10.06.05 06:40
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>1) Известно, что Си-образный синтаксис использует больше лексем чем это реально необходимо.


Гы. Был такой язык российского разлива — Ямб.
Дык в нем циклы писались так:
(что-то в цикле)3
Т.е. в примере выполнить цикл 3 раза. Ну лаконичнее некуда.
Re[3]: Синтаксический оверхед
От: Socrat Россия  
Дата: 10.06.05 06:43
Оценка:
Здравствуйте, moudrick, Вы писали:


S>>
S>>func (param1, param2, param3, param4, expr? param5: param6);
S>>


M>Не пишите такой код ни на каком объектном языке.

M>Напрашивается паттерн "Граничный объект" (Introduce Parameter Object)
M>здесь


Есть группа параметров, естественным образом связанных друг с другом. Замените их объектом.


А если объекты не связаны? Например, надо взять взаймы у одного из двух человек, у кого денег больше:

Взять_взаймы (человек1.деньги > человек2.деньги? человек1: человек2);


Какой тут можно сделать объект?
Re[10]: *
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 10.06.05 06:50
Оценка:
Здравствуйте, Maniacal, Вы писали:

M>if (a) x(); else y();

M>не устраивает?

Меня — вполне, а вот пацанов из соседней комнаты сопровождающих международный проект заставляют писать {} в любом случае и на новой строке, ссылаясь на общепринятый coding style.

P. S.
if ( a ) x ( ) ; else y ( ) ;
*  * a * x * * *  *   y * * *

6 лишних звездочек
Re[4]: Синтаксический оверхед
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 10.06.05 06:54
Оценка: -1 :))
Здравствуйте, Oleg Volkov, Вы писали:

OV>Здравствуйте, Сергей Губанов, Вы писали:


СГ>>Совершенно согласен с тем, что шрифты семейсва Courier в заглавных буквах смотрятся не очень, а ведь именно они по умолчанию стоят в ряде популярных IDE.


OV>Такое впечатление, что вы ничего в своей жизни сложнее сортировки на Си не написали. Шрифт Courier используется потому, что в нём буквы одинаковой ширины. Verdana же абсолютно нечитаема по сравнению с моноширинными шрифтами.


Я в курсе на счет моноширности. Она не обязательна. Использую символы табуляции там где надо — они "моноширные" даже в не моноширном шрифте.

При чем тут сложные алгоритмы я не понял.
Re: Синтаксический оверхед
От: Demiurg  
Дата: 10.06.05 06:54
Оценка: +1
Здравствуйте, Сергей Губанов, Вы писали:

Не дочитал... Первых двух хватило, чтобы понять — бред.
... << RSDN@Home 1.1.4 beta 7 rev. 463>>
Re[4]: Синтаксический оверхед
От: Пацак Россия  
Дата: 10.06.05 06:59
Оценка:
Здравствуйте, Socrat, Вы писали:

S>

S>Есть группа параметров, естественным образом связанных друг с другом. Замените их объектом.

S>А если объекты не связаны? Например, надо взять взаймы у одного из двух человек, у кого денег больше:
S>
S>Взять_взаймы (человек1.деньги > человек2.деньги? человек1: человек2);
S>


А где здесь группа параметров? ИМХО один, но выбираемый в зависимости от условия.
Ку...
Re[5]: Синтаксический оверхед
От: Socrat Россия  
Дата: 10.06.05 07:03
Оценка:
Здравствуйте, Пацак, Вы писали:

П>Здравствуйте, Socrat, Вы писали:


S>>

S>>Есть группа параметров, естественным образом связанных друг с другом. Замените их объектом.

S>>А если объекты не связаны? Например, надо взять взаймы у одного из двух человек, у кого денег больше:
S>>
S>>Взять_взаймы (человек1.деньги > человек2.деньги? человек1: человек2);
S>>


П>А где здесь группа параметров? ИМХО один, но выбираемый в зависимости от условия.


Ну, можно еще добавить парочку... Например, сколько взять, когда отдать и т.д.
Re[4]: Синтаксический оверхед: а смысл-то в чем?
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 10.06.05 07:04
Оценка: :)))
Здравствуйте, eao197, Вы писали:

E>Да и вообще, чего мы мелочимся?


Увы, 235 процентов — не мелочь.

Серьмяжный смысл моего сообщения был в том, что теперь я могу ссылаться
Автор: Сергей Губанов
Дата: 09.06.05
на это сообщение, а не голословно говорить, что Си-образный синтаксис использует больше лексем чем нужно.

Мне даже не важно какой именно перерасход лексем получился. Важно что их больше
Автор: Сергей Губанов
Дата: 09.06.05
чем реально необходимо.
Re[5]: Синтаксический оверхед
От: Demiurg  
Дата: 10.06.05 07:07
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

D>>Modula — предтеча Pascal


СГ>Скажете тоже


СГ>Pascal 1970 ---> Modula-2 1979 ---> Oberon 1987 ---> Oberon-2 1992 ---> ...


Да паскаль он и в Африке паскаль.
... << RSDN@Home 1.1.4 beta 7 rev. 463>>
Re[4]: Синтаксический оверхед
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 10.06.05 07:10
Оценка: -2
Здравствуйте, Пацак, Вы писали:

П>
П>while (x = a() ? b(k[i++]) : c(l[j--]) ) d(x);
П>


А по ушам схлопотать за такой код, можно?
Re[5]: Синтаксический оверхед: а смысл-то в чем?
От: Demiurg  
Дата: 10.06.05 07:10
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

E>>Да и вообще, чего мы мелочимся?


СГ>Увы, 235 процентов — не мелочь.


Но ведь ты не прав

СГ>Серьмяжный смысл моего сообщения был в том, что теперь я могу ссылаться
Автор: Сергей Губанов
Дата: 09.06.05
на это сообщение, а не голословно говорить, что Си-образный синтаксис использует больше лексем чем нужно.


Ссылаться на бредовое сообщение? Ой, тогда извини... Ты так и не понял, что не прав?
... << RSDN@Home 1.1.4 beta 7 rev. 463>>
Re[5]: Синтаксический оверхед
От: Socrat Россия  
Дата: 10.06.05 07:10
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Здравствуйте, Drago, Вы писали:


D>>Modula — предтеча Pascal


СГ>Скажете тоже


СГ>Pascal 1970 ---> Modula-2 1979 ---> Oberon 1987 ---> Oberon-2 1992 ---> ...


Oberon возвращается ---> ...
Re: Синтаксический оверхед
От: Patalog Россия  
Дата: 10.06.05 07:11
Оценка: 6 (2) +2 :))) :))
Здравствуйте, Сергей Губанов, Вы писали:

Мда, первый раз вижу столь удачное соответ. известной поговорке — "Когда коту делать нехер, он себе яйца лижет". Прям таки апофеоз какой-то.

ЗЫ Читая подобный "креатифф" начинаешь невольно оправдывать существование пАдонкофф. Посему — "аффтар, выпей йаду!"
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Почетный кавалер ордена Совка.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.