Здравствуйте, thesz, Вы писали:
T>Тут мы сделали перенос строки из-за длинной строки, там мы его сделали... Перед компиляцией не всю (под)программу просмотрели — на запуск ушёл неправильный код. Начали искать ошибку — надо больше текста просмотреть. И тд, и тп.
Детский сад.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, thesz, Вы писали:
T>Зачем, вообще, такое количество ЯП?
У всех существующих языков есть один фатальный недостаток: их делали не мы.
Со всеми вытекающими разнообразными последствиями от невозможности встроить фичу, которая нужна именно нам, до невозможности зарабатывания денег на средствах разработки и невозможности привязывания изрядной доли программистов к конкретной платформе.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
T>>Тут мы сделали перенос строки из-за длинной строки, там мы его сделали... Перед компиляцией не всю (под)программу просмотрели — на запуск ушёл неправильный код. Начали искать ошибку — надо больше текста просмотреть. И тд, и тп. E>Детский сад.
Японцы именно так и улучшают свои автомобили — тут процент, там процент, ещё процент в этом месте...
Работает.
И называется это не только "детский сад", а ещё "крохоборство", "перфекционизм" или "интравертность" — на выбор.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
T>>Зачем, вообще, такое количество ЯП? E>У всех существующих языков есть один фатальный недостаток: их делали не мы. E>Со всеми вытекающими разнообразными последствиями от невозможности встроить фичу, которая нужна именно нам, до невозможности зарабатывания денег на средствах разработки и невозможности привязывания изрядной доли программистов к конкретной платформе.
Это как-то отменяет тезис о неравномощности ЯП?
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Здравствуйте, eao197, Вы писали:
T>>Тут мы сделали перенос строки из-за длинной строки, там мы его сделали... Перед компиляцией не всю (под)программу просмотрели — на запуск ушёл неправильный код. Начали искать ошибку — надо больше текста просмотреть. И тд, и тп.
E>Детский сад.
Это так кажется. Я вот листаю ява код с кучей геттеров и сеттеров. Каждый — 5 строк — объявление, открывающаяся-закрывающаяся скобки, собственно код, да строка между методами. Экран весь забит, и я вынужден пользоваться навигацией, которую мне предлагает IDE постоянно. Такого неприятного ощущения при работе с более лаконичными языками нет.
Здравствуйте, thesz, Вы писали:
T>>>Зачем, вообще, такое количество ЯП? E>>У всех существующих языков есть один фатальный недостаток: их делали не мы. E>>Со всеми вытекающими разнообразными последствиями от невозможности встроить фичу, которая нужна именно нам, до невозможности зарабатывания денег на средствах разработки и невозможности привязывания изрядной доли программистов к конкретной платформе.
T>Это как-то отменяет тезис о неравномощности ЯП?
Тезиз о неравномощности ЯП очень косвенно соотносится с причинами возникновения и исчезновения большого количества ЯП. Поэтому неправомочно привлекать этот вопрос к обоснованию данного тезиса.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
E>>>Со всеми вытекающими разнообразными последствиями от невозможности встроить фичу, которая нужна именно нам, до невозможности зарабатывания денег на средствах разработки и невозможности привязывания изрядной доли программистов к конкретной платформе. T>>Это как-то отменяет тезис о неравномощности ЯП? E>Тезиз о неравномощности ЯП очень косвенно соотносится с причинами возникновения и исчезновения большого количества ЯП. Поэтому неправомочно привлекать этот вопрос к обоснованию данного тезиса.
Я настолько удивился, что у меня даже уши к макушке подтянулись.
Вот почему именно "Тезиз о неравномощности ЯП очень косвенно соотносится с причинами возникновения и исчезновения большого количества ЯП"? Ведь даже твоё высказывание его подтверждает, хоть и всего в одном из трёх твоих тезисов.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Здравствуйте, VladD2, Вы писали:
VD>3. F# очень плохо интегрируется с основой платформой так как его система типов (основанная на Хидли-Милере) сильно отличается от системы типов дотнета.
Можно примеры плохой интеграции? А то мне что-то не встречалось такое.
Здравствуйте, VladD2, Вы писали:
VD>Дык разница между синтаксисом и семантикой С и Паскаля очень незначительная. Разница фактически описывается примитивными подстановками. А вот разница с ОКамлом получается очень значительная.
Угу приличная, но база того же Ocaml'а (без объектов) по сути простой не сложнее паскаля язык.
VD>Мои наблюдения за людьми которые изучали F# и Немерле показали, что Немерле ими воспринимался намного проще и быстрее. Более того после знакомства с Немерле F# воспринимался уже намного проще, так как разница действительно оказывалась же почти в одном синтаксисе.
Угу и потом эти люди пишут страшный код на Немерли функциональщины в котором свершенно не наблюдается.
VD>Так что можно утверждать, что сложность имеет тенденцию к складыванию. И когда мы имеем незнакомый синтаксис и незнакомую парадигму, то обучение резко усложняется.
Не так уж резко.
VD>>>В случае скажем Хаскля или ОКамла человек вынужден сильно и одномоментно ломать свое сознание.
FR>>В случае OCaml'а сознание практически не ломается, а хаскель как я понимаю требует такой ломки, например я в нем "все понимаю но разговаривать не могу"
VD>Сдается мне, что ОКамл ты знаешь так же как и Хаскель.
Здравствуй Влад, я уже давно пишу небольшие свои проектики на Ocaml'е, единственное не использую объекты за ненадобностью. Я легко могу писать на Хаскеле как на фортране, тьфу как на Ocaml'е но смысла в этом не вижу.
VD>Так как языки фактически имеют общую базу. Отличие Хаскеля в незначительном синтаксическом различии, классах типов вместо привычного ООП и в ленивости. Это не так много, чтобы хорошо понимать дин язык и совсем плавать в другом.
Здравствуйте, thesz, Вы писали:
T>Я настолько удивился, что у меня даже уши к макушке подтянулись.
Ну я не настолько развит физически, как ты, поэтому так у меня не получается
T>Вот почему именно "Тезиз о неравномощности ЯП очень косвенно соотносится с причинами возникновения и исчезновения большого количества ЯП"? Ведь даже твоё высказывание его подтверждает, хоть и всего в одном из трёх твоих тезисов.
Потому, что причин, толкающих людей на создание своих языков очень много. И вопрос мощности языка там всего лишь один из. Имхо, далеко не самый важный. Например, вопрос удобства для решения задач автора языка мне представляется гораздо более серьезным. Языки C, C++, Perl, Ruby, Java вряд ли были самыми мощными (с точки зрения языковых возможностей на тот момент), тем не менее, точком к их созданию явилось желание иметь удобный инструмент, необходимый авторам здесь и сейчас.
Если я не ошибаюсь, то история появления самого Haskell-я как раз является показателем того, как личные амбиции и коммерческие интересы явились точком к появлению Haskell-я. Если бы людей интересовало только мощность ЯП, то развитие получила бы Miranda.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, VladD2, Вы писали:
FR>>Просто, в отличии от поклоников Немерле или Оберона, он совершенно неагрессивен
VD>Ага примерно так же как поклонники Питона пишущие на С++.
Здравствуйте, thesz, Вы писали:
VD>>>Да хоть разок. А то вот только сейчас ты сказал, что не всегда согласен с вышеупомянутым товарищем. А так казалось, что он просто громче других, но все остальные с ним согласны по всем пунктам.
FR>>Просто, в отличии от поклоников Немерле или Оберона, он совершенно неагрессивен
T>Это вы про меня, что ли? Я нить утерял.
T>>Я настолько удивился, что у меня даже уши к макушке подтянулись. E>Ну я не настолько развит физически, как ты, поэтому так у меня не получается
Мышцы-стабилизаторы ушей, развиваются приседаниями на ушах.
T>>Вот почему именно "Тезиз о неравномощности ЯП очень косвенно соотносится с причинами возникновения и исчезновения большого количества ЯП"? Ведь даже твоё высказывание его подтверждает, хоть и всего в одном из трёх твоих тезисов. E>Потому, что причин, толкающих людей на создание своих языков очень много. И вопрос мощности языка там всего лишь один из. Имхо, далеко не самый важный.
Сейчас проверим.
E>Например, вопрос удобства для решения задач автора языка мне представляется гораздо более серьезным.
Что это, как не мощность?
E>Языки C, C++, Perl, Ruby, Java вряд ли были самыми мощными (с точки зрения языковых возможностей на тот момент), тем не менее, точком к их созданию явилось желание иметь удобный инструмент, необходимый авторам здесь и сейчас.
А это разве не мощность?
E>Если я не ошибаюсь, то история появления самого Haskell-я как раз является показателем того, как личные амбиции и коммерческие интересы явились точком к появлению Haskell-я. Если бы людей интересовало только мощность ЯП, то развитие получила бы Miranda.
Просто Миранда оказалась недостаточно мощной.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Здравствуйте, thesz, Вы писали:
E>>Например, вопрос удобства для решения задач автора языка мне представляется гораздо более серьезным.
T>Что это, как не мощность?
E>>Языки C, C++, Perl, Ruby, Java вряд ли были самыми мощными (с точки зрения языковых возможностей на тот момент), тем не менее, точком к их созданию явилось желание иметь удобный инструмент, необходимый авторам здесь и сейчас.
T>А это разве не мощность?
Имхо, в контексте данного обсуждения, не мощность. Мощность -- это, например, поддержка вывода типов, ленивых вычислений, алгебраических типов, сопоставления с образцом и, сюда же можно включить симпатичные тебе зависимые типы. Удобство -- это когда кто-то предпочитает begin/end фигурным скобочкам или наоборот
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
E>>>Языки C, C++, Perl, Ruby, Java вряд ли были самыми мощными (с точки зрения языковых возможностей на тот момент), тем не менее, точком к их созданию явилось желание иметь удобный инструмент, необходимый авторам здесь и сейчас. T>>А это разве не мощность? E>Имхо, в контексте данного обсуждения, не мощность. Мощность -- это, например, поддержка вывода типов, ленивых вычислений, алгебраических типов, сопоставления с образцом и, сюда же можно включить симпатичные тебе зависимые типы. Удобство -- это когда кто-то предпочитает begin/end фигурным скобочкам или наоборот
I beg to differ.
Мощность языка по Гапертону — у него в ЖЖ это было, — это возведённое в квадрат мозговое напряжение, необходимое при работе с языком, делённое на сопротивление языка.
Как я понимаю, зависит от области применения. Вне которой либо увеличивается мозговое напряжение, либо сопротивление языка.
Оно смешно, конечно, но более или менее верно.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
VD>Сдается мне, что ОКамл ты знаешь так же как и Хаскель. Так как языки фактически имеют общую базу. Отличие Хаскеля в незначительном синтаксическом различии, классах типов вместо привычного ООП и в ленивости. Это не так много, чтобы хорошо понимать дин язык и совсем плавать в другом.
We all yet to see your article entitled like "Хаскель, как шаг к теории типов", ага.
Уж коли ты так хорошо во всём разобрался.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
MZ>Если ещё не позно, и нужно, я бы сказал ещё, что хорошо бы после введения MZ>в чистые функции упомянуть, что весь функциональный мир делится на MZ>две категории: кто ЗА чистые функции, и кто НЕ ЗА (а даже наоборот, против), MZ>и, что главное, нечистота функций ничуть не мешает применять те достоинства ФП, MZ>о которых идёт речь в статье, а мешает лишь только произвольному MZ>распараллеливанию вычислений в произвольном месте.
А ещё мешают поддержке программ и создают проблемы с типизацией. Доказательство правильности алгоритма вывода типов ML со ссылками проводится отдельно, если что.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Здравствуйте, nikov, Вы писали:
VD>>F# очень плохо интегрируется с основой платформой так как его система типов (основанная на Хидли-Милере) сильно отличается от системы типов дотнета. N>Можно примеры плохой интеграции? А то мне что-то не встречалось такое.
thesz пишет:
> А ещё мешают поддержке программ и создают проблемы с типизацией. > Доказательство правильности алгоритма вывода типов ML со ссылками > проводится отдельно, если что.
Я это к тому, что C# — далеко не чистый функциональный язык, и
вообще-то странно расписать достоинства ЧФП, а потом излагать
что-то про ФП на C#. Надо было написать, что это не очень и страшно.
Т.е. страшно или нет — дело десятое, а есть два подхода.