OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 21:40

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 143 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8  След.
Автор Сообщение
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Понедельник, 05 Октябрь, 2009 12:22 

Зарегистрирован: Суббота, 12 Май, 2007 08:41
Сообщения: 102
Откуда: Беларусь, Минск
Иван Кузьмицкий писал(а):
Наблюдаю острую некогерентность в Вашем высказывании. Сначала говорите о конкретном "Gnu's not Unix", потом говорите, что рекурсия - абстрактное понятие. Я понимаю, Вам хочется элитности, но её тут нет.

Как сотворяющее само себя, отражение в зеркале - бытовая рекурсия. Уроборос - древнейший символ рекурсии. Я уже не говорю о Библии, где человек - тоже рекурсия.

Это считается здесь правилом хорошего тона - видеть то, чего нет и спорить о пустом? В n-ный раз повторю: суть высказывания была в том, что рекурсия не является простой для изучения темой, во-всяком случае, не проще концепции макросов. Вы же непонятно зачем начинаете спор о том, что рекурсия есть в повседневной жизни. Да нету её там. Пример с уроборосом - бред, иначе собака бегающая за своим хвостом по кругу, тоже была бы рекурсивной. Попробуйте на таком примере хоть одному человеку объяснить рекурсию. Отражение в зеркале - цикл, перечитайте ещё раз статью про рекурсивное определение на Википедии - где здесь базовые случаи? Где конечное стоп-значение? Про библию - то же самое, судя по всему то, что Вы хотите назвать рекурсией, 99% населения назовут наследованием, максимум, циклом перерождения. У всех вещей в природе, которые могут показаться Вам, именно Вам, рекурсивными, у подавляющего большинства не-программистов есть другой, не рекурсивный и более простой способ определения.
И если Вам всё ещё хочется спорить о пустом, непонятно зачем выискивая примеры "рекурсии" в природе, то для начала перечитайте Сассмана и Абельсона про рекурсивные процессы и процессы, на самом деле являющиеся циклическими, и в дальнейшем по крайней мере приводите примеры рекурсивных процессов в природе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Понедельник, 05 Октябрь, 2009 13:02 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
И причём здесь рекурсивные процессы и итерации в формулировках Сассмана и Абельсона? Вы утверждаете, что "рекурсии ни в природе, ни в обиходе нет", я возразил, что есть. И был неправ, ибо формулировок Сассмана и Абельсона в природе нет, действительно - а только в книжке.

А вот рекурсия в природе и быту встречается часто, рекомендую почитать Анисимова "Мифы. Алгоритмы. Язык": http://lib.web-malina.com/getbook.php?bid=570

И вполне понятное явление. Также понятно желание выдать простое за элитное.

P.S. Уроборос - это не собака с хвостом. Он порождает сам себя, по Сассману и Абельсону это и есть рекурсия.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Понедельник, 05 Октябрь, 2009 13:06 

Зарегистрирован: Понедельник, 02 Июнь, 2008 19:35
Сообщения: 305
Sergey Oborotov писал(а):
Илья Ермаков писал(а):
Но всё равно нужно накладывать поверх лексику, морфологию, грамматику?
Вы предлагаете вообще ими не пользоваться? Или в данном случае они отсутствуют?

Это какой то глупый спор. Есть предметная область и для нее можно разработать адекватный, естественный инструмент - нет конечно гланды можно и через анус оперировать, но зачем?! Если брать уровень букв - инструмент один, если уровень предложений - инструмент другой. Утверждать, что для любого уровня есть универсальный адекватный инструмент - господа, вы вспомните математику. В алгебре свои методы, в матанализе свои, а в логике третие. Они могут смешиваться давая новые результаты недоступные стандартным методам, но для большинства стандартных задач в каждой предметной области есть свой стандартный набор методов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Понедельник, 05 Октябрь, 2009 18:38 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Уровень букв в качестве примера только. Речь вообще-то о макросах. В каждой предметной области они могут быть свои тоже.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Понедельник, 05 Октябрь, 2009 22:58 

Зарегистрирован: Суббота, 12 Май, 2007 08:41
Сообщения: 102
Откуда: Беларусь, Минск
Иван Кузьмицкий писал(а):
А вот рекурсия в природе и быту встречается часто, рекомендую почитать Анисимова "Мифы. Алгоритмы. Язык": http://lib.web-malina.com/getbook.php?bid=570

Наверное, я слишком чопорный, но представление жизни и сна в виде рекурсивных процедур мне кажется бредом и ужасным сравненим. Ну да ладно, это не интересно, гораздо интереснее другое - где вообще, по-вашему, граница между циклом и рекурсией? Не, я ж не спорю, что любой циклический процесс можно представить через рекурсию, однако думать о нём (процессе) в рекурсивном виде, как правило, гораздо сложнее, чем в итерационном. Хотите пример первоклассной рекурсии? Описание целых чисел в терминах лямбда-исчисления:
Код:
0 - ноль
S(0) - один
S(S(0)) - два
S(S(S(0))) - три

