OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 19 Июнь, 2025 09:30

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




Начать новую тему Ответить на тему  [ Сообщений: 172 ]  На страницу 1, 2, 3, 4, 5 ... 9  След.
Автор Сообщение
 Заголовок сообщения: Сюда?
СообщениеДобавлено: Воскресенье, 30 Ноябрь, 2008 23:20 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1693
Хотел назвать сначала нечто навроде "блеск и нищета"....
Да и вообще не понятно - сюда с этим или как?...

История.

Парнишка из соседских пришёл с вопросами "по информатике". Парнишка не глупый, "с пониманием". Хочет стать или программистом или чем-то рядом. Пришёл с обстоятельно подготовленным списком вопросов в тетрадке (мама наставила: "дядя Володя - сурьёзный дядя, надо подготовиться"... :) )
Пацан довольно много читает и удивительно нипадецки серьёзно к своему увлечению относится.

Поговорили мы с ним несколько раз, я ему (аки "табуле расе") подсунул КП/ББ.
Явилось дарование через некоторое время и изрекло (дарованию - 13-14 лет):
"Вы понимаете, мне это не очень подходит.... Конечно, среда необычная, но можно привыкнуть... Непопулярная, но учиться программировать по нему можно... Но вот язык - СИЛЬНО простой... Даже замыканий нет...".
Причём, из дальнейшего разговора, человек прекрасно понимает, что это такое и где и как использовать. И довольно хорошие аргументы привёл, зачем ему это нужно. Я его спросил, а много у него знакомых ребят, которым это также нужно? :) Ответ был, вполне: "Ну не все же профессиональным программированием будут заниматься..."

Так вот я размышляю... Мэйнстрим можно ругать. Но пацаны вполне адекватные есть. Им это не для свистулек нужно. Они вполне осознанно создают "на-месте"определяемые блоки кода и вполне грамотно и умело их используют...

Не занижаем ли мы им планку? Навязывая стиль, при котором писанины больше (да и наглядность, частенько, страдает)???... Не недооцениваем ли мы мОлодежь... Наследие 90-х тяжко и уродливо, но и оно перевариться. Может уже сейчас на наших глазах "зёрна от плевел заканчивают отделяться" и всё пошло своим нормальным чередом?...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Воскресенье, 30 Ноябрь, 2008 23:52 
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Владимир, ну почему-то не верю я, что у этого пацана есть задачи, которые не решаются просто и красиво обычной структурной декомпозицией. А он клосуры комбинирует. Потому что аналитике не было где научиться(( Ему б послать эти клосуры и матаном и дискреткой заняться лучше, наверное.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 00:51 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1693
Илья Ермаков писал(а):
Владимир, ну почему-то не верю я, что у этого пацана есть задачи, которые не решаются просто и красиво обычной структурной декомпозицией. А он клосуры комбинирует.

Я тоже не поверил. А оно оказывается уже пытается игры писать!... :D Простейшие. С кубиками и мячиками на экране. А клосуры он использует для перебора всех предметов на предмет сравнения координат и поиска столкновения...
Вот и думаешь теперь себе... Пока мы тут копья ломаем, людены уже строем ходят рядом... Топают, а мы и не слышим... :shock: :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 03:01 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Мне кажется, что всё дело в базисе.

У человека в голове может поместиться весьма небольшой "базис" неких базовых понятий. Соответственно все прочие понятия он пытается разложить по вот этому вот базису. При формировании базиса приоритет имеет то, что было первым услышано/узнано/опробовано.

А обычно шанс быть услышаным первым имеет что-то что наиболее модно в нынешнее время, что на слуху. А нынче у нас входит в моду широкими шагами функциональщина применительно к императивщине. Экая смесь. Следовательно юные дарования именно о этих замыканиях и слышат (ибо о них кричат нынче громчее всего, о АТД и структурном подходе не кричат -- о нем все знают, это уже само собой, это не модно), начинает изучать, использовать, и, как следствие, МЫСЛИТЬ ими. Разлогать любую задачу используя в т.ч. и эту составляющую ЕГО базиса понятий.

В КП/ББ этой состовляющей нету. Образуется дырка. Неудобство. Приходится либо писать жутко кривой код, либо корежить базис (а изменение базиса граничит с изменением мировоззрения). Что многим неприятно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 08:34 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Илья Ермаков писал(а):
Ему б послать эти клосуры и матаном и дискреткой заняться лучше, наверное.
Лучший (из англоязычных, по-крайней мере) учебник по дискретной математике построен на основе Хаскелла, а уж насколько легко и естественно в Хаскелле делаются эти самые замыкание -- ни в каком другом языке так не делается...
Да, этому парнишке хорошо бы этот учебник изучать... Жаль, его ещё не удосужились на русский перевести...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 08:37 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Alexey Veselovsky писал(а):
о АТД и структурном подходе не кричат -- о нем все знают, это уже само собой, это не модно)

Скажите, ну почему те, кто не занимаются ФП, вечно находят какое-то противостояние между ФП и АТД со структурным подходом??? Ну нету такого противостояния, а все эти АТД с алгоритмами на ФЯ выражаются гораздо проще и красивее, чем на ваших оберонах...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 10:09 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Geniepro писал(а):
Alexey Veselovsky писал(а):
о АТД и структурном подходе не кричат -- о нем все знают, это уже само собой, это не модно)

