Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)schiпропущено... Чем дальше в лес, тем толще партизаны. У тебя хоть один аргумент есть, кроме феерических заявлений ? посмотри вокруг, вспомни детские болезни, почитай как он создавался и менялся с самого начала язык, созданный как костылёк, на краткосрочную задачу PS: считаешь что это не так? Я, с твоего позволения, Таненбаума процитирую, с мнением которого я согласен, так как имел дело с обоими описываемыми языками: "Полезно взглянуть на два языка программирования - PL/1 и C. Язык PL/1 был разработан корпорацией IBM в 60-ые годы, так как поддерживать одновременно FORTRAN и COBOL и слушать при этом ворчание ученых о том, что Algol лучше, чем FORTRAN и COBOL, вместе взятые, было невыносимо. Поэтому был создан комитет для создания нового языка, удовлетворяющего запросам всех программистов: PL/1. Этот язык обладал некоторыми чертами языка FORTRAN, некоторыми особенностями языка COBOL и некоторыми свойствами языка Algol. Проект потерпел неудачу, потому что ему недоставало единой концепции. Проект представлял собой лишь набор свойств, конфликтующих друг с другом, к тому же язык PL/1 был слишком громоздким и неуклюжим, чтобы программы на нем можно было эффективно компилировать. Теперь взглянем на язык С. Он был спроектирован всего одним человеком (Деннисом Ритчи) для единственной цели (системного программирования). Успех его был колоссален, и это не в последнюю очередь объяснялось тем, что Ритчи знал, чего хотел и чего не хотел. В результате спустя десятилетия после своего появления этот язык все еще широко распространен. Наличе четкого представления о своих целях является решающим." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 13:54 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
schi, насчёт "неудачи" PL/1 - это скорее неудача платформы 360/370/.... а на чём там ещё писать было? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 14:30 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Читал статью Дмитрия Донского (один из авторов шахматной программы "Каисса"). Его коллега в беседе о достоинствах и недостатках PL/I сказал, что писать на этом языке легко и приятно, если понимаешь, в какие машинные команды будут транслированы инструкции языка. Донской согласился, но не стал относить это свойство к достоинствам языка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 16:59 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Изопропилschi, насчёт "неудачи" PL/1 - это скорее неудача платформы 360/370/.... а на чём там ещё писать было? Там можно было писать дофига на чем. Даже на Паскале и внезапно на С ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 17:23 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
schiИзопропилschi, насчёт "неудачи" PL/1 - это скорее неудача платформы 360/370/.... а на чём там ещё писать было? Там можно было писать дофига на чем. Даже на Паскале и внезапно на С я не о студентах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 17:47 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
schiТеперь взглянем на язык С. Он был спроектирован всего одним человеком (Деннисом Ритчи) для единственной цели (системного программирования). Успех его был колоссален, и это не в последнюю очередь объяснялось тем, что Ритчи знал, чего хотел и чего не хотел. В результате спустя десятилетия после своего появления этот язык все еще широко распространен. Наличе четкого представления о своих целях является решающим." Ога...., проектировал он..., видел цель..., лепил всё подряд лишь бы закрыть дыры в архитектуре. Чистый "бац-бац и в продакшн" То что он написал и то, что получилось в итоге - совершенно разные языки. Я реализовывал спецификацию препроцессора - чудовищное издевательство над логикой. Например, препроцессор Fasm-а в этом плане куда логичнее, стройнее и гибче при меньших трудозатратах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 17:51 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyWhite Owlпропущено... В математическом смысле, лямбда-исчисление это синтаксис описывающий манипулирование лямбда-терминами. То что введено в С++, это всего-лишь попытка добавить "анонимную форму". Но лямбды там нету даже близко. Ну так напишите, чего из настоящих лямбд не хватает в С++-ных лямбдах. А то создается впечатление что вы с лямбдами в С++ знакомы также как с исключениями, на уровне слышал звон да не знаю где он )))Анатолий, давайте не будем опускаться до наездов. В С++-ных лямбдах, мне не хватает самих лямбд. Еще раз повторю: лямбда исчисление это синтаксис. Не больше и не меньше. Это даже не принцип обработки данных, это все-лишь принцип описания обработки данных. Функционально, если ты хочешь использовать каррирования, альфа-бета-эта-редукцию и разные другие страшные слова, то их можно использовать на любом языке в котором есть понятие функции. Даже на столь не любимом вами Си, даже на FoxPro, sh, javascript и <подставь язык по вкусу>. На любом! Но если ты хочешь писать на лямбдах, то и пиши на них: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 17:56 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)schiТеперь взглянем на язык С. Он был спроектирован всего одним человеком (Деннисом Ритчи) для единственной цели (системного программирования). Успех его был колоссален, и это не в последнюю очередь объяснялось тем, что Ритчи знал, чего хотел и чего не хотел. В результате спустя десятилетия после своего появления этот язык все еще широко распространен. Наличе четкого представления о своих целях является решающим." Ога...., проектировал он..., видел цель..., лепил всё подряд лишь бы закрыть дыры в архитектуре. Чистый "бац-бац и в продакшн" То что он написал и то, что получилось в итоге - совершенно разные языки. Я реализовывал спецификацию препроцессора - чудовищное издевательство над логикой. Например, препроцессор Fasm-а в этом плане куда логичнее, стройнее и гибче при меньших трудозатратах. Извините, профессор, а где можно с вашими трудами ознакомиться ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 18:25 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
schi, извиняй, парсерами и лексерами я занимаюсь чисто с коммерческой точки зрения PS: я не профессор ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 18:43 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White Owl, Мы тут всё-таки больше экспериментальные программисты, чем теоретические, поэтому яЯ бы предложил называть лямбдами те лямбды, которые есть в обычных лиспах, но не те, которые есть в мю-лиспе :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 19:20 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White OwlЕще раз повторю: лямбда исчисление это синтаксис. Не больше и не меньше. Это даже не принцип обработки данных, это все-лишь принцип описания обработки данных. Функционально, если ты хочешь использовать каррирования, альфа-бета-эта-редукцию и разные другие страшные слова, то их можно использовать на любом языке в котором есть понятие функции. Даже на столь не любимом вами Си, даже на FoxPro, sh, javascript и <подставь язык по вкусу>. На любом! Нет. Важна суть. Синтаксис вообще не важен. Только для каких-нибудь нудных профессоров теоретиков. В лямбдах с практической точки зрения важны лишь возможность хранить функцию в виде значения и возможность захвата свободных переменных из внешнего контекста. Во многих перечисленных языках второй возможности встроенной в язык нет. Поэтому там лямбды возможны, но только при огромном объеме ручной работы по дублированию реализации лямбд по всему коду (я помню, вас это не смущает, но тех кто платит деньги обычно это смущает). А в С++ поддержка лямбд встроена. И кстати ничем от той же хаскелевской не отличается, кроме того что умеет больше чем лямбды, потому что в отличие от хаскеля, С++ применяется не только для сферических коней в вакууме ))) White OwlНо если ты хочешь писать на лямбдах, то и пиши на них: Если бы программирование равнялось математике, то не было бы языков программирования. Но программирование это нечто другое, поэтому математика и ее синтаксис там не работает. Но это не значит что некоторые принципы оттуда нельзя применять. Но для этого разумеется желательно обладать некоторой широтой взглядов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 19:59 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
ИМХО: лямбды это гениальное изобретение. Гениальность в том что вместо придумывания осмысленного имени функции/метода ты просто пишешь код, а имя придумывает компилятор. Главное что не надо придумывать имя, что занимает 90% времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 20:45 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Деннис Ритчи просто писал высокоуровневый ассемблер для PDP-11 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 20:53 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Dima TИМХО: лямбды это гениальное изобретение. Гениальность в том что вместо придумывания осмысленного имени функции/метода ты просто пишешь код, а имя придумывает компилятор. Главное что не надо придумывать имя, что занимает 90% времени.Зря ты так думаешь. Было бы мат.образование, понимал бы, что в такой записи как мат.доказательства, программы стали бы нечитабельными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 20:56 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyWhite OwlЕще раз повторю: лямбда исчисление это синтаксис. Не больше и не меньше. Это даже не принцип обработки данных, это все-лишь принцип описания обработки данных. Функционально, если ты хочешь использовать каррирования, альфа-бета-эта-редукцию и разные другие страшные слова, то их можно использовать на любом языке в котором есть понятие функции. Даже на столь не любимом вами Си, даже на FoxPro, sh, javascript и <подставь язык по вкусу>. На любом! Нет. Важна суть. Синтаксис вообще не важен. Только для каких-нибудь нудных профессоров теоретиков. В лямбдах с практической точки зрения важны лишь возможность хранить функцию в виде значения и возможность захвата свободных переменных из внешнего контекста.Что это за бред???? Как может быть не важен синтаксис, в синтаксической системе??? О какой сути вы говорите???? Anatoly MoskovskyНо для этого разумеется желательно обладать некоторой широтой взглядов Анатолий, вы меня очень сильно разочаровываете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 21:34 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
iv_an_ruWhite Owl, Мы тут всё-таки больше экспериментальные программисты, чем теоретические, поэтому яЯ бы предложил называть лямбдами те лямбды, которые есть в обычных лиспах, но не те, которые есть в мю-лиспе :)Я бы не относил реализованное в лиспе к лямбдам, его возможности гораздо шире, чем возможности лямбда-исчислений (я имею ввиду возможность символьных вычислений). Anatoly MoskovskyВ лямбдах с практической точки зрения важны лишь возможность хранить функцию в виде значения и возможность захвата свободных переменных из внешнего контекста.имхо "чистая ленивость", например, совсем не помешает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 21:48 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
White OwlЧто это за бред???? Как может быть не важен синтаксис, в синтаксической системе??? О какой сути вы говорите???? Бред - это предлагать писать программы в математической нотации. Все остальное по сравнению - образец здравомыслия. White OwlАнатолий, вы меня очень сильно разочаровываете. Я расстроился ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 21:56 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)имхо "чистая ленивость", например, совсем не помешает. А она есть (причем была задолго до лямбд) Используйте паттерн Future<type>. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 22:08 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
SiemarglDima TИМХО: лямбды это гениальное изобретение. Гениальность в том что вместо придумывания осмысленного имени функции/метода ты просто пишешь код, а имя придумывает компилятор. Главное что не надо придумывать имя, что занимает 90% времени.Зря ты так думаешь. Было бы мат.образование, понимал бы, что в такой записи как мат.доказательства, программы стали бы нечитабельными. ИМХО если не злоупотреблять, то читабельность наоборот повышается, т.к. вместо вызова одноразового метода ты вписываешь его код в место вызова. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 22:14 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Тут само по себе синтаксическое "сахарение" кода как в С++ не так важно. Велика-ли невидаль - вписать тело по месту вызова. Это-ж не есть главное. Будет ли call-by-refefence? Мы сможем уйти от расчета вложенных аргументов если в этом нет необходимости? Мы сможет получать остаточные процедуры? Не важно как называет этот сахар старина Бьярне. А важно другое. Соответствует ли это современным критериям ФП или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 22:43 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
maytonНе важно как называет этот сахар старина Бьярне. А важно другое. Соответствует ли это современным критериям ФП или нет. Соответствует. Просто есть люди, которые против того чтобы называть машину такси, если на ней нет шашечек ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 22:48 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Если вы заметили... я обсуждаю только предмет дискуссии а не персоналии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 22:57 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
maytonТут само по себе синтаксическое "сахарение" кода как в С++ не так важно. Важно, в С++ не знаю, я про в C#. Например ConcurrentDictionary.GetOrAdd(TKey, Func<TKey, TValue>) туда передается код, который создаст новый элемент, если не найдено значение TKey, но если найдено, то никакой код не отработает, т.е. все оптимально, не надо никаких Value по умолчанию передавать, т.е. создавать ненужные объекты, проверок не надо есть или нет TKey, надо просто передать код который создаст объект если это надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 23:17 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
maytonЕсли вы заметили... я обсуждаю только предмет дискуссии а не персоналии. Да и предмет тоже как-то не очень.)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2017, 23:36 |
|
||
|
На чём лучше писать код при одинаковом количестве строк: на C или на C++?
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovskykealon(Ruslan)имхо "чистая ленивость", например, совсем не помешает. А она есть (причем была задолго до лямбд) Используйте паттерн Future<type>. это ожидание асинхронной операции, а не "чистая ленивость" - её можно сделать только на уровне языка, как тернарный оператор, например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 09:16 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=39498561&tid=1340092]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
173ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
| others: | 15ms |
| total: | 295ms |

| 0 / 0 |