где S - функция увеличения на единицу. Накопление видите? Отложенные вычисления видите? Такое описание невозможно переписать в цикл, оно является рекурсивным. Именно об этом пишут Абельсон и Сассман. Так же есть одно базовое состояние (ноль), и это делает данное описание рекурсивным по Википедии. (Ваш уроборос, кстати говоря, ну никак не вписывается ни в одно, ни в другое правило, и визуально изображается как круг, то есть цикл. )
И Вы считаете такое определение чисел простым?

Иван Кузьмицкий писал(а):
И вполне понятное явление. Также понятно желание выдать простое за элитное.

Что значит "элитный" в программировании?

И всё-таки ответьте на вопрос: зачем мы это обсуждаем? Вы правда считаете рекурсию элементарной темой для обучения, а макросы - сверхсложной? Увы, даже присутствующие здесь преподаватели не смогут нам дать эмпирических данный, т.к. вряд ли обучали студентов писать макросы, поэтому я доверяюсь Спольски и своему опыту, и считаю и рекурсию, и макросы - проблемами одного порядка сложности. Если Вы с этим не согласны, приведите хотя бы пример другого авторитетного мнения, иначе разговор и дальше будет ни о чём.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Понедельник, 05 Октябрь, 2009 23:05 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Макросы для обучения - не сверхсложная, а сверхбесполезная тема.

Есть уйма гораздо более важных вещей, которыми следует занимать студентов.

Макрос не является понятием языка программирования.

Макрос - это способ обработки текста. А обрабатывать тексты (и программные) надо уметь вообще. Любым нужным образом. Хоть по типу макросов, хоть не макросов. Понадобился препроцессор - написали. На полчаса делов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Вторник, 06 Октябрь, 2009 08:39 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
kreol писал(а):
И всё-таки ответьте на вопрос: зачем мы это обсуждаем? Вы правда считаете рекурсию элементарной темой для обучения, а макросы - сверхсложной?


Я вообще не про макросы, если это ещё не заметно. Я про рекурсию, которая известна давным-давно, ещё до программирования. И не про обучение рекурсии. Футбольный мяч - простая штука, а техника игры мячом может быть сложной. Как теперь я вижу, в Вашем утверждении "рекурсии нет ни в природе, ни в быту", слились как рекурсия вообще, так и тонкости описания и использования по Абельсону и Сассману.

А я про обобщение рекурсии. Кстати, в Вашем первоначальном высказывании шла вовсе не про обучение программистов рекурсии, а про понимание рекурсии вообще.

Так вот, рекурсия для понимания вообще - крайне простая штука. Она простая настолько, что это трудно осознать. Поэтому и уроборос, и другие примеры Вам кажутся бредом. А выдавание рекурсии за сложную вещь - это признак элитарности. Мол, "это сложно, но я-то знаю и вам объясню".

Что там с границами между рекурсией и итерацией - это чисто технические вещи, которые надо просто применять. И Абельсон с Сассманом применяют, не выпадая в схоластику.

Что касается обучения макросам, то я считаю это вредным занятием для подготовки кадров. На производстве д.б. стандарты, и им надо следовать. Если каждый будет фигачить свой макроязык, то это будет крайне неудобно поддерживать. В этом отношении, максимально простой, ёмкий и жёстко фиксированный язык типа оберона является наилучшим решением.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Вторник, 06 Октябрь, 2009 09:13 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Но всё равно останется проблема "Если каждый будет фигачить свою библиотеку процедур/классов, то это будет крайне неудобно поддерживать.".
Или Вы считаете, что одна проблема -- лучше чем две? :roll:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Вторник, 06 Октябрь, 2009 09:21 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Иван Кузьмицкий писал(а):
А вот рекурсия в природе и быту встречается часто, рекомендую почитать Анисимова "Мифы. Алгоритмы. Язык": http://lib.web-malina.com/getbook.php?bid=570

Данный адрес вызвал у моего Касперского панику и кучу мата. Типа этот сайт крадет пароли, пин-=коды и прочее...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Вторник, 06 Октябрь, 2009 10:09 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Иван Кузьмицкий писал(а):
Футбольный мяч - простая штука, а техника игры мячом может быть сложной.
Буду цитировать :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Вторник, 06 Октябрь, 2009 11:30 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
Илья Ермаков писал(а):
Макрос - это способ обработки текста.
Насколько мне известно: macros -> macro -> macrocommand. И в общем случае макросы к обработке текста отношения не имеют.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Вторник, 06 Октябрь, 2009 11:33 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
Кстати, не могу согласиться, что рекурсия - простая вещь. По крайней мере, при сравнении с конструкциями цикла и выбора. Но больше пока писать не буду, нужно продумать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Вторник, 06 Октябрь, 2009 16:45 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 20:31
Сообщения: 9
Откуда: Ульяновск
Valery Solovey писал(а):
Илья Ермаков писал(а):
Макрос - это способ обработки текста.
Насколько мне известно: macros -> macro -> macrocommand. И в общем случае макросы к обработке текста отношения не имеют.


Википедия писал(а):
Макрос (от англ. macros, мн.ч. от macro) — программный объект, при обработке «развёртывающийся» в последовательность действий или команд.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Вторник, 06 Октябрь, 2009 17:14 