Скажите, ну почему те, кто не занимаются ФП, вечно находят какое-то противостояние между ФП и АТД со структурным подходом??? Ну нету такого противостояния, а все эти АТД с алгоритмами на ФЯ выражаются гораздо проще и красивее, чем на ваших оберонах...


Гм. А где противопоставление? Возможно да, там оно представлено лучше. Но это не пиарится и шуму вокруг этого нет. Зато есть шум вокруг например замыканий. Это ФИЧА. Нынче модная фича. А АТД, структурный подход и проч -- не модная фича. Хоть в ФП хоть в императиве.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 12:00 
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Geniepro писал(а):
учебник по дискретной математике[/url] построен на основе Хаскелла, а уж насколько легко и естественно в Хаскелле делаются эти самые замыкание -- ни в каком другом языке так не делается...

Какое отношение конкретный наворот-механизм замыканий имеет к фундаменту ФП? Что, у нас в лямбда-исчислении или в Лиспе клосур стал понятием первого порядка?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 12:42 
Аватара пользователя

Зарегистрирован: Суббота, 19 Ноябрь, 2005 15:59
Сообщения: 803
Откуда: Зеленоград
Владимир Лось писал(а):
Явилось дарование через некоторое время и изрекло (дарованию - 13-14 лет):
"Вы понимаете, мне это не очень подходит.... Конечно, среда необычная, но можно привыкнуть... Непопулярная, но учиться программировать по нему можно... Но вот язык - СИЛЬНО простой... Даже замыканий нет...".

И "дядя Володя" тут же устыдился простоты? :)
А что нам дадут замыкания (по сравнению с объектами)?

Исторически в разных диалектах Паскаля были (псевдо-)замыкания на основе передачи вложенных процедур в качестве аргумента (до введения процедурных переменных, после чего это стало небезопасно).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 13:11 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Илья Ермаков писал(а):
Какое отношение конкретный наворот-механизм замыканий имеет к фундаменту ФП? Что, у нас в лямбда-исчислении или в Лиспе клосур стал понятием первого порядка?
:shock: Ну вапще-то да, всегда был и всегда будет...
Хотя, например, block closure (аналог лямбда-замыкания) так же был и в одном из прародителей ООП -- в Смоллтоке. Так что замыкания -- давно известный механизм, хотя общепринятым он до недавнего времени был только в ФП, но справедливость всё-таки иногда торжествует -- это понятие начало входить и в мейнстрим... Так же, как когда-то вошли в мейнстрим объекты ("замыкания для бедных")...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 13:27 
Аватара пользователя

Зарегистрирован: Суббота, 19 Ноябрь, 2005 15:59
Сообщения: 803
Откуда: Зеленоград
Geniepro писал(а):
Так же, как когда-то вошли в мейнстрим объекты ("замыкания для бедных")...
У меня сложилось прямо обратное впечатление: замыкания - объекты для бедных. :)
Из объектов мы можем строить любые структуры.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 14:41 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
AVC писал(а):
Geniepro писал(а):
Так же, как когда-то вошли в мейнстрим объекты ("замыкания для бедных")...
У меня сложилось прямо обратное впечатление: замыкания - объекты для бедных. :)
Из объектов мы можем строить любые структуры.

Ну это как в физике корпускулярно-волновой дуализм, так и тут тоже... дуализм...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 15:15 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Владимир Лось писал(а):
... А клосуры он использует для перебора всех предметов на предмет сравнения координат и поиска столкновения...
Вот и думаешь теперь себе... Пока мы тут копья ломаем, людены уже строем ходят рядом... Топают, а мы и не слышим... :shock: :D

