Язык, на котором приятно писать
От: vsb Казахстан  
Дата: 29.04.11 07:46
Оценка: +1
Как вы считаете, из за каких свойств языка разработчику приятно на нём писать. Что даёт fun? Процитирую кусок из этой статьи:

> The other big reason we looked at Scala was that, although we’ve run into problems with Ruby, we like the flexibility of the language. We like that it’s such a full featured language, that it’s fun to code in. It’s the same reason so many Java people end up writing Ruby after they leave some big enterprise company. They want to have fun day to day. We didn’t want to leave that behind and go to a language with a very dry, businesslike community, like C++, for example. We know that people write super high performance code in C++, and engineers like Steve and Robey have had experience with that. But we wanted to be using a language that we’re really passionate about, and it seemed worth taking a gamble on Scala.


И, в общем то, я с этим согласен. На Scala писать интересно. На Java писать скучно. И это напрямую влияет на производительность, на "вхождение в поток", что, в конечном счёте, выливается в производительность программиста и его лояльность.
Re: Язык, на котором приятно писать
От: Ytz https://github.com/mtrempoltsev
Дата: 29.04.11 07:54
Оценка: 1 (1) +7
Здравствуйте, vsb, Вы писали:

vsb>Как вы считаете, из за каких свойств языка разработчику приятно на нём писать. Что даёт fun?


fun дает не сам язык, а результат. Когда надо долго писать, чтобы что-то получить — фана мало, когда результат видно сразу — фана много. Поэтому важно сразу получить что-то работающее и уже потом постепенно добавлять функционал.
Re[2]: Язык, на котором приятно писать
От: humanist-TPV- Россия www.qarksoft.ru
Дата: 29.04.11 08:39
Оценка:
Здравствуйте, Ytz, Вы писали:

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

Я не соглашусь с таким высказыванием, т.к. для меня фанство языка выражается очень просто : Если язык позволяет мне писать программы наиболее близкие к описанию логики предметной области — это фанство, в противном случае — отстой. Результатом фанского языка являются краткие, четкие и очевидные последовательности предложений языка. Если для выражения мысли мне надо написать кучу кода, в которых исходную мысль не увидеть даже с микроскопом — такой язык в топку. Поэтому Java и C# — ни разу не фанские, Scala — так себе, ей нужен в виде костылика Clojure, Nemerle (в основном с метапрограммированием и построением собственных DSL) — мой выбор фанского языка на сегодняшний день
При этом, если для реализации задачи нужно писать много, то я буду писать много и фанства у меня от этого не убавится. Декомпозиция задачи с выбором языка вроде не связаны, а возможность быстрой реализации прототипа опять на Nemerle есть.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Язык, на котором приятно писать
От: mrTwister Россия  
Дата: 29.04.11 09:09
Оценка: 1 (1) +2
Здравствуйте, humanist-TPV-, Вы писали:

HT>Я не соглашусь с таким высказыванием, т.к. для меня фанство языка выражается очень просто : Если язык позволяет мне писать программы наиболее близкие к описанию логики предметной области — это фанство, в противном случае — отстой. Результатом фанского языка являются краткие, четкие и очевидные последовательности предложений языка. Если для выражения мысли мне надо написать кучу кода, в которых исходную мысль не увидеть даже с микроскопом — такой язык в топку.


Может вы просто не умеете их готовить? Я не про кучу кода, а про видимость основной мысли (что в общем то ортогонально).
лэт ми спик фром май харт
Re: Язык, на котором приятно писать
От: VoidEx  
Дата: 29.04.11 09:15
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Как вы считаете, из за каких свойств языка разработчику приятно на нём писать. Что даёт fun?


Соглашусь с Ytz по поводу быстрого результата, потому языки без REPL так себе.
Второй fun'овый параметр (по сути почти прямо влияющий на первый) — если компилируется — работает, соот-но нужна сильная типизация.
Re[2]: Язык, на котором приятно писать
От: VoidEx  
Дата: 29.04.11 09:35
Оценка: :))
Здравствуйте, VoidEx, Вы писали:

