Re[11]: Про синтаксис
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.06.12 11:41
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>Ну да, никто прям не обратил. До сих пор как страшный сон помню высеры VC по поводу забытого ";"/


Да ладно. В 99% случаев указывал на следующую строчку, что стандартно для рекурсивных парсеров.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[17]: Про синтаксис
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.06.12 11:55
Оценка:
Здравствуйте, grosborn, Вы писали:

G>Я понимаю, что тебе может быть технически трудно трудно принимать объективные подходы в такой сложной деятельности. Но все-равно нужно по меньшей мере это не отрицать, твое отрицание непродуктивно.


Есть такой оборот — не учи отца ...

Ты вот тут попытался доказать всем, что отступы масдай, но как-то никто с твоими доводами не согласился.

В общем, я же не против. Если ты сможешь найти алгоритм выбора оптимального синтаксиса, то я тебе только спасибо скажу и буду прославлять на каждом углу. Вот только я практически уверен, что это не случится. DarkGray очень хорошо формализовал субъективность синтаксический предпочтений. Предпочтения строятся на опыте и привычках. И любое "формальное" суждение о синтаксисе базируется на них. А значит эти суждения не формальны, и крайне субъективны.

Тут есть только один "системный подход" принимать мнение большинства и стараться, по возможности, следовать ему. Если это и научный подход, то наукой тут будет социология, а не информатика или математика.

ВВ>В любой на первый взгляд субъективной и хаотичной системе есть элементы четкой логики.


Да, несомненно! Только от этого знания нет толка, если аргументами в этой четкой логике выступает разный опыт и привычки кучи людей.

ВВ>История знает таких примеров — та же статистика, теорвер.


История, кстати, самая неформальная из наук. Она как дышло. Куда повернул туда и вышло. Каждый победивший в политической борьбе переписывает историю по своему.

G>Я тоже далек от мысли, что абсолютно все можно рассчитать и обосновать. Что-то можно, что-то нельзя, что-то не получается. Но пытаться необходимо. У вас с синтаксисом ужос-ужос-ужос.


Дык, пытайся! Кто же тебе запрещает. Но пока у тебя не появились мало-мальски пригодные для использования результаты не надо менять на других. Ладно?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[18]: Про синтаксис
От: grosborn  
Дата: 14.06.12 12:02
Оценка:
> Есть такой оборот — не учи отца ...

Да я уже понял. Забудь.
Posted via RSDN NNTP Server 2.1 beta
Забанен на рсдн за применение слова "Маргинал"
Re[16]: Про синтаксис
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.06.12 12:09
Оценка:
Здравствуйте, DarkGray, Вы писали:

DG>Использование скобок раздувает код прежде всего по вертикали, что уменьшает кол-во смысловых строк воспринимаемых за единицу времени — приходится чаще передвигать глаза, и чаще скроллировать.


Ты сам сказал, что человек не может анализировать сразу много информации. Кратковременная память ведь маленькая.

Следствием этого явялется то, что человек не может воспринимать за раз больше одного выражения. Так что раздутие никак не влияет на читаемость. На оборот наличие явных ограничителей позволяет отделить сентенции друг от друга, что упрощает понимание смысла.

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

VD>>И в этих условиях решающую роль начинает играть фактор привычек и предпочтений.


DG>Привычки меняются тяжело, но все-таки это возможно.


Конечно, возможно. Причем кто-то делает это относительно просто. Они без труда изучают Хаскели, ФШарпы, Агды, Лиспы и прочую "ересь". Но в целом массы инертны, ленивы и консервативны. Так что для изменения привычек масс нужны серьезные предпосылки. Оными могут стать мегабабло брошенное на популяризацию непривычных решений или какие-то невероятные бенефиты.

Сами же по себе привычки масс не изменятся или изменятся но через очень большой промежуток времени (десятки лет).

DG>И дальше возникает основной вопрос: стоит ли потратить неделю-месяц на выработку новой привычки ради ускорения чтения текста на 3-10% в течении следующего десятка лет.


Этот вопрос возникает только у отдельных индивидов. У масс (составляющих мэйнстрим) вопросов не возникает в приципе. Возникают лишь течения, моды и прочая фигня.

Вот если использование языка с отступами вдруг будет влиять на принятие на работу, то несомненно люди начнут скрепя сердцем менять привычки.

Отсюда языки вроде Хаскеля и Фшарпа не имеют перспектив в мэйнстриме, если в них не начнется вкладываться мега-бабло. А делать это, банально, никому не хочется.

Конечно люди могут начать менять привычки из-за некоторого другого фактора, как то доступность только непривычного средства на выбранной платформе (монополизм) или мега-преимущества которые дает язык. Вот только мега-преимуществ как-то не видно (есть аналоги дающие тоже самое но с боле привычным синтаксисом), а монополизм все меньше влияет в следствии расширяющейся конкуренции.

Так что привычки остаются определяющим фактором. И их роль будет только нарастать.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Про синтаксис
От: Воронков Василий Россия  
Дата: 14.06.12 14:02
Оценка:
Здравствуйте, Temoto, Вы писали:

ВВ>>Какое из двух зол лучше?

T>Василий, пожалуйста, напишите потом какое решение вы приняли и по каким причинам.

То, которые ты советовал. Собственно, я и так склонялся к нему, хотелось утвердиться в своем мнении. Основная причина в общем-то простая — унифицированность синтаксиса. И неочевидность ошибок в старом варианте.
Re[12]: Про синтаксис
От: Воронков Василий Россия  
Дата: 14.06.12 14:24
Оценка:
Здравствуйте, VladD2, Вы писали:

ВВ>>Судя по всему, так и есть. Мне это казалось "оптимизацией" синтаксиса в виду того, что два выражения подряд на топ левеле — это достаточно бессмысленная штука.

VD>Мне кажется, что два выражения подряд — это хреновая идея на любом уровне, если конечно, выражение не вызов функции с побочным эффектом.
VD>Если говорить серьезно, то я бы на твоем месте запретил перенос строк без отсутпа. Хотите переносить? Покажите это отступом на любом уровне. И все сразу встанет на свои места.

В общем так и сделано в итоге.

VD>Ты очень теоретически рассуждаешь. Префиксных операторов раз два и обчелся. Все остальные (в том числе и вызов функции) приводят двум выражениям без разделителя, что явно является ошибкой. А выражение -чтото — столь редки в коде, что ими можно пренебречь.


В Ela это не совсем так. Оператор от функции отличается только нотацией при вызове по умолчанию. А так, любую функцию можно вызвать в префиксной, инфиксной или постфиксной форме. Код вида "-x" и
"x-" создает левую и правую секцию, соответственно. На Немерле аналогом будет "_ — x" и "x — _". Однако вызов может быть и сатурирован, если функция не возвращает другую функцию. Ну т.е., например:

let f! = f()
let _ !! g = g() //Эквивалентно: let (!!) = \_ -> \g -> g()

let foo _ = "foo!" //бессмысленная функция :)

foo! //сатурация
!foo //сатурация
(!) foo //сатурация
foo!! //правая секция
!!foo //левая секция
foo !! foo //сатурация


ВВ>>Ну для хаскелл-стайл синтаксиса автоматическое форматирование по мере ввода — smart indent то есть — это как раз фантастика и есть.

VD>Создатели Хаскеля хотели создать язык не похожий на другие. И им это удалось. Вот только плюс ли это?

У тебя какое-то странное представление о Хаскелле. Здесь скорее прослеживается генеалогическая цепочка Hope -> Miranda -> Haskell. В Hope еще не было вывода типов, Миранда же (база) вообще очень сильно похожа на Хаскелл. Я думаю, они скорее пытались взять лучшее, что было в существующих языках. Делать же что-то непохожее, просто чтобы быть непохожим — довольно глупо.

VD>Ну, и в чем тогда проблема?


Видимо, проблемы действительно нет

VD>Все что тебе остается сделать — это выдавать предупреждения о потере вычисленного значения в первой строке (если отступа во второй нет).

VD>Ну, еще нужно ввести синтаксис позволяющий явно игнорировать вычисленное значение.

Это уже есть.
Re[2]: Про синтаксис
От: Воронков Василий Россия  
Дата: 14.06.12 14:26
Оценка:
Здравствуйте, Temoto, Вы писали:

ВВ>>Какое из двух зол лучше?

T>Василий, пожалуйста, напишите потом какое решение вы приняли и по каким причинам.

Сейчас я, кстати, тайп-классы пытаюсь прикрутить : https://groups.google.com/forum/?fromgroups#!topic/elalang/13jRHNw0lnI

На лямбде есть обсуждение:
http://lambda-the-ultimate.org/node/4542
Re[13]: Про синтаксис
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.06.12 14:48
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>В Ela это не совсем так. Оператор от функции отличается только нотацией при вызове по умолчанию.


Ну, дык ты сам создаешь себе проблемы и вынужден их решать. Дизайн языка вещь сильно связанная. Один выбор провоцирует решение других (казалось бы не связанных) проблем.

Так что сишный синтаксис не так глуп и убог как это может показаться на первый взгяд. В комплексе он решает множество проблем. Вот тот же вызов функции четко отделяется от применения операторов, например. Для каринга может и не здорово, но вот таких проблем как у тебя не возникает.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[17]: Про синтаксис
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 14.06.12 16:26
Оценка: 6 (1)
VD>Так что привычки остаются определяющим фактором. И их роль будет только нарастать.

В бурно развивающейся отрасли привычки имеют слабое влияние. В бурно развивающейся отрасли новое обычно более эффективное и эргономичное, чем старое. При этом новички (подрастающие поколения) обучаются сразу новым привычкам, и за счет того, что новые привычки более эффективные начинают вытеснять старичков, и тем приходится тоже учиться новым трюкам.

Соответственно, при разработке долгоиграющего языка, среды, инструментария и т.д. — сначала необходимо исходить из того, что предопределенный словарь нулевой и оценить какой вариант более эффективный, а дальше трезво проанализировать — что выгоднее: идти на поводу масс и получить менее эффективный инструмент, или тащить массы за собой и получить более эффективный инструмент.
Re[18]: Про синтаксис
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.06.12 17:14
Оценка:
Здравствуйте, DarkGray, Вы писали:

DG>дальше трезво проанализировать — что выгоднее: идти на поводу масс и получить менее эффективный инструмент, или тащить массы за собой и получить более эффективный инструмент.


Тащить массы за собой — это не малые расходы (бабла и сил). А "получить менее эффективный инструмент" — это домыслы. Традиции не обязательно не эффективно.

Скажем разница между скобками и отступами по факту на производительность программиста никак не влияет. А уж финты ушами вроде вызовов функций без скобок — это просто ничем не обоснованное наплевательское отношение к потенциальным пользователям. От части именно по этому Хаскель имеет меньшую популярность чем Питон, а питон меньшую чем Ява. Хотя влияние бабла и маркетинга тут сильно влияет на результаты.

В общем, система тут получается комплексная и простыми уравнениями не решается.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.