Re[4]: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.05.11 20:45
Оценка:
Здравствуйте, okman, Вы писали:

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

O>на уровне примитивизма. Это дает разработчику небывалую гибкость в выборе средств для
O>решения его задач, а еще позволяет самовыражаться.

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

Не уверен, в том что IT точно угадал с размером зависимости, но что зависимость точно есть в этом я уверен.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.05.11 20:46
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>И, в общем то, я с этим согласен. На Scala писать интересно. На Java писать скучно. И это напрямую влияет на производительность, на "вхождение в поток", что, в конечном счёте, выливается в производительность программиста и его лояльность.


Все что лично мне нужно от Языка — это чтобы он не сковывал мне руки. Если я пишу на языке А и при этом чувствую, что мне очень не хватает фичи Х и при этом у меня нет средств реализовать эту фичу на языке А, но я точно знаю, что на языке Б эта фича есть или может быть реализована, то язык А для меня недостаточно мощный (хороший).

Скала неплохой язык, но у него нет макросов — мегафичи которая позволяет во многих обходить ограничения языка.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Язык, на котором приятно писать
От: VoidEx  
Дата: 03.05.11 05:29
Оценка: +2 -2 :)
Здравствуйте, VladD2, Вы писали:

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


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

O>>на уровне примитивизма. Это дает разработчику небывалую гибкость в выборе средств для
O>>решения его задач, а еще позволяет самовыражаться.

VD>"Сложность решения не может превышать более чем на порядок сложность инструмента" (c) IT.


Только если решение не включает в себя написание другого инструмента. Даже написание небольшой совокупности полезных функций — это написание инструмента.
Так что ценность сего высказывания нулевая.
Re[6]: Язык, на котором приятно писать
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 03.05.11 06:58
Оценка: -1 :)
Здравствуйте, VoidEx, Вы писали:

VD>>"Сложность решения не может превышать более чем на порядок сложность инструмента" (c) IT.


VE>Только если решение не включает в себя написание другого инструмента. Даже написание небольшой совокупности полезных функций — это написание инструмента.

VE>Так что ценность сего высказывания нулевая.

Согласен. практически на любом языке можно написать отличную библиотеку для конкретной предметной области. И использование связки маломощный язык + отличная библиотека будет сверхудобным.
Re[4]: Язык, на котором приятно писать
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 03.05.11 07:04
Оценка:
Здравствуйте, okman, Вы писали:

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

O>на уровне примитивизма. Это дает разработчику небывалую гибкость в выборе средств для
O>решения его задач, а еще позволяет самовыражаться.

O>Всякие "замесы" из многочисленных абстракций высокого уровня, модных парадигм и

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

O>Иными словами, в языке, на котором пишешь, лучше иметь большой набор отверток и ключей

O>разного размера, чем пару отмычек "на все случаи жизни".

По-моему, предыдущие два параграфа как раз защищали пару отмычек на все случаи жизни. Большой набор отвёрток и ключей, это явно не предельная простота.
Ce n'est que pour vous dire ce que je vous dis.
Re[2]: Язык, на котором приятно писать
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 03.05.11 07:44
Оценка:
Здравствуйте, Кодёнок, Вы писали:

Кё>То есть, фан зависит не только от языка, но и от содержимого головы программиста. Кобольщик, взяв современный С++, будет наверное безмерно счастлив, но человек, который “попробовал на вкус” лямбды не будет по-настоящему доволен ни одним языком, в котором их нет.


Может, программист останется доволен, но просто не станет решать на этом языке задачи требующие интенсивного применения лямбд.
Ce n'est que pour vous dire ce que je vous dis.
Re[6]: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 03.05.11 07:44
Оценка: :)
Здравствуйте, VoidEx, Вы писали:

VE>Только если решение не включает в себя написание другого инструмента. Даже написание небольшой совокупности полезных функций — это написание инструмента.

VE>Так что ценность сего высказывания нулевая.