Алсо, опыт с курицами показывает, что они охотнее клюют кнопку, выдающее одно зерно за каждое нажатие, нежели кнопку, которая выдает 10 зёрен, но после 5 нажатий. Т.е. время до получения положительного подкрепления критично.
А против природы не попрёшь.
Re: Язык, на котором приятно писать
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 29.04.11 09:52
Оценка: +1
поддерживаю — радует когда можно быстро получить результат.

так же радует, когда пишешь мало рутинного кода
в той же Java или C приходится писать много рутинного кода.
в C# поменьше, особенно в последних
js сильно расстраивает после C#-linq
Re[2]: Язык, на котором приятно писать
От: Курилка Россия http://kirya.narod.ru/
Дата: 29.04.11 10:08
Оценка: 27 (2)
Здравствуйте, DarkGray, Вы писали:

DG>поддерживаю — радует когда можно быстро получить результат.


DG>так же радует, когда пишешь мало рутинного кода

DG>в той же Java или C приходится писать много рутинного кода.
DG>в C# поменьше, особенно в последних
DG>js сильно расстраивает после C#-linq

а linq.js?
Re[3]: Язык, на котором приятно писать
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 29.04.11 10:14
Оценка:
К>а linq.js?

спасибо, как workaround пойдет.

но глобально расстраивает, что нет extension-ов (обязательно нужны обертки, чтобы как последовательность методов писать)
и что нет краткого синтаксиса для лямбд
Re[3]: Язык, на котором приятно писать
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 29.04.11 10:23
Оценка: +1
К>а linq.js?

DG> и что нет краткого синтаксиса для лямбд


но я смотрю они пошли дальше, и заюзали трюк, когда код в виде строки передается, и сделали свой язычок для лямбд
вот этим js и расстраивает, что приходится использовать всякие нехорошие трюки чтобы писать удобно
Re: Язык, на котором приятно писать
От: Кодёнок  
Дата: 29.04.11 11:21
Оценка: 1 (1) +1
Здравствуйте, vsb, Вы писали:

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


Можно сказать, что такие концепции как циклы, функции, исключения, интерфейсы, массивы, итерация, являются “языком”, на котором “думает” программист при составлении программы. Как и естественные языки, он эволюционирует со временем, и у каждого в голове немного своя версия этого языка.

Тогда, чем прямее язык позволяет выражать то, что ты “думаешь”, тем приятнее писать. И чем больше надо писать вспомогательного кода, тем язык неприятнее.

Например когда надо перебрать элементы массива, foreach прямее выражает мысль, чем for (int i = 0; i < N; ++i).

То есть, фан зависит не только от языка, но и от содержимого головы программиста. Кобольщик, взяв современный С++, будет наверное безмерно счастлив, но человек, который “попробовал на вкус” лямбды не будет по-настоящему доволен ни одним языком, в котором их нет.
Re[3]: Язык, на котором приятно писать
От: fddima  
Дата: 30.04.11 12:19
Оценка:
Здравствуйте, Курилка, Вы писали:

К>а linq.js?

Лучше на мой взгляд jsinq — он не пытается притянуть C#/.net в js, оставаясь при этом в практически том же, а то и большем функционале.
Re: Язык, на котором приятно писать
От: minorlogic Украина  
Дата: 30.04.11 12:34
Оценка: +1
Здравствуйте, vsb, Вы писали:

vsb>Как вы считаете, из за каких свойств языка разработчику приятно на нём писать. Что даёт fun?

...

Фан дает прикладная область , а ковыряние в языке ради языка это несколько незрело , что ли. И быстро надоест.
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re: Язык, на котором приятно писать
От: okman Беларусь https://searchinform.ru/
Дата: 30.04.11 13:40
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Как вы считаете, из за каких свойств языка разработчику приятно на нём писать. Что даёт fun?


Простота.
Re[2]: Язык, на котором приятно писать
От: hardcase Пират http://nemerle.org
Дата: 30.04.11 14:16
Оценка:
Здравствуйте, okman, Вы писали:

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


vsb>>Как вы считаете, из за каких свойств языка разработчику приятно на нём писать. Что даёт fun?


O>Простота.


В каком смысле? Для меня вот дает шанс наоборот сложность — сложность решаемых задач.
/* иЗвиНите зА неРовнЫй поЧерК */
Re: Язык, на котором приятно писать
От: MasterZiv СССР  
Дата: 30.04.11 18:53
Оценка: :))
On 04/29/2011 11:46 AM, vsb wrote:

> Как вы считаете, из за каких свойств языка разработчику приятно на нём писать.

> Что даёт fun? Процитирую кусок из этой статьи

Высокоинтеллектуальный, функциональный (во всех смыслах) язык и -- чтобы много
скобочек.
Posted via RSDN NNTP Server 2.1 beta
Re[3]: Язык, на котором приятно писать
От: okman Беларусь https://searchinform.ru/
Дата: 01.05.11 07:21
Оценка: +1 -1 :)
Здравствуйте, hardcase, Вы писали:

vsb>>>Как вы считаете, из за каких свойств языка разработчику приятно на нём писать. Что даёт fun?

O>>Простота.

H>В каком смысле? Для меня вот дает шанс наоборот сложность — сложность решаемых задач.


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

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

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

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

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


Ага. И именно по этому в мире есть куча на первый взгляд интересных вещей которые оказываются ни на что ни годны при тщательном рассмотрении. Фофаны (4fun-ы) обычно доводят дело до состояния когда ясно что оно может удастся и за тем бросают.

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

ЗЫ

Простите за скептицизм.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.05.11 20:35
Оценка:
Здравствуйте, Кодёнок, Вы писали:

Кё>Кобольщик, взяв современный С++, будет наверное безмерно счастлив,


Не факт. Может оказаться, что он просто не поймет новых концепций (парадокс Блаба никто не отменял).

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


Вот именно! Важно понимание и принятие концепций. Без этого "пробовать" можно хоть до посинения.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.05.11 20:37
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>Фан дает прикладная область , а ковыряние в языке ради языка это несколько незрело , что ли. И быстро надоест.


Если у человека прикладной областью являются языки, то почему бы ему не получать удовольствие от "ковыряния в языках"?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
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>Ценность любого высказывания нулевая, если оно до тебя не доходит.


Однако обратное неверно. Если ценность нулевая, далеко не факт, что оно не дошло.
Впрочем, в аргументах логику давно принято задвигать подальше.
Re[9]: Язык, на котором приятно писать
От: WolfHound  
Дата: 04.05.11 10:47
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Ты и Влад, как мне кажется, путаете разработчиков библиотек и их пользователей. Разработчиков мало, им нужен мощный язык. Пользователей большинство — им надо решать проблемы предметной области, то есть нужны конкретные (и удобные!) библиотеки.

Загони Nemerle.Peg в библиотеку...
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[10]: Язык, на котором приятно писать
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.05.11 10:54
Оценка:
Здравствуйте, VoidEx, Вы писали:

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


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

VE>Т.е. практически любая полезная деятельность выливается в повышение сложности решения.


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

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


VE>Разумеется.


Рад, что мы пришли к единому мнению.

VE>Только где грань между написанием инструмента и собственно решением?


Эта грань тонка и эфемерна. Более того только с опытом можно научиться ее четко улавливать.
Возможно что тут нужны научные исследования.

VE>Любой вспомогательный класс по сути есть улучшение инструмента.


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

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


Если задача находится за гранью сложности которую можно победить текущим инструментом, то влияет.
Другое дело, что без знания этого другого инструмента толку от него так же не будет.

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


VE>Но на более простом инструменте решение при этом не усложняется, и уж тем более не становится невозможным.


Мы пришли к тому с чего начали: "Сложность решения не может превышать более чем на порядок сложность инструмента" (c) IT
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Язык, на котором приятно писать
От: VoidEx  
Дата: 04.05.11 11:07
Оценка: +1
Здравствуйте, VladD2, Вы писали:

VD>Да.

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

Это не важно. Важно, что редко когда пишут просто решение, почти всегда на любом инструменте сначала создают более подходящий инструмент.

VE>>Только где грань между написанием инструмента и собственно решением?


VD>Эта грань тонка и эфемерна. Более того только с опытом можно научиться ее четко улавливать.


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

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


Я это и не оспаривал.
Re[9]: Язык, на котором приятно писать
От: IT Россия linq2db.com
Дата: 04.05.11 13:20
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Это не плоскогубцы и молоточки — это готовая рабочая среда, реализованная в виде качественных библиотек. В таком окружении могут комфортно работать даже непрограммисты (математики, физики).


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

N>Ты и Влад, как мне кажется, путаете разработчиков библиотек и их пользователей. Разработчиков мало, им нужен мощный язык. Пользователей большинство — им надо решать проблемы предметной области, то есть нужны конкретные (и удобные!) библиотеки.


Ты можешь провести чёткую грань между разработчиками библиотек и их пользователями?
Если нам не помогут, то мы тоже никого не пощадим.
Re[8]: Язык, на котором приятно писать
От: IT Россия linq2db.com
Дата: 04.05.11 13:33
Оценка: +1
Здравствуйте, VoidEx, Вы писали:

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


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


Вот и я о том же. Жаль только, что до многих такая простая мысль не доходит, приходится объяснять.

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


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


VE>Однако обратное неверно. Если ценность нулевая, далеко не факт, что оно не дошло.

VE>Впрочем, в аргументах логику давно принято задвигать подальше.

Ладно бы просто задвигали. Гораздо хуже, когда логика используется не по назначению, для демагогии, перевёртывания всего с ног на голову или чтобы сделать хорошую мину при плохой игре.
Если нам не помогут, то мы тоже никого не пощадим.
Re[4]: Язык, на котором приятно писать
От: jazzer Россия Skype: enerjazzer
Дата: 05.05.11 01:46
Оценка:
Здравствуйте, okman, Вы писали:

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

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

BASIC?
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[5]: Язык, на котором приятно писать
От: dudkin  
Дата: 05.05.11 01:59
Оценка:
Здравствуйте, jazzer, Вы писали:

J>BASIC?


РАПИРА

Проц Старт()
    Вывод 'Здравствуй, мир!'
Кон Проц
Re[10]: Язык, на котором приятно писать
От: vdimas Россия  
Дата: 05.05.11 02:13
Оценка: -1 :)
Здравствуйте, WolfHound, Вы писали:

N>>Ты и Влад, как мне кажется, путаете разработчиков библиотек и их пользователей. Разработчиков мало, им нужен мощный язык. Пользователей большинство — им надо решать проблемы предметной области, то есть нужны конкретные (и удобные!) библиотеки.

WH>Загони Nemerle.Peg в библиотеку...

Опять 25...
Ты реально сравнивал на нейтиве разницу, скажем, в работе табличных лексеров и кодогенеренных на switch/case? Там единицы процентов разница или ее нет вообще. При том, что первый вариант вполне себе библиотечный. По замерам, эффективность символьного буффера больше сказывается на производительности, чем техника исполнения парсера. Если заюзать unsafe под дотнетом (покатит для устанавливаемых локально библиотек и для click-once), то можно нивелировать тормоза выборки из дотнетных массивов. Потому как символьные буфера на дотнетных массивах (или не приведи господи на IEnumerable<char>) губят быстродействие парсера сразу в полтора-два раза. А без буферов никак, многогигабайтные лог-файлы в строку не загонишь.
Re[10]: Язык, на котором приятно писать
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 05.05.11 04:04
Оценка:
Здравствуйте, IT, Вы писали:

IT>Вообще-то и то и другое — это инструменты. Библиотечки, язычки, среды разработки — это как раз и есть плоскогубцы и молоточки программистов.


Мне эта аналогия ни о чём не говорит. Разве что употребление слова молоточки с уменьшительно-ласкательным суффиксом выдаёт некоторое пренебрежительное отношение к ним.

N>>Ты и Влад, как мне кажется, путаете разработчиков библиотек и их пользователей. Разработчиков мало, им нужен мощный язык. Пользователей большинство — им надо решать проблемы предметной области, то есть нужны конкретные (и удобные!) библиотеки.

IT>Ты можешь провести чёткую грань между разработчиками библиотек и их пользователями?

Да практически всегда. Взять любую стороннюю библиотеку: кто-то её пишет, а остальной мир использует. Если библиотека разрабатывается в самой конторе для внутренних нужд, то этим занимаются самые грамотные программисты (их немного), а остальные решают задачи прикладной области.

Мне кажется, что ты хочешь донести до меня мысль о необходимости разработки языка (или даже компилятора?) под каждую задачу?
Re[9]: Язык, на котором приятно писать
От: VoidEx  
Дата: 05.05.11 06:24
Оценка:
Здравствуйте, IT, Вы писали:

IT>Вот и я о том же. Жаль только, что до многих такая простая мысль не доходит, приходится объяснять.


Это-то ладно, некоторые вообще сию мысль гениальной считают. Вот где беда.

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


Ой и не говори!
Re[11]: Язык, на котором приятно писать
От: IT Россия linq2db.com
Дата: 05.05.11 13:36
Оценка:
Здравствуйте, Nuzhny, Вы писали:

IT>>Вообще-то и то и другое — это инструменты. Библиотечки, язычки, среды разработки — это как раз и есть плоскогубцы и молоточки программистов.

N>Мне эта аналогия ни о чём не говорит. Разве что употребление слова молоточки с уменьшительно-ласкательным суффиксом выдаёт некоторое пренебрежительное отношение к ним.

Попробуй реагировать не только на уменьшительно-ласкательные суффиксы, но, например, на слова вроде 'инструменты'.

IT>>Ты можешь провести чёткую грань между разработчиками библиотек и их пользователями?


N>Да практически всегда. Взять любую стороннюю библиотеку: кто-то её пишет, а остальной мир использует. Если библиотека разрабатывается в самой конторе для внутренних нужд, то этим занимаются самые грамотные программисты (их немного), а остальные решают задачи прикладной области.


Как раз вот такое разделение на 'самых грамотных' и остальных и приводит чаще всего к созданию редкостных уродцев. Но это тема другого разговора.

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

N>Мне кажется, что ты хочешь донести до меня мысль о необходимости разработки языка (или даже компилятора?) под каждую задачу?


Я хочу донести мысль, что под каждую задачу нужно выбирать наиболее подходящий инструмент.
Если нам не помогут, то мы тоже никого не пощадим.
Re[10]: Язык, на котором приятно писать
От: IT Россия linq2db.com
Дата: 05.05.11 14:13
Оценка: -1 :))
Здравствуйте, VoidEx, Вы писали:

IT>>Вот и я о том же. Жаль только, что до многих такая простая мысль не доходит, приходится объяснять.

VE>Это-то ладно, некоторые вообще сию мысль гениальной считают. Вот где беда.

Да это тоже не беда. Гораздо хуже, когда ни своих мыслей нет, ни чужие за мысли не считаются.
Если нам не помогут, то мы тоже никого не пощадим.
Re[3]: Язык, на котором приятно писать
От: alexeiz  
Дата: 06.05.11 03:50
Оценка:
Здравствуйте, VoidEx, Вы писали:

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


VE>Алсо, опыт с курицами показывает, что они охотнее клюют кнопку, выдающее одно зерно за каждое нажатие, нежели кнопку, которая выдает 10 зёрен, но после 5 нажатий. Т.е. время до получения положительного подкрепления критично.


Тупые курицы считать не умеют. Поставьте туда дельфинов, и пусть они в кнопки клюют
Re[12]: Язык, на котором приятно писать
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 06.05.11 05:17
Оценка:
Здравствуйте, IT, Вы писали:

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


Нет, конечно.


IT>Я хочу донести мысль, что под каждую задачу нужно выбирать наиболее подходящий инструмент.


Нет, ты говоришь, что с помощью функций и классов нельзя удобно и полно представить предметную область, называешь их "полезняшками" (и опять пренебрежительное отношение!). Я, пожалуй, процитирую:

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

IT>То, о чём ты говоришь, это полезняшки, инструменты уровня пласкогубцев и молоточков.

Я не согласен и привожу примеры из сложной области — математики. Решение — Матлаб. Мощные языки не дают практически никакого выигрыша на таких задач, они ничего не могут поделать со сложностью предметной области. Математика тут идеальный пример: многие её уравнения и теоремы выглядят просто и компактно, но очень сложны для понимания.
Все метаязыки позволяют бороться лишь с громоздкостью представления задачи, решают по сути рутинные задачи и только.
Re: Язык, на котором приятно писать
От: c-smile Канада http://terrainformatica.com
Дата: 06.05.11 05:32
Оценка:
Здравствуйте, vsb, Вы писали:

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