Угу. Типичная реакция старшего товарища на юного "компьютерного гения".

А юный гений -- тоже вполне типично -- видит в сложности повод самоутвердиться. Тем более взрослые восхищаются.

Это, конечно, очень здорово, что парень над собой работает, а не в подворотне колется.
Только определить, что хорошо, а что плохо, в 13-14 лет *невозможно*.
Контупер затягивает немедленным откликом -- обратная связь самоудовлетворения.
А математику учить долго и нудно.
(Вон тут у нас тоже никак не хотят некоторые, не будем показывать пальцем...)

Если кто думает, что все эти замыкания -- challenge интеллекту, пусть раскроет любой учебник гомологической алгебры. Просто чтобы иметь полезную реперную точку.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 15:46 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Info21 писал(а):
Если кто думает, что все эти замыкания -- challenge интеллекту, пусть раскроет любой учебник гомологической алгебры. Просто чтобы иметь полезную реперную точку.
Замыкания -- мелочь, там нет ничего сложного. Если функция является в языке "гражданином первого сорта", то замыкания неизбежно сами собой появляются...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Понедельник, 01 Декабрь, 2008 18:00 
Аватара пользователя

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

Понятие "объект" (при всей шероховатости текущих вариаций), тем не менее, позволяет выражать конкретный системный, модельный смысл. Какой смысл относительно задач имеет Ваш сферический клошур в вакууме, в общем, понять гораздо труднее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Вторник, 02 Декабрь, 2008 07:51 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Илья Ермаков писал(а):
Какой смысл относительно задач имеет Ваш сферический клошур в вакууме, в общем, понять гораздо труднее.

Вам лично -- труднее, так как Вы не пользуетесь этим механизмом и не знаете, что это такое...
Вообще, мне непонятно, как можно возводить таинственность/сферичность вокруг этого простейшего и вместе с тем базового кирпичика ФП... Ведь это просто функция, которая имеет доступ к внутренним переменным и функциям другой функции, где они все определены, и которая может быть возвращена в качестве результата или передана как параметр в третьи функции... Что тут непонятного-то?

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Вторник, 02 Декабрь, 2008 11:32 
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Geniepro писал(а):
Ведь это просто функция, которая имеет доступ к внутренним переменным и функциям другой функции, где они все определены, и которая может быть возвращена в качестве результата или передана как параметр в третьи функции... Что тут непонятного-то?

Я хотел сказать, что мне непонятно (так вот сразу), какой момент из реальности этим моделируется. Сами по себе функции ФП - абстракции отнюдь не первого порядка, а замыкания - это уже асбтракции поверх этих функций...
Поэтому и сопоставлять с ООП некорректно. Оттого, что какой-то технический закидон можно эмулировать и через одно, и через другое?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Вторник, 02 Декабрь, 2008 11:42 

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


Я вот всегда рассматривал локальные переменные, как изолированные от основной программы. Для меня это способ обеспечить безопасность кода. Смысл этих переменных ограничен границами процедуры. Поскольку переменные локальные, то за пределами процедуры они смысл теряют.

Теперь, оказывается, могут быть такие closures, которые могут этот смысл передать наружу. Для меня (лично для меня), это непонятно. Зачем заключать внешний смысл в скорлупу, которая предназначена для хранения только внутренних смыслов?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Вторник, 02 Декабрь, 2008 12:02 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Илья Ермаков писал(а):
Сами по себе функции ФП - абстракции отнюдь не первого порядка...

В каком смысле?
ФП потому и называется функциональным, что в нём самое главное -- функции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сюда?
СообщениеДобавлено: Вторник, 02 Декабрь, 2008 12:14 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Иван Кузьмицкий писал(а):
Я вот всегда рассматривал локальные переменные, как изолированные от основной программы. Для меня это способ обеспечить безопасность кода. Смысл этих переменных ограничен границами процедуры. Поскольку переменные локальные, то за пределами процедуры они смысл теряют.

Теперь, оказывается, могут быть такие closures, которые могут этот смысл передать наружу. Для меня (лично для меня), это непонятно. Зачем заключать внешний смысл в скорлупу, которая предназначена для хранения только внутренних смыслов?

Иногда это может быть нужно...
Если сравнивать с ООП, то экспортируемые поля объекта тоже как-бы передают наружу некий внутренний смысл...

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


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

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


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

Сейчас этот форум просматривают: Google [Bot] и гости: 0


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

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