Re[4]: Статья "Введение в Nemerle" - по критикуйте
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 16:51
Оценка:
Здравствуйте, Mystic, Вы писали:

VD>>И как таким подходом освоить что-то новое? Таким подходом можно освоить только то, что и так уже знаешь. А для этого изучаемые языки должны быть близнецами-братьями. С немерел это не так.


M>Новое осваивается на базе старого.


Ага. У кого-то старое — это курс математики средней школы. У кого-то — это знание С (без плюсов), Питона или Эрланга.

M>И для меня лучший способ освоения нового это решение практических задач. Так вот в случае с Nemerle эти статьи мне никак не помогают в решении этих задач. Точнее даже, задача не решается вообще.


Нельзя начинать решать сразу сложные задачи. Вывод таблицы перевода — это тоже практическая задача, но простая.
А что для тебя я уже сказал.

M>Лучше читателям объяснить, зачем вообще эти макросы нужны.


Объяснять — это не наш метод. Наш метод показывать.

M>Ну вот, я прочитал, знаю чтоони есть. Но вряд ли буду писать свои, потому как я просто не вижу, как их можно использовать. if/then/else уже написаны, больше мне не надо :)


Керниган и Ричи использовали в качестве примеров библиотечные функции. Мне это очень нравилось. Ты не только изучаешь язык (то как на нем что-то написать), но и за одно изучаешь стандартную библиотеку. Выгод масса. Человек знает стандартную библиотеку, он знает как она написана и как написать похожий код.

VD>>Если ты уже знаком с C# и ты хочешь изучить только синаксис и его отличия от шарпа, то тебе просто нужно начать читать с другие статьи. Например — эту
Автор(ы): Сергей Туленцев, Владислав Чистяков
Дата: 23.05.2006
Производительность труда программиста в основном зависит от самого программиста. Однако даже самый опытный и знающий программист мало что может без подходящего инструмента. Эта статья открывает цикл статей об одном из таких инструментов, еще мало известном среди программистов, но очень многообещающем. Язык Nemerle, о котором пойдет речь в этих статьях, на первый взгляд очень похож на слегка улучшенный C#, но привносит многое из передовых исследовательских языков. Данная статья рассказывает об отличиях Nemerle от C# (как наиболее близкого языка)и является неформальным введением в язык.
.


M>C C# знаком поверхностно, если честно. Эту статью я смотрел, но тоже не очень помогла.


Ну, тогда на тебя не угодишь.

То что предлагаешь ты мне совсем не нравится.

M>Вот хочется раскрыть суть этой идеологии. if/else, while и даже большая часть операторов уже написана, вряд-ли мне придется их писать самому, только использовать. Для чего макросы нужны кроме того, чтобы реализовать основные конструкции других языков?


Я не могу научить тебя писать макросы которые нужны тебе. Я могу научить писать макросы вообще и дать общие сведения на базе которых ты, потом, сможешь сам понять что тебе может помочь макрос и написать его. По этому совершенно все равно какой макрос буду описыват я. Более того если я начну придумавать что-то сложное, то многие скажут, что лично им это не нужно. Кроме того я сильно усложню понимание. А понятность — это главное чего я хочу добиться.

M>Собственно говоря в этом плане изложение, имхо, очень неровное. То для новичков, которые не знают ни одного языка программирования, то рекурсия и много всяких умолчаний, которые понятны более-менее опытному программисту, но непонятны для новичков.


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

VD>>Тебе, так как он мало отличается от того что ты видел в C#.

VD>>Кстати, хочется задать вопрос. Ты заметил отличия (в сравнении с C#) в использовании using?

M>Мой опыт в C# не настолько велик, но все-таки отметил.


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

Лучше ответь на один вопрос. Осталось ли что-то непонятное после прочтения данной стать?

M>Извращенный в том смысле, что надо раскручивать работу двух вложенных друг в друга match + рекрсивный, хотя задача этого не требует.


Куда раскручивать?
Я правильно понял, что извращением ты называешь использование рекурсии?

M>Собственно говоря, я хотел на Nemerle решить одну прикладную задачу. И почти обломался.


Чтобы решать прикладную задачу нужно прочитать не только первый раздел, но и (хотя бы) два следующих. А пока — это только введение.

Кстати, что значит "почти"?

M>Соответственно мне интересно увидеть, как при помощи (точнее без помощи всяких return и т. п.) можно решить более-менее практическую задачу. Ибо идеология это хорошо, в общих чертах мне понятно. Но на практике как только берется конкретная задача я наступаю на грабли.


Очень интересно было бы послушать и про грабли, и про конкретную задачу.

M>Я его уже нашел, как раз с его помощью немного "полегчало".


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

В прочем, было бы ОЧЕНЬ интересно узнать в чем были проблемы, как ты их решил и саму задачу.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.