Здравствуйте, Ziaw, Вы писали:
G>>Понятно. Менеджеры во всем виновыты. У них иррациональные страхи. Как это знакомо .
Z>Я этого не говорил. Видимо тебе просто захотелось это услышать.
Не, не хочется. Я специально и вполне сознательно утрирую.
С вполне определенной и позитивной целью, кстати. Утрируя, я пытаюсь расширить границы твоего воображения, потому, что мне нравится, как ты отвечаешь — оно, воображение, у тебя есть. Показав, очертив эти границы жирной линией.
Так как это выстрел наощупь, возможно, он ушел в молоко. А может быть, и нет. Тебе совершенно необязательно давать мне это понять.
Re[12]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, Ziaw, Вы писали:
G>>Обычная логика говорит мне, что если бы этот код состоял из конструкций самоделкина, в котором я ищу ошибку, то доверять в нем нельзя ни единому слову. Например, LessThan может на деле в ряде ситуаций означать LesserOrEqual, или того хуже.
Z>Итак, проблема все таки не в DSL, а в самоделкине? Так с этим я и не спорил.
Не-не, ты не до конца понимаешь. Проблема в языке, написанном самоделкиным. А не в самом самоделкине.
Дело в том, что для общеизвестных языков есть:
1) Какой-никакой стандарт языка. Де-факто, либо публичный, либо таки стандарт.
2) Следующая из этого — стабильность языка. Ты знаешь, что пока ты его изучаешь — никакой самоделкин, проявляя свою свободу воли, его просто так не поменяет, так, что у тебя нахрен все отвалится. То есть, что твои инвестиции в образование (а к изучению нового языка следует относится именно так) — имеют небольшой риск, и прибыльны (то есть, знания языка имеют некоторую ценность за пределами одной системы и компании).
3) Я сказал про инвестиции не зря. Потерянные деньги можно обратно заработать или отыграть. А потраченное время вернуть нельзя. Время — самая ценная валюта, глупо тратить его на ерунду.
4) Следующая из (2) — наличие учебников.
5) Следующее из (2) — надежда на определенное качество платформы, она закрыта тестами.
6) И the last but not least — наличие широкого сообщества в сети и в реальной жизни, в котором ты не только можешь задать вопрос, но и получить на него содержательный ответ.
Много это, или мало? А неважно.
Главное, что всего этого ты лишен, контактируя с мега-DSL за авторством самоделкина.
G>>Чтобы ты прочувствовал, насколько это много — скажи мне, что тебе говорит вот этот код: G>>Нет, это вовсе не язык непонятный. И программа вполне хорошо написана. Единственная проблема в том, что ты (скорее всего) читать его не умеешь — не надо путать это собственным невладением языком. Однако, эта проблема довольно просто решается — по J все-таки есть "учебники".
Z>Да, даже зная синтаксис я тут скорее всего ничего не пойму. Надо понимать, как такие программы пишутся, какие приемы используются. Знание синтаксиса не приблизит меня к пониманию ни на йоту. Вывод какой?
J есть наследник APL (который был с греческими символами, не ложащимися на ASCII-клавиатуру), и это так называемый комбинаторный язык. Все очень просто, просто очень необычно. Проверишь? Я не обманываю.
Z>>>Несмотря на синтаксис C#, это обычный DSL. Чтобы его читать важнее знать домены (измерение времени и тестирование), чем ломать голову над вопросами неоднозначности синтаксиса:
G>>Неужели? А вот это самый обычный JavaScript, а конкретнее — вполне обычная библиотека should.js. Выглядит куда приличнее, чем "обычный DSL". Никаких таких "доменов" знать не надо — на, полюбопытствуй.
Z>Как это не надо? Я сходу не понимаю, что делает этот код, хотя чтение JS для меня не является проблемой. Надо знать область применения этой штуки и термины принятые там, то есть домен. Предположив, что это тестирование, я могу начать догадываться о смысле кода. И да, это DSL, вполне обычный, а не какой-то особо приличный.
Область ровно та же, что у кода, который ты мне привел в начале . И это, конечно, никакой не DSL. Это один из самых популярных assert-фреймворков для JS. Гражданский JS, выглядящий только на первый взгляд необычно. Любой человек, знающий JS, способен написать его исходник, глядя на пример кода. Т.е. понять, как он устроен внутри.
А все почему? Потому, что это обычный JS. Никакой не DSL.
Re[18]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, WolfHound, Вы писали:
WH>>>Ага... он настолько жив, что яха его даже продать не смогла. Хотя пыталась... G>>Ага. И по-твоему, если бы он был написан на LISP, то был бы гораздо живее, да? WH>Не переводи стрелки. Тут пытаются втирать, что проект жив. А это не правда. WH>Он еще трепыхается по тому, что в его названии есть слово яха. Без него он сдохнет сразу. Поэтому его никто и не купил.
Жив он или не мертв сейчас, причина по любому не в языке, на котором он написан, дружище.
Re[19]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, Gaperton, Вы писали:
G>>А если принять во внимание легкое отношение к дсл местной аудитории — в нем будет просто дохрена багов и кривой семантики. Ты обладаешь ментальным сканированием? Ты можешь знать, что этому марсианину показалось логичным? Книг он на эту тему не писал — западло. WH>Ты тут вещаешь про проблемы с общением у авторов ДСЛ. А из тебя самого адекватность прямо так и прет...
Не "вещаю", а говорю.
WH>Людей, про которых ты ничего не знаешь, марсианами обозвал...
Я здесь говорю не про конкретных людей, а вообще, это из построения фраз понятно. Для примера.
Ты мне что-то про адекватность говоришь, да? Не воспринимай лично то, что лично (к тебе) даже задумано не было, для начала. Потом рассказывай мне про адекватность.
Впрочем, дыма-то без огня не бывает, да?
WH>А потом удивляешься, почему эти люди посылают тебя.
Кто это и где меня посылает? Извини, не приметил пока. Кажется, за такое у нас на форуме положен бан, да, дружище с правами модератора?
WH> И, конечно же, приходишь к выводу, что проблема в этих людях. Ибо такой великий специалист по пониманию мотивов людей не прав быть не может.
Сразу видно — ты небольшой специалист в понимании мотивов людей .
Re[12]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
А вообще, прикольно . Весь твой пост посвящен обсуждению моей личности .
Так забавно. Ну никак не можешь ты удержать себя в технически рамках, хотя, казалось бы, такой крупный специалист . А все больше такой мелочью интересуешься, как эфемерная виртуальная личность Гапертона, у которого даже профиля гордого на русском языке нет .
Re[13]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Был исходный тезис: использование DSL не добавляет новых проблем по сравнению с использованием сложных библиотек.
Читабельность кода для человека формируется двумя факторами:
1. известностью понятий используемых в коде
2. совпадаемостью системы кодирования понятий с системой кодирования, используемой читающим
Ты же для опровержения исходного тезиса приводишь пример плохих DSL-ей, которые нарушают оба этих пункта, а библиотеки берешь наоборот хорошие, те которые эти пункты не нарушают.
Но почему ты рассматриваешь только такие варианты? и не рассматриваешь пример библиотек, нарушающих эти факторы, и пример DSL, которые эти факторы не нарушают?
G>А все почему? Потому, что это обычный JS. Никакой не DSL.
я думаю не очень, потому что в нем нарушен один из вышеуказанных факторов.
а вот этот DSL ты скорее всего поймешь
var user = {
name: 'tj'
, pets: ['tobi', 'loki', 'jane', 'bandit']
};
user should have property ['name', 'tj'];
user should have property 'pets'
with length of(4);
someAsyncTask(foo,
(err, result) =>
{
should not exist err;
should exist result;
result.bar should equal foo;
}
);
Re[14]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, DarkGray, Вы писали:
DG>а вот этот DSL ты скорее всего поймешь DG>
DG>var user = {
DG> name: 'tj'
DG> , pets: ['tobi', 'loki', 'jane', 'bandit']
DG>};
DG>user should have property ['name', 'tj'];
DG>user should have property 'pets'
DG> with length of(4);
DG>someAsyncTask(foo,
DG> (err, result) =>
DG> {
DG> should not exist err;
DG> should exist result;
DG> result.bar should equal foo;
DG> }
DG>);
DG>
Не, не пойму. Потому, что это — типичный DSL самоделкина, за который надо отрубать руки. С налетом CoffyScript, причем не по делу и на ровном месте, что усугубляет. Понятно одно — автору по какой-то причине не нравится plain.js (или он его элементарно не знает), и он пишет на ровном месте, где полагается быть ровному коду, непонятную хрень.
По хорошему, с ним бы поступить, как американцы поступают с выпившими за рулем. Для начала отобрать права на написание кода на полгода, и записать на принудительные курсы анонимных алкоголиков, где непонятливым объясняют элементарное лекций двадцать. А если повторно — то посадить на пятнадцать суток. На третий раз американская юстиция наказывает уже реально строго — правило трех ударов.
Жаль, что прав на написание кода не выдают. С отпечатками пальцев тех самых рук, которые надо отрубать.
Здравствуйте, Gaperton, Вы писали:
G>...Началось все с того, что они честно попытались развивать все на LISP. Однако, Грэхем не смог донести до команды прелесть своего ДСЛ, и в результате легко вошел в конфликт с командой, и обозвал их идиотами. Эти самородки — они так, гхм, нетерпеливы, и резки, да. Особенно когда становятся успешными мультимиллионерами...
Обожаю читать плоды твоих телепатических способностей твоей фантазии. Живо, убедительно и красочно! Жаль только с реальностью имеет мало общего.
Реальность же была несколько банальнее. Viaweb был куплен за ~46 лимонов баксов в 1996 году. Ту часть которая была написана на Лиспе переписали на С++ только в 2003 году. То есть 7 лет проект жил на лиспе.
(a) The reason they rewrote it was entirely that the current engineers didn't understand Lisp and were too
afraid to learn it.
(b) The resulting program is a new world's record case
of Greenspun's Tenth Rule. The Yahoo Store Editor called
compile at runtime on s-expressions made on the fly.
To translate this into C++ they literally had to write a
Lisp interpreter.
(c) Even then, they had to drop some features (involving
advanced uses of closures).
Другими словами основной причиной явился сам Лисп и его незнание работниками Яху.
Так что тренируй телепатор лучше.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[24]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, Gaperton, Вы писали:
G>А Грэхем, уволившись, пишет книжки про нереальный личный success story. Которыми вдохносляется молодежь. Пионер — это ж не возраст, он же молод душой, и характерен своей инфантильностью. Аудитория огромна.
Дык, когда у тебя кто-то купит проект за 46 миллионов баксов, то ты сможешь писать историю успеха, а не кусачие сообщения на форумах.
Если бы в то же время были другие продукты делающие тоже самое, то возможно с ним можно было бы поспорить. Но в 1996-ом таких не нашлось. И судя по тому, что Яху стал переписывать все сам таковых не нашлось и через 5 лет.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, Gaperton, Вы писали:
G>Я еще не видел темы, в которой программисты не разбирались бы лучше всех . А уж в бизнесе — ваще. Программист сказал — сдох, зачит — сдох .
Тот, написанный на С++ и Перле, сдох. "Yahoo! Small Business" это совсем другой продукт. Если не ошибаюсь написан в основном на Яве Яваскрипте. И на сегодня не имеет ничего выдающегося. Аналогичных сервисов хватает. 1996-ом ViaWeb был уникален и прожил сильно дольше своего С++-анлога.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[24]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, Ziaw, Вы писали:
Z>Это частная проблема завязаности на неадекватного гения, а не DSL в общем.
У тебя есть особенность принимать на веру демагогию. Ты бы для начала узнал бы что Гапертон говорит правду, а не выдумывает. А то ведь и гений вполне адекватным может оказаться, и проблемы особой может не быть.
Реальность банальна. Пришла новая метла и стала мести по своему. Приняли глупейшее решение — переписать программу с Лиспа на С++. Результат оказался печальным. Потом спохватились и переписали все еще раз (вроде как на Яве).
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, Gaperton, Вы писали:
G>Не, не пойму. Потому, что это — типичный DSL самоделкина, за который надо отрубать руки. С налетом CoffyScript, причем не по делу и на ровном месте, что усугубляет. Понятно одно — автору по какой-то причине не нравится plain.js (или он его элементарно не знает), и он пишет на ровном месте, где полагается быть ровному коду, непонятную хрень.
А если это будет не налет, а обычный CoffeeScript? Который, вполне заточен под подобные DSL. Его использование тоже будет продиктовано незнанием plain.js?
G>А вот should.js понять элементарно, потому, что это, во-первых G>a) это plain JS, и, во-вторых... G>b) ...should is an expressive, readable, test framework agnostic, assertion library for node. А не какой-то там DSL от самоделкина.
Это именно DSL от самоделкина. Причем этот самоделкин создает как раз языки.
Я регулярно сталкиваюсь с подобными, вполне приличными DSL от самоделкиных. Достаточно документированными и понятными, в существование которых истово не верит Мамут.
Re[25]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, VladD2, Вы писали:
Z>>Это частная проблема завязаности на неадекватного гения, а не DSL в общем.
VD>У тебя есть особенность принимать на веру демагогию. Ты бы для начала узнал бы что Гапертон говорит правду, а не выдумывает. А то ведь и гений вполне адекватным может оказаться, и проблемы особой может не быть.
Конкретный случай в данной ситуации не так важен. Проблема есть, да. К сожалению она есть всегда, когда ПМ не в состоянии, в крайнем случае, сам все быстренько починить или объяснить как это сделать. В этой ситуации он теряет контроль над ситуацией, а этого никто не любит. Его понять можно и нужно, нам с ним работать. Я встречал грамотных программистов, но про грамотных ПМ я только книжки читал, так уж повезло. Обычные люди со своими головняками, их редко похвалят, если проект будет сделан в два раза быстрее, чем мог бы в теории. Зато им прищемят яйца за отклонение от плана, даже если этот план изначально предполагал экономию ресурсов в десять раз, по сравнению с другим, менее рисковым. Смысла рисковать яйцами у них нет, потому и рулить менее рисковым проектом они предпочтут всегда. То есть для них любая обкатанная технология вполне объективно лучше.
VD>Реальность банальна. Пришла новая метла и стала мести по своему. Приняли глупейшее решение — переписать программу с Лиспа на С++. Результат оказался печальным. Потом спохватились и переписали все еще раз (вроде как на Яве).
Вполне вероятно. Таких примеров масса.
Re[23]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, Gaperton, Вы писали:
G>Метакод — он такой. Он дает "избранным" очень много власти. Слишком. И это очень нехорошо и опасно, когда такая власть оказывается в руках человека с ментальностью ребенка.
Так проблема в том, что у тебя отбирают власть?
Если нам не помогут, то мы тоже никого не пощадим.
Re[25]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, Gaperton, Вы писали:
G>Я здесь говорю не про конкретных людей, а вообще, это из построения фраз понятно. Для примера.
Другими словами обкакать неопределенный круг людей для тебя нормально.
G>Ты мне что-то про адекватность говоришь, да? Не воспринимай лично то, что лично (к тебе) даже задумано не было, для начала. Потом рассказывай мне про адекватность.
А откуда ты выдумал, что я воспринял это лично?
G>Кто это и где меня посылает? Извини, не приметил пока. Кажется, за такое у нас на форуме положен бан, да, дружище с правами модератора?
Ты очень хорошо знаешь, как можно послать, не нарушая правил.
G>Сразу видно — ты небольшой специалист в понимании мотивов людей .
Ты действительно думаешь, что понять мотивы человека, который бегает по интернету и поливает грязью неопределенный круг людей сложно?
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[13]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, Gaperton, Вы писали:
G>Так забавно. Ну никак не можешь ты удержать себя в технически рамках,
Покажи в своих сообщениях хоть одну букву на техническую тему...
Их там нет. Ни одной. Все что ты можешь это поливать грязью всех подряд.
А когда разговор действительно переходит в техническую плоскость, ты сливаешь в 100% случаев.
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[16]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
Здравствуйте, VladD2, Вы писали:
G>>Я еще не видел темы, в которой программисты не разбирались бы лучше всех . А уж в бизнесе — ваще. Программист сказал — сдох, зачит — сдох .
VD>Тот, написанный на С++ и Перле, сдох. "Yahoo! Small Business" это совсем другой продукт. Если не ошибаюсь написан в основном на Яве Яваскрипте. И на сегодня не имеет ничего выдающегося. Аналогичных сервисов хватает. 1996-ом ViaWeb был уникален и прожил сильно дольше своего С++-анлога.
Влад. Совершенно не важно, на чем он написан. Дело не в этом.