Это неверное заявление. Причем сразу в двух точек зрения.

1. Так как могут быть готовые более мощные инструменты (например, тот же Nemerle vs. C#).
2. Так как объем и сложность задачи могут значительно превышать затраты на разработку инструмента, особенно когда разработка ведется не с нуля, а и с использованием готовых средств (с применением библиотек, макросов, продуктов вроде MPS и т.п.)
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Язык, на котором приятно писать
От: okman Беларусь https://searchinform.ru/
Дата: 03.05.11 08:13
Оценка: +1
Здравствуйте, Don Reba, Вы писали:

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


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

O>>на уровне примитивизма. Это дает разработчику небывалую гибкость в выборе средств для
O>>решения его задач, а еще позволяет самовыражаться.

O>>Всякие "замесы" из многочисленных абстракций высокого уровня, модных парадигм и

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

O>>Иными словами, в языке, на котором пишешь, лучше иметь большой набор отверток и ключей

O>>разного размера, чем пару отмычек "на все случаи жизни".

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


Это и есть простота. В моем понимании, подчеркиваю.
Когда суть языка сводится к оперированию простейшими конструкциями, все основные сложности
смещаются в область архитектуры. При таком раскладе почти не остается возможности угодить в
какую-то тонкую синтаксическую западню, не увидеть чего-то, существующего неявно или
погрязнуть в коде, перенасыщенном модными техническими приемами.
При этом существуют, разумеется, проблемы совсем другого рода, но одним дано их решать, другим — нет.
Re[7]: Язык, на котором приятно писать
От: VoidEx  
Дата: 03.05.11 08:17
Оценка:
Здравствуйте, VladD2, Вы писали:

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


VD>Это неверное заявление. Причем сразу в двух точек зрения.


VD>1. Так как могут быть готовые более мощные инструменты (например, тот же Nemerle vs. C#).


Чушь какая-то.
Как влияет наличие нового инструмента на _возможность_ решения на старом?

VD>2. Так как объем и сложность задачи могут значительно превышать затраты на разработку инструмента, особенно когда разработка ведется не с нуля, а и с использованием готовых средств (с применением библиотек, макросов, продуктов вроде MPS и т.п.)


И какое это отношение имеет к _возможной_ сложности решения?

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

Где тут речь о каких-то других инструментах и затратах в принципе?

Если перефразировать хотя бы так: сложность решения увеличивается с увеличением сложности инструмента при прочих равных (времени разработки, к примеру), то это хотя бы скажет о том, что более сложный инструмент приоритетнее.
Re[8]: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 03.05.11 19:02
Оценка:
Здравствуйте, VoidEx, Вы писали:

VD>>1. Так как могут быть готовые более мощные инструменты (например, тот же Nemerle vs. C#).


VE>Чушь какая-то.

VE>Как влияет наличие нового инструмента на _возможность_ решения на старом?

Про старый ты сам домыслил. Вот у тебя чушь и получилась.

VD>>2. Так как объем и сложность задачи могут значительно превышать затраты на разработку инструмента, особенно когда разработка ведется не с нуля, а и с использованием готовых средств (с применением библиотек, макросов, продуктов вроде MPS и т.п.)


VE>И какое это отношение имеет к _возможной_ сложности решения?


Прямое. Для решения задачи может потребоваться создание нового инструмента просто потому что без этого она не решается.

VE>

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

VE>Где тут речь о каких-то других инструментах и затратах в принципе?

Тут речь о том, что не все инструменты подходят для решения всех задач. Для решения некоторых требуется создавать новые инструменты (или переходить на них, если они есть).

VE>Если перефразировать хотя бы так: сложность решения увеличивается с увеличением сложности инструмента при прочих равных (времени разработки, к примеру), то это хотя бы скажет о том, что более сложный инструмент приоритетнее.


А не надо ошибочно перефразировать. Вообще не надо перефразировать. Мысль ведь и так очевидна.
Ну, а при использовании более сложного инструмента (по делу, конечно) решение как раз упрощается.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 03.05.11 19:10
Оценка:
Здравствуйте, okman, Вы писали:

O>Это и есть простота. В моем понимании, подчеркиваю.

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

Эта трепология разбивается о банальную действительность в которой существуют горы кода (в которых после некоторого объема невозможно разобраться) и кучи ситуаций когда код дублируется или вообще копипастится, а язык не предоставляет никаких средств для устранения этого.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Язык, на котором приятно писать
От: okman Беларусь https://searchinform.ru/
Дата: 03.05.11 20:53
Оценка:
Здравствуйте, VladD2, Вы писали:

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


Так я и говорю — одним дано управляться с этим, а другим нет.
Re[8]: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 03.05.11 21:08
Оценка:
Здравствуйте, okman, Вы писали:

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


O>Так я и говорю — одним дано управляться с этим, а другим нет.


На некоторых объемах не дано никому.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Язык, на котором приятно писать
От: okman Беларусь https://searchinform.ru/
Дата: 03.05.11 21:11
Оценка: +1 -2 :)
Здравствуйте, VladD2, Вы писали:

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


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


O>>Так я и говорю — одним дано управляться с этим, а другим нет.


VD>На некоторых объемах не дано никому.


От языка не зависит.
Re[6]: Язык, на котором приятно писать
От: IT Россия linq2db.com
Дата: 03.05.11 21:15
Оценка: :)
Здравствуйте, VoidEx, Вы писали:

VD>>"Сложность решения не может превышать более чем на порядок сложность инструмента" (c) IT.


VE>Только если решение не включает в себя написание другого инструмента. Даже написание небольшой совокупности полезных функций — это написание инструмента.


А где здесь противоречие? Это как раз только подтверждает гениальность мысли, кстати, не моей.

VE>Так что ценность сего высказывания нулевая.


Ценность любого высказывания нулевая, если оно до тебя не доходит.
Если нам не помогут, то мы тоже никого не пощадим.
Re[7]: Язык, на котором приятно писать
От: IT Россия linq2db.com
Дата: 03.05.11 21:35
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Согласен. практически на любом языке можно написать отличную библиотеку для конкретной предметной области. И использование связки маломощный язык + отличная библиотека будет сверхудобным.


Инструменты бывают разные. Канаву можно капать палкой-копалкой, можно взять лопату, а можно сесть в экскаватор. Качество и производительность во всех случаях будет существенно отличаться. То, о чём ты говоришь, это полезняшки, инструменты уровня пласкогубцев и молоточков. Вещь, безусловно полезная и необходимая в любом хозяйстве. То, о чём говорит Влад — это инструменты уровня завода по производству токарных станков, т.е. как минимум на пару порядков выше.
Если нам не помогут, то мы тоже никого не пощадим.
Re[8]: Язык, на котором приятно писать
От: BulatZiganshin  
Дата: 03.05.11 21:58
Оценка: +1
Здравствуйте, IT, Вы писали:

IT>Инструменты бывают разные. Канаву можно капать палкой-копалкой, можно взять лопату, а можно сесть в экскаватор. Качество и производительность во всех случаях будет существенно отличаться. То, о чём ты говоришь, это полезняшки, инструменты уровня пласкогубцев и молоточков. Вещь, безусловно полезная и необходимая в любом хозяйстве. То, о чём говорит Влад — это инструменты уровня завода по производству токарных станков, т.е. как минимум на пару порядков выше.


вот-вот. библиотеки — это инструмент первого уровня, они позволяют сгруппировать код, который и так можно написать на этом языке. макросы — второй уровень, они позволяют добавить syntax sugar. а третий уровень — это семантика самого языка. если например в хаскеле все значения ленивы и потоко-безопасны, то добавить это в немерле можно только полностью переписав все библиотеки
Люди, я люблю вас! Будьте бдительны!!!
Re[8]: Язык, на котором приятно писать
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 04.05.11 04:03
Оценка:
Здравствуйте, IT, Вы писали:

N>>Согласен. практически на любом языке можно написать отличную библиотеку для конкретной предметной области. И использование связки маломощный язык + отличная библиотека будет сверхудобным.


IT>Инструменты бывают разные. Канаву можно капать палкой-копалкой, можно взять лопату, а можно сесть в экскаватор. Качество и производительность во всех случаях будет существенно отличаться. То, о чём ты говоришь, это полезняшки, инструменты уровня пласкогубцев и молоточков. Вещь, безусловно полезная и необходимая в любом хозяйстве. То, о чём говорит Влад — это инструменты уровня завода по производству токарных станков, т.е. как минимум на пару порядков выше.


Ох уж мне эти аналогии.
1. На С++ можно написать обалденную матричную библиотеку, перегрузив необходимые операторы и использовав слайсы. И решать соответствующие задачи практически на естественном язык математики.
2. На довольно убогом языке Матлаба можно реализовывать сложные математические модели практически в несколько строк. Только за счёт огромного количества библиотек — Toolbox'ов.

Это не плоскогубцы и молоточки — это готовая рабочая среда, реализованная в виде качественных библиотек. В таком окружении могут комфортно работать даже непрограммисты (математики, физики).
Ты и Влад, как мне кажется, путаете разработчиков библиотек и их пользователей. Разработчиков мало, им нужен мощный язык. Пользователей большинство — им надо решать проблемы предметной области, то есть нужны конкретные (и удобные!) библиотеки.
Re[9]: Язык, на котором приятно писать
От: VoidEx  
Дата: 04.05.11 06:12
Оценка:
Здравствуйте, VladD2, Вы писали:

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


VD>>>1. Так как могут быть готовые более мощные инструменты (например, тот же Nemerle vs. C#).


VE>>Чушь какая-то.

VE>>Как влияет наличие нового инструмента на _возможность_ решения на старом?

VD>Про старый ты сам домыслил. Вот у тебя чушь и получилась.


Минуточку:

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

Так как могут быть готовые более мощные инструменты (например, тот же Nemerle vs. C#).

Тут речь об одном и том же инструменте или сравниваются два?

VE>>И какое это отношение имеет к _возможной_ сложности решения?


VD>Прямое. Для решения задачи может потребоваться создание нового инструмента просто потому что без этого она не решается.


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

VD>Тут речь о том, что не все инструменты подходят для решения всех задач. Для решения некоторых требуется создавать новые инструменты (или переходить на них, если они есть).


Разумеется. Только где грань между написанием инструмента и собственно решением? Любой вспомогательный класс по сути есть улучшение инструмента. Другое дело, что где-то уже может существовать лучший инструмент, но на _возможность_ решить задачу на старом это никак не влияет. Об этом я и толкую.

VD>Ну, а при использовании более сложного инструмента (по делу, конечно) решение как раз упрощается.


Но на более простом инструменте решение при этом не усложняется, и уж тем более не становится невозможным.
Re[7]: Язык, на котором приятно писать
От: VoidEx  
Дата: 04.05.11 06:19
Оценка:
Здравствуйте, IT, Вы писали:

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


VD>>>"Сложность решения не может превышать более чем на порядок сложность инструмента" (c) IT.


VE>>Только если решение не включает в себя написание другого инструмента. Даже написание небольшой совокупности полезных функций — это написание инструмента.


IT>А где здесь противоречие? Это как раз только подтверждает гениальность мысли, кстати, не моей.


Нет противоречия. Просто в итоге получается, что все решения ограничены сверху (что, кстати, не факт, что верно), причем для всех инструментов одинаково (так как все инструменты выразимы в терминах других). Разница лишь во времени реализации решения. Очень полезная мысль.

VE>>Так что ценность сего высказывания нулевая.


IT>Ценность любого высказывания нулевая, если оно до тебя не доходит.


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