eao197,
E>Если тебе интересно, то я когда-то пытался придумать что-то вроде манифестов проектов и даже изложил свои мысли в виде небольшого документика. Мы даже серьезно его осуждали при выборе системы контроля версий и системы организации проектов.
Спасибо, интересно. Я позже прочту и изложу свои соображения на эту тему.
E> В результате остановились на гораздо более простой схеме, описанной здесь
. Не бог весть что, но работает и обходится дешево, т.к. вся функциональность предоставляется Subversion-ом.
Есть подобный effort в мире java, называется maven (он в том числе предоставляет возможность подкачивать зависимости из интернета и не зависит от системы контроля версий), но недостаток его в том, что не каждый проект укладывается в ограничения, накладываемые maven-ом (в частности ограничения на структуру каталогов), постому как скажем если мы разрабатываем плугин для еклипса, то там несколько другие соглашения. Поэтому либо затачивать maven, либо писать плугин под эклипсом — чаще выбирают второе.
Касаемо mxx-ru всё выглядит вполне симпатично (хотя я не в курсе, как он уживается с проектами под ATL/WTL/MFC/QT или какими-нибудь другими фрэймворками, навскидку проблем не вижу).
E> Хотя переодически у меня возникает желание вернуться к идее манифестов для описания зависимостей. Да только не хватает духу браться за еще один безнадежный проект
У меня подозрение, что за *дцать лет в С++ наверняка была не одна сотня человек, которая работала над этой проблемой. Я бы начал с чего-нибудь типа гугла и т.п. Но подозреваю, что ты уже интересовался существующими результатами и был неудовлетворён. А?
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>Есть подобный effort в мире java, называется maven (он в том числе предоставляет возможность подкачивать зависимости из интернета и не зависит от системы контроля версий), но недостаток его в том, что не каждый проект укладывается в ограничения, накладываемые maven-ом (в частности ограничения на структуру каталогов), постому как скажем если мы разрабатываем плугин для еклипса, то там несколько другие соглашения. Поэтому либо затачивать maven, либо писать плугин под эклипсом — чаще выбирают второе.
Да я слышал про него, но мне он показался слишком монстрообразным. Не хватило сил с ним поближе познакомиться, да еще он для Java, а меня в первую очередь C++ интересовал. Еще для Java есть какой-то Ivy, но кроме самого факта его существования я о нем ничего не знаю.
LCR>У меня подозрение, что за *дцать лет в С++ наверняка была не одна сотня человек, которая работала над этой проблемой. Я бы начал с чего-нибудь типа гугла и т.п. Но подозреваю, что ты уже интересовался существующими результатами и был неудовлетворён. А?
Да я уже и не помню, давно дело было. Помню только что конкретно для моих нужд ничего не нашел. Да и вообще C++, в отличии от Java, Perl или Ruby -- это такая разношерстная толпа, то найти можно хоть черта лысого, но не то, что нужно здесь и сейчас
Вообще давай в этой теме оффтопик завяжем, а то не красиво получается. С удовольствием продолжу разговор здесь
Lazy Cjow Rhrr wrote: > После этого создаём файлик boostgem.config где будут сведения о > компиляторе/окружении и т.п. (это сама тулза может создать). Отсюда > следует, что для каждого компилятора будет свой конфиг.
На самом деле, это не такая уж фантастика. Есть BJamV2 там это выглядит
примерно так:
Вполне можно представить, что выделенная строка может выглядеть так
"use-project /boost : http://boost.org/repository ; ".
При постройке он сам скачает нужные файлы и поместит их куда-нибудь.
BJam автоматически пропишет необходимые зависимости для include'ов, сам
построит нужные библиотеки и т.п.
Черт, это мне нравится! Я добавлю эту фичу в свой BuildPort!
1. переносить все топики с участием VlaD2 автоматом в Священные войны или в Юмор.
сколько читаю форум — всегда вянут уши при чтении форумов с участием VlaD2 — в большинстве случаев
оказывается, что его оппоненты все сплошь и рядом страдают фобией нехватки памяти
и/или производительности. Обычно нет бога кроме Nemerle либо .Net — в зависимости от форума.
2. за разжигание межязыковой розни отлучать от модерирования
3. И все-таки, VlaD2 — увидел прямой вопрос Вам, на который Вы ответили какую-то
чушь, показывающую невладение вопросом либо проблемы с памятью. Что вы скажете о сравнении функторов С++
в сравнении с delegate'ами.
Только не надо отсылать на свои предыдущие сообщения, как Вы обычно делаете на
уточняющие вопросы.
Уточняющий вопрос как правило и задают тогда,
когда оппонент не хочет делиться своими аргументами и приходится их у него выпытывать
4. Зачем рассказывать о достоинствах Nemerle именно в сравнении с C++ — у Страуструпа хоть и читаются его книги
как Ода C++ по сравнением с C — но он хоть имел на это право — он разрабатывал C++ как замену C
Re[15]: Синтаксический сахар или C++ vs. Nemerle :)
Здравствуйте, McSeem2, Вы писали:
VD>>У C# уже минимум 2. А с натяжкой 4.
MS>Ну и как там совместимость? К примеру, я слыхал на всяких мобильных Жавах бардак похлеще C++ного.
Довольно не плохо. Релизы соотвествуют стандартам. Баги конечно находятся, но их фиксят. Сам вот написал парсер C# по его стандарту. Задача вполне подъемная.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
R>1. переносить все топики с участием VlaD2 автоматом в Священные войны или в Юмор.
R>сколько читаю форум — всегда вянут уши при чтении форумов с участием VlaD2 — в большинстве случаев R>оказывается, что его оппоненты все сплошь и рядом страдают фобией нехватки памяти R>и/или производительности. Обычно нет бога кроме Nemerle либо .Net — в зависимости от форума.
R>2. за разжигание межязыковой розни отлучать от модерирования
У тебя явно мания величия.
R>3. И все-таки, VlaD2 — увидел прямой вопрос Вам, на который Вы ответили какую-то R>чушь, показывающую невладение вопросом либо проблемы с памятью. Что вы скажете о сравнении функторов С++ R>в сравнении с delegate'ами.
R>Только не надо отсылать на свои предыдущие сообщения, как Вы обычно делаете на R>уточняющие вопросы. R>Уточняющий вопрос как правило и задают тогда, R>когда оппонент не хочет делиться своими аргументами и приходится их у него выпытывать
R>4. Зачем рассказывать о достоинствах Nemerle именно в сравнении с C++ — у Страуструпа хоть и читаются его книги R>как Ода C++ по сравнением с C — но он хоть имел на это право — он разрабатывал C++ как замену C
Извини, но первая часть твоего вопроса выдает в тебе эдакого ... заведшего ник чтобы поплюваться на то что понять не в силах, а мне с такими личностями общаться не охота.
Заведи себе еще один ник, задай свои вопросы без предворительного ... и я на них с удоволствием отвечу.
Если цель былапредварительно раздражить и спровоцировать на грубость, то пустое. Это слишком дешевые приемы.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, theRebel, Вы писали:
R>1. переносить все топики с участием VlaD2 автоматом в Священные войны или в Юмор.
Да не, не согласен. Кстати, обрати внивмание, ты неправильно ник Влада написал: VladD2. Тыксыть, учимся уважать соперников.
<< Под музыку: silent >>
<< При помощи Януса: 1.2.0 alpha rev. 650 >>
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Прочитал статью. Вначале заинтересовался. Потом понял, что это очередная реклама Nemerle и разочаровался.
Я совершенно согласен, что C++ — мерзость. Ну так и надо говорить, что он мерзость потому-то и потому-то, а не потому что Nemerle круче. Вроде когда язык только появляется, всех его граблей не видно; они начинают проявляться только тогда, когда появляются непредусмотренные разработчиками задачи. C++ разрабатывался 20 лет назад, и тогда многих проблем было просто не видно. Тогда решали совсем другие задачи. С дриугой стороны, C++ своим горьким опытом показал, как делать не надо. А вот то, что Nemerle — это круто, все давно уже поняли (не без усилий автора).
PS: По моему субъективному мнению самое слабое место Nemerle — вывод типов. С одной стороны это позволяет экономить при написании кода. С другой сотороны, Василий Пупкин может этим воспользоваться так, что его программа станет совершенно нечитабельной. Nemerle вообще этим грешит. Я просто боюсь представить, как будет выглядеть программа на Nemerle в исполнении того же В. Пупкина. Например, при безудержном объявлении макросов, или при неумелом и неуместном смешивании функционального и императивного стилей. В общем, Nemerle не должен становиться mainstream-языком. И хотя извраться можно на C# и Java, но это не возымеет таких грандиозных последствий, как в случае с Nemerle.
Нужно носить в себе еще хаос, чтобы быть в состоянии родить танцующую звезду.
Статья интерессная, наводит на размышления. Понравилось, жду продолжения.
Решение с рекурсией как базовое, не очень убедительно , а вот сама мысль что необходимо 1 решение , а остальное через него реализовывать — это здраво !
Чтобы проверить возможности расширяемости ЯЗЫКА Nemerle, простой тест. Насколько сложно постараться привести с помощью средств Nemerle фреймворк до состояния совместимости с C++. Т.е. чтобы можно было компилировать программу написанную на C++ с STL и т.п. как программу на Nemerle. Не потому что C++ так крут , а для обратной совместимости, или JAVA, или еще ченить. Задача и практичная и интерессная.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
Здравствуйте, konsoletyper, Вы писали:
K>Прочитал статью. Вначале заинтересовался. Потом понял, что это очередная реклама Nemerle и разочаровался.
Ребятки. Любое упоминание продукта перед его возможными потребителями является рекламой. Даже негативное, как не странно. И две главные цели рекламы — это привлечь внимание и заинтересовать. Так что "рекламу" можно усмотреть везде и всегда. Даже если вас назвали идиотом.
Так что является что-то рекламным булшитом или информацией достойной изучения и осознания зависит исключительно от воспритяитя человека. И порой бывает так, что человек не вошедший в суть дела считает, что-то "гнусной рекламщиной".
Напритив, человек обладающий своей головой без проблем смотрит самую примитивнейшую рекламу рассчитанную на воздейсвие на самые животные инстинкты человека. Его забавляет откровенное вранью и натяжки. Воздейсвие на инстинкты задорит. Такой человек сопособен увидеть в такой рекламе юмор и эронию.
Так вот желаю всем окружающим быть именно выторым типом людей, так как первые сворливы, несут один негатив и как не странно являются главными объектами на которых рассчитана реклама.
Вот, например, последняя реклама "Страого мельника" в кторой "если тормозит Аска, то нужно бухнуть и пойти к Аньке" мне очень понравилась. Мелькика я от этого, правда, пить не буду, но положительные эмоции я уже получил.
K>Я совершенно согласен, что C++ — мерзость.
А я — нет. Мерзких мест дейсвтиельно хватат. Но С++ это один из моих любимых языков програмирвоания... в прошом... правда. Но тем неменее должное ему я отдаю. К тому же он наряду с Java и C# является одним из немногих действительно популярных языков.
K> Ну так и надо говорить, что он мерзость потому-то и потому-то, а не потому что Nemerle круче.
Нет. Нет. Вот это как раз полнейший негатив, а но нам не нужен.
Мне не хочется говорить про дерьмо, мне хочется говорить про прогресс. Это я и делаю.
K> Вроде когда язык только появляется, всех его граблей не видно; они начинают проявляться только тогда, когда появляются непредусмотренные разработчиками задачи.
Если слово "задачи" заменить на "способы применения", то я пожалуй соглашусь. Вот только лично я пользуюсь Nemerle уже довольно плотно и довольно много. Учитывая мой опыт в других языках программирования, согласись, что я все же имею право выносить суждение, так как они обоснованы. К тому же опять подчеркну. У меня, по крайней мере в этой статье, не было задачи найти где-то негатив. Наоборот у меня была задача довести позетив. Позитив заключается в том, что лозунг (очень хороший на мой взгляд) провозглашенный в недрах С++-сообщества был воплошен на на практике в этом новом языке.
K> C++ разрабатывался 20 лет назад, и тогда многих проблем было просто не видно. Тогда решали совсем другие задачи.
Это опять не верно. Многие проблемы С++ были очевидны Страуструпу и уж темболее другим еще в 19885-ом. Он и сам их иногда описывает. Но оправдывает их: целями совместимости с С, незначительности (по его меннию) пробелем, производительностью, производительностью и наконец конечно же производительностью. Так вот за 20 лет стало более очевидными заблужения Страуструпа. Ну, да это тема для отдельного разговора, который мне чесно говоря мало интересен. С++ для меня пройденный этап и надежд на его перерождение я лично не вижу. За-то вижу цепляние за старое в попытках сохранить былые позиции.
Я без пробем могу програмировать на С++, но делать это не хочу, так как хочу получать от программирования удовольствие, а от С++ я его уже давно испытвать перестал.
K> С дриугой стороны, C++ своим горьким опытом показал, как делать не надо. А вот то, что Nemerle — это круто, все давно уже поняли (не без усилий автора).
В данном случае лично мне был интересен не сам Nemerle, а подход в нем использующийся. Я рассчитаывю на разумных людей способных жить не эмоциями, а разумом. Но к сожалению этот рассчет натыкается на человеческие предрассудки, привязанность, предвзятость и т.п.
K>PS: По моему субъективному мнению самое слабое место Nemerle — вывод типов. С одной стороны это позволяет экономить при написании кода. С другой сотороны, Василий Пупкин может этим воспользоваться так, что его программа станет совершенно нечитабельной.
Вот это уже тема для осбуждения. Только я бы предпочел обсуждать ее не в этом форуме. Вопрос серьезный, а здесь слишком много тех кому просто нужно устроить флэйм с целью даоказать свое ИМХО любыми целями. Так что обсуждение серьезной цели приведет в упраждения по демагогии и софистике.
Так что отвечу один раз и ни в каких развитиях темы в этом форуме участвовать н буду.
Так вот я считаю, что эти опасения безосновательны. Почему?
Все очень просто. Во-первых, ошибочна первая посылка (хотя это не так важно). Отсуствие типов внутри выражений помогает в основном не писать, а читать код! Код без лишних деталей воспринимается намного лушче. Этому содействуют два фактора: 1) уменьшается объем кода, 2) внимание концентрируется на важных деталях (алгоритме). Типы в большинстве случаев являются справочной информацией — "шумом".
Да, безусловно, порою, информация о типах деталей выражения очень важна для понимания происходящего. Особенно если тот самый "Вася Пупкин" (которыми мы с вами, на самом деле и являемся иногда) налепил код "в строчку" не задумываясь над тем, чтобы дать переменным и функциям внятные имена.
Однако проблемой это станет только при одном условии, если у нас нет возможнсоти получить эту информацию о типах каким-то другим путем.
Собвственно дальше это рассуждение можно не продолжать так как умные уже догадались. Хотя... поясню чтобы уж до все...
Мы живем не в прошлом веке. Писать код без IDE современный мэйнтстрим-программист не будет! Не будет во все. А IDE без проблем сможет предоставить нужную информацию о типах. Причем так как IDE исползует для получения информации о типах комплилятор, то и инфомрация эта будет куда более полной по сравнению с тем что может предоставить человек.
такой интеграции с IDE которую мы с IT (и другими) сейчас сейчас для Nelerle.
Теперь не трудно себе предствит процесс чтения исходников языка с жутчайшим выводом типов. Программист читает код... разбирается... и если для понимания смысла кода ему вдруг потребуется информация о типе той или иной переменой или метода, то он без труда получит эту информацию банально подведя курсор мыши в нужное место.
K> Nemerle вообще этим грешит. Я просто боюсь представить, как будет выглядеть программа на Nemerle в исполнении того же В. Пупкина.
Думаю, моя следующая статья будет о том почему все вокруг говорят о В. Пупкина, но эта загадочная личность никогда не показывается на клаза сама. Это просто детектив какой-то, а я обожаю хоршие детективы.
K> Например, при безудержном объявлении макросов, или при неумелом и неуместном смешивании функционального и императивного стилей.
Боюсь, что самый большой страх — это страх который рисует наше собственное воображение. Мы без проблем проходим по улице где стоит добрая сотня здоровых мужиков каждый из которых может оказаться маньяком-убийцей, но боимся темного угла в полумраке, так как мы не знаем, что же там такое таится. С возрастом этот страх притухает, но видимо животные инстинкты проявляются в более тонких случаях, таких как этот.
На саомом деле, чтобы накосячить с макросами еще нужно уметь их написать. Макрос — это метапрограмма. А метапрограмма требует выхода на более высокий уровень бастрации. Чтобы ее написать нужно начать думать в мире где стало на одно измерение больше. Если В.Пупкин вдруг вышел на этот уровень, то уверяю вас, что он обогнал в своем развитии очень многих из тех кто боится теней в подвортне.
В C++ во всю используется совершенно страшный вариант метапрограммирования и это мало кому мешает. Тот кто считает опасным использовать "такой метакод" или просто метакод, то просто не пользуется библиотеками содержащими метакод. А дебилы его не пишут просто потому что у них нехватает интеллекта для этого. Так что природа сам защитила нас от подобных проблем.
Страх смешение функционального и императивного стилей имеет ту же природу — боязнь темного угла (неизвестности).
На самом деле С++ и C# давно позволяют писать в функциональном стиле или скажем в обобщенном, но к проблемам это не приводит. Разве что код получается более громоздкий из-за несовершенства функциональных средств этих языков.
В общем, несомненно кривой код Nemerle писать не запретит. В прочем, это не запретят и другие ЯП. Это вообще невозможно запретить. А раз так, то использовать "аргумент" что мол "Вася Пупкин сожет накосячить" просто не разумно. Он, а значит, ты я и вот тотот ухмыляющийся товарищь с разбухшим сомомнением, можем накосячить. И тольо от нас зависит будем ли мы стараться этого не делать или нет.
Важно только то, чтобы язык не подталкивал к косякам и чтобы косяки не могли появиться слоучайно. Вот отсуствие это Nemerle гарантирует. В нем не так то просто сделать косяк случано.
Более того, Nemerle подталкивает к более чистому дизайну, так как опзвляет выражать свои мысли более декларативно. А раз так, то линивый иди начинающих будет интуитивно стремиться к более выразительным конструкциям.
Ну, и конечно если разработку ведут несколько человек, важно выработать общий стиль оформления кода, общие подходы и т.п. Но это опять таки важно для любого языка.
K> В общем, Nemerle не должен становиться mainstream-языком. И хотя извраться можно на C# и Java, но это не возымеет таких грандиозных последствий, как в случае с Nemerle.
Я не согласен с этим мнением. Да и один разговор о том должен или не должен ли Nemerle стать mainstream-языком говорит о том, что хотя и подспутно, но ты чувствуешь, что это вполне возможно. И это лично меня радует. Ну, а станет ли он mainstream-языком или нет ни от твоих высказываний, ни от моих не зависит. Вот от действий возможно. Думаю, что статьи и поддержка IDE работает на то чтобы Nemerle таки сал бы mainstream-ом.
Что касается извращения на C#, то тут вопрос терминов. Написать совершенно ничитаемый код на них проще просто. Думаю, никто с этим даже спорить не будет. А вот то что ты считашь извращением скорее всего просто плод твоей боязни темного угла. Ты не привык к более понятным и простым конструкциям и увидав их ты пугашся каки-то последствий которых ты пока не видишь, но которые ведь обязательно случатся.
ЗЫ
Да, и еще раз о рекламе. Твое сообщение безусловно увеличило (хотя возможно и незначительно) интерес к Nemerle, так что могу поздравить тебя с присоеденением к рекламной компании. Шучу конечно, но в каждой шутке...
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
Здравствуйте, minorlogic, Вы писали:
M>Решение с рекурсией как базовое, не очень убедительно , а вот сама мысль что необходимо 1 решение , а остальное через него реализовывать — это здраво !
Слава богу, нашлись все же люди восринявшие суть стать и задумывавшиеся над ней.
Искренее спасибо. Я уже думал, что не услышу мнение о сути статьи, так как она потонит в придирках к дералям и предубеждениях людей.
M>Чтобы проверить возможности расширяемости ЯЗЫКА Nemerle, простой тест. Насколько сложно постараться привести с помощью средств Nemerle фреймворк до состояния совместимости с C++. Т.е. чтобы можно было компилировать программу написанную на C++ с STL и т.п. как программу на Nemerle. Не потому что C++ так крут , а для обратной совместимости, или JAVA, или еще ченить. Задача и практичная и интерессная.
Это не тест на расширение языка. Это тест на безрассудность.
Nemerle более мощьный язык и "доангрэйтить" его до С++ смысла нет. Более того возозможнсоти по изменению синтаксиса в Немерле довольно ограничины (причем намерянно). В нем нельзя поменять синтаксис на уровне описания типов. И не все можно сделать на уровне выражений. Но того что есть более чем достаточно для решения большинства пробелм стоящих сегодня перед программистом и архитектором.
Конечно в Nemerle есть возможность разрабатывать свои ДСЛ-и на уровне токенов и потенциально в нем можно попросту встроить С++. Но слава богу это очень не просто и совершенно никому не нужно.
Если цель всего лишь обратная совместимость с С++, то достаточно скомплировать С++-код в .net-ую сборку и подключить ее к прокту.
В Nemerle есть даже конвертор C#-а в Nemerle, но чесно говоря я так ни разу им и не восползовался. Ведь это совершенно не нужно.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Синтаксический сахар или C++ vs. Nemerle :)
Здравствуйте, VladD2, Вы писали:
VD>Ребятки. Любое упоминание продукта перед его возможными потребителями является рекламой. Даже негативное, как не странно. И две главные цели рекламы — это привлечь внимание и заинтересовать. Так что "рекламу" можно усмотреть везде и всегда. Даже если вас назвали идиотом.
VD>Так что является что-то рекламным булшитом или информацией достойной изучения и осознания зависит исключительно от воспритяитя человека. И порой бывает так, что человек не вошедший в суть дела считает, что-то "гнусной рекламщиной".
VD>Напритив, человек обладающий своей головой без проблем смотрит самую примитивнейшую рекламу рассчитанную на воздейсвие на самые животные инстинкты человека. Его забавляет откровенное вранью и натяжки. Воздейсвие на инстинкты задорит. Такой человек сопособен увидеть в такой рекламе юмор и эронию.
VD>Так вот желаю всем окружающим быть именно выторым типом людей, так как первые сворливы, несут один негатив и как не странно являются главными объектами на которых рассчитана реклама.
VD>Вот, например, последняя реклама "Страого мельника" в кторой "если тормозит Аска, то нужно бухнуть и пойти к Аньке" мне очень понравилась. Мелькика я от этого, правда, пить не буду, но положительные эмоции я уже получил.
А я и не говорю, что ненавижу рекламу в общем и рекламу Nemerle в частности. Просто начало было каким-то многообещающим. Что-то мне не нравится в C++, думал статья объяснит, что же именно. А статья всего лишь оказалась очередной похвалой Nemerle. Вот и разочаровался.
K>>Я совершенно согласен, что C++ — мерзость.
VD>А я — нет. Мерзких мест дейсвтиельно хватат. Но С++ это один из моих любимых языков програмирвоания... в прошом... правда. Но тем неменее должное ему я отдаю. К тому же он наряду с Java и C# является одним из немногих действительно популярных языков.
Процитирую себя:
C++ — жуткий отстой. То же масое можно сказать и по отношению к C#, Java, Object Pascal, Lisp, Nemerle, Prolog, и многим другим языкам. Но в той или иной степени они подходят для решения определёного круга задач. Хотя, на мой взгляд, C# чуть менее отстойный, чем C++, а Nemerle — чуть менее отстойный, чем C#.
Просто слишком радикально выражаюсь. А так мне хотелось бы просто обсудить недостатки C++. Для научного интереса. Чтобы не наступать на грабли. к сожалению, мой опыт не столь велик. На C++ не доводилось выполнять серьёзных проектов.
K>> Вроде когда язык только появляется, всех его граблей не видно; они начинают проявляться только тогда, когда появляются непредусмотренные разработчиками задачи.
VD>Если слово "задачи" заменить на "способы применения", то я пожалуй соглашусь. Вот только лично я пользуюсь Nemerle уже довольно плотно и довольно много. Учитывая мой опыт в других языках программирования, согласись, что я все же имею право выносить суждение, так как они обоснованы. К тому же опять подчеркну. У меня, по крайней мере в этой статье, не было задачи найти где-то негатив. Наоборот у меня была задача довести позетив. Позитив заключается в том, что лозунг (очень хороший на мой взгляд) провозглашенный в недрах С++-сообщества был воплошен на на практике в этом новом языке.
Думаю, не все проблемы первой версии фортрана были видны разработчикам. Да, они безусловно понимали, что их детище — не венец творения, могли указать на некоторые его недостатки. Но они тогда, хоть и понимали это интуитивно, не могли чётко сформулировать постулатов структурного программирования. Не говоря об ООП, АОП или ЯОП. Мир меняется, меняется требования к ПО, к его разработке. По моему, ни один язык не может учитывать далёкого будущего, сколь гибок он не был бы.
K>> С дриугой стороны, C++ своим горьким опытом показал, как делать не надо. А вот то, что Nemerle — это круто, все давно уже поняли (не без усилий автора).
VD>В данном случае лично мне был интересен не сам Nemerle, а подход в нем использующийся. Я рассчитаывю на разумных людей способных жить не эмоциями, а разумом. Но к сожалению этот рассчет натыкается на человеческие предрассудки, привязанность, предвзятость и т.п.
Надо было мне поставить смайлик и написать ИМХО . А то, оказывается, получился совершенно не тот эмоциональный настрой.
K>>PS: По моему субъективному мнению самое слабое место Nemerle — вывод типов. С одной стороны это позволяет экономить при написании кода. С другой сотороны, Василий Пупкин может этим воспользоваться так, что его программа станет совершенно нечитабельной.
VD>Вот это уже тема для осбуждения. Только я бы предпочел обсуждать ее не в этом форуме. Вопрос серьезный, а здесь слишком много тех кому просто нужно устроить флэйм с целью даоказать свое ИМХО любыми целями. Так что обсуждение серьезной цели приведет в упраждения по демагогии и софистике.
Да, форумы этим грешат.
VD>ЗЫ
VD>Да, и еще раз о рекламе. Твое сообщение безусловно увеличило (хотя возможно и незначительно) интерес к Nemerle, так что могу поздравить тебя с присоеденением к рекламной компании. Шучу конечно, но в каждой шутке...
А я только за
Нужно носить в себе еще хаос, чтобы быть в состоянии родить танцующую звезду.
Re[3]: Синтаксический сахар или C++ vs. Nemerle :)
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, minorlogic, Вы писали:
M>>Решение с рекурсией как базовое, не очень убедительно , а вот сама мысль что необходимо 1 решение , а остальное через него реализовывать — это здраво !
VD>Слава богу, нашлись все же люди восринявшие суть стать и задумывавшиеся над ней.
VD>Искренее спасибо. Я уже думал, что не услышу мнение о сути статьи, так как она потонит в придирках к дералям и предубеждениях людей.
Так раньше статьи не было целиком был только кусок с наездом, вот его и критиковали
А так если убрать наезд в общем статья нормальная, но примеры в ней очень слабые. Особенно пример с замыканием, по моему просто нереально понять из него что это такое если раньше не знал. Да и использование в примере про замыкания мутабельных переменных тоже по моему неверно, это особенность реализации, лучше было бы сделать это с немутабельными. Мне кажется проще объяснить эту тему на подобном примере:
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Здравствуйте, theRebel, Вы писали:
R>>1. переносить все топики с участием VlaD2 автоматом в Священные войны или в Юмор.
ГВ>Да не, не согласен. Кстати, обрати внивмание, ты неправильно ник Влада написал: VladD2. Тыксыть, учимся уважать соперников.
Уважение надо заслужить, и первый шаг в этом — уважать других. А начинается уважение с элементарной вежливости и культуры. Это очень сложно, но я объясню на примере — вот, например, опечатки (вроде VlaD2) принято не замечать, как, например, кусочки еды, случайно упавшие с вилки вашего визави на скатерть. А не тыкать ему, что у него с тарелки что-то упало и поэтому он вас не уважает. Ну это я так, для примера — вы не подумайте чего, любые совпадения — сами понимаете, случайны.
Думаю, что не ошибусь, если скажу, что while – идеальный претендент на роль базового типа цикла.
Не верю я в это. Базового типа цикла не существует. do,while,for,foreach,break,continue,call,return и тд.
выражаются через if и goto. Все остальное это лукавые макросы.
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
Здравствуйте, VladD2, Вы писали:
M>>Решение с рекурсией как базовое, не очень убедительно , а вот сама мысль что необходимо 1 решение , а остальное через него реализовывать — это здраво !
VD>Слава богу, нашлись все же люди восринявшие суть стать и задумывавшиеся над ней.
VD>Искренее спасибо. Я уже думал, что не услышу мнение о сути статьи, так как она потонит в придирках к дералям и предубеждениях людей.
Одно решение, вокруг которого строится все остальное... Такое все из себя Единственно Правильное Решение (в обиходе просто silver bullet).
Ну попробуйте, например, реализовать одномерные вектора и 3-х мерные матрицы имея в распоряжении только списки. Или двухсвязные списки через вектора. Или деревья через массивы. Это же не так и сложно. Только вот не нужно почему-то.
Уже давно пора оставить сказочки о том, что есть единственно правильный подход. И что есть самый лучший инструмент. И что сочетание единственно правильного подхода с самым лучшим инструментом дает гарантированно успешные результаты.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
Здравствуйте, unreg_flex, Вы писали:
_>Не верю я в это. Базового типа цикла не существует. do,while,for,foreach,break,continue,call,return и тд. _>выражаются через if и goto. Все остальное это лукавые макросы.
В функциональных языках нет goto. Циклов в привычном понимании там в общем тоже нет, но без них прекрасно обходятся. Это принципиально другая вычислительная модель(еще на одной припципиально другой вычислительной модели без goto, и даже без if построены логические языки программирования). (Чистые) функциональные языки как раз и возникли как попытка полностью отойти от традиционной фон Нейманновской модели. Что интересно первопроходцем в этой области был John Backus, до этого придумавший Fortran и нотацию BNF.
Nemerle конечно не является чистым ФЯ, но как и в функциональных языках там нет goto, как и циклов(если не считать "лукавых" макросов ), Зато к goto по сути сводится хвостовая рекурсия, о чем как раз и написанно в этой статье.