Зарегистрирован: Понедельник, 02 Июнь, 2008 19:35
Сообщения: 305
Да, именно так. Не стоит путать макрокоманды С с макросами в том же Лиспе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Среда, 07 Октябрь, 2009 03:19 

Зарегистрирован: Суббота, 12 Май, 2007 08:41
Сообщения: 102
Откуда: Беларусь, Минск
Иван Кузьмицкий писал(а):
Я вообще не про макросы, если это ещё не заметно.

А, то есть цель последних n постов - помусолить тему, кто прав, кто виноват? А я то думал, мы тут о чём-то дельном говорим. Если Вы считаете, что в программировании есть некий "элитный" уровень, и тем более, что кто-то из нас уже достиг его, то Вы уже остановились в своём развитии. Рекурсия обладает своей степенью сложности, достаточной, чтобы меня о ней спрашивали на собеседовании, а 28-летний переученный программист затруднялся написать рекурсивный обход дерева. Это далеко не самая сложная вещь (скорее наоборот - базовая для многих областей) однако чтобы её правильно применять (читайте успешно создавать и использовать рекурсивные алгоритмы), не помешало бы понимать различия между циклическими и рекурсивными объектами (процессами, структурами), а также рекурсивным определением циклических процессов.
Однако всё это не имеет отношения к обсуждению. Рекурсию я привёл как пример темы, не менее сложной, чем макросы (читайте, макросы объявил не более сложными, чем рекурсию). И, не может быть (!), со мной наконец согласились, перестав обвинять макросы в сложности. Вместо этого, правда, назвали её вредной и сверхбесполезной при обучении, но с этим я спорить уже не собираюсь - не хочется ещё раз писать столько бесполезного текста.

Иван Кузьмицкий писал(а):
А я про обобщение рекурсии. Кстати, в Вашем первоначальном высказывании шла вовсе не про обучение программистов рекурсии, а про понимание рекурсии вообще.

Вот это вообще не понял. А как Вы собираетесь понять что-то, если не будете это изучать? Или Вы про разные формы оценки сложности понятия? Ну так я Вам предложил несколько вариантов, от колмогоровской сложности до обучения студентов, Вы не выбрали ни одного, я взял последний, раз уж тут много преподавателей.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Среда, 07 Октябрь, 2009 07:31 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Сама идея рекурсии проста.

Но вот научиться видеть, во что она развёртывается конкретно - действительно новичкам непросто. Могут писать "почти правильно", но недопонимать, как это выполняется; потестили - вроде работает, но ищет не первый, а, например, последний элемент в дереве...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Среда, 07 Октябрь, 2009 08:14 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
kreol писал(а):
Иван Кузьмицкий писал(а):
А я про обобщение рекурсии. Кстати, в Вашем первоначальном высказывании шла вовсе не про обучение программистов рекурсии, а про понимание рекурсии вообще.

Вот это вообще не понял. А как Вы собираетесь понять что-то, если не будете это изучать?


Напомню Ваши же слова:
Цитата:
Ну и как вы сможете объяснить не программисту, что такое рекурсия, когда её ни в природе, ни в человеческом обиходе вообще нет?


Пояснение сложности понимания макросов с помощью рекурсии как аналогии - неверное, потому что рекурсия в своей сути проста и природно/обиходно наличествует. Вот и всё.

P.S. Рекомендую всё же всерьез воспринимать Анисимова, который у Кнута учился...

Geniepro писал(а):
Но всё равно останется проблема "Если каждый будет фигачить свою библиотеку процедур/классов, то это будет крайне неудобно поддерживать.".
Или Вы считаете, что одна проблема -- лучше чем две? :roll:


На мой взгляд, всё же это разные вещи. Язык - формальная нотация и библиотека/класс - нечто, выраженное с помощью этой нотации. Достаточно знать нотацию, чтобы понять написанное. А макросы, в понимании меняющейся нотации, уже усложнят дело.
К тому же, читая текст программы, надо представлять себе, как он выполнится. Ну а макросы, по-моему, только затуманивают это дело.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Четверг, 08 Октябрь, 2009 01:45 

Зарегистрирован: Суббота, 12 Май, 2007 08:41
Сообщения: 102
Откуда: Беларусь, Минск
Иван Кузьмицкий писал(а):
Язык - формальная нотация и библиотека/класс - нечто, выраженное с помощью этой нотации. Достаточно знать нотацию, чтобы понять написанное. А макросы, в понимании меняющейся нотации, уже усложнят дело.

В Лиспе нотация - это скобки. Отличие от других языков только в том, что там все конструкции имеют одинаковую форму вместо того, чтобы резервировать специальный синтаксис для каждого нового понятия.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Четверг, 08 Октябрь, 2009 08:40 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Как уже отмечалось, сия красивая рафинированная математическая идея может быть довольно скользкой, из соображений реального мира.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О парадоксе Блаба и макросах
СообщениеДобавлено: Четверг, 08 Октябрь, 2009 10:46 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Не очень конкретно и конструктивно. Так вообще можно заявить, что "Жизнь -- штука вредная, от неё умирают"...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 143 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB