Вы видите копию треда, сохраненную 20 июля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
В первый раз я абсолютно всем возрастам давал C#, надеясь, что смогу нормально объяснить. Но наиболее мелким ублюдкам это было абсолютно неинтересно и они либо поливали от меня, либо приходили чисто гонять в каесик. Более старших, впрочем, удалось как-то заинтересовать. Во второй раз младшей аудитории я давал Scratch. Он зашёл на ура, но я не смог растянуть курс даже на 4 дня короткой смены, потому что в большинстве фич дети разобрались в первый же день. Старшим я всё так же давал Си шарп, но в этот раз было как-то более уныло.
Сейчас мне снова предстоит курс почти в три недели длиной, и мне нужны ваши советы. У нас есть 2 возрастных категории: условно 8-13 лет и 13-16. Вторым я хочу попробовать дать Питон, потому что его часто называют хорошим языком для школьников, к тому же можно будет подрубить какой-нибудь pygame и делать привлекательные для этих ублюдков приложения. Проблема лишь в том, что я сам его абсолютно не знаю и даже не представляю, откуда мне самому его выучить, так что буду благодарен любой литературе, особенно с уклоном в детей.
С первой группой всё ещё сложнее. Скретч я оставлю, он всем нравится, но на 3 недели его никак не растянуть. Пока есть мысля докинуть в нему Лого. Похож на Скретч, но надо писать код ручками, а не просто собирать блоки. Но тут тоже не очень однозначно. Можно дать Скретч первым, потому что он понятнее, но в Лого меньше функционала. Можно дать Лого первым, но детям будет сложно сразу вкатываться в письменный код. Я пока склоняюсь к среднему стулу: объяснить фичу на Скретче, чтобы они там блоки поцепляли, а на следующем занятии то же самое делаем руками в Лого, и так далее. Но даже так я не уверен, хватит ли мне материала на 3 недели. Что ещё можно предложить детям? Под конец начать им скармливать понемногу того же Питона? Или есть что-нибудь ещё интересное и подходящее под задачи?
Буду благодарен за любые пособия и советы
приезжай ко мне в лагерь, я те питона покажу.
Попробуй старшим дать пхп. Размажешь все это аштиэмэлем - уже нежели на 2 выйдет. Хотя я не знаю какая обучаемость в нынешних детей.
И еще, погугли про bot war robot wars, есть вероятность что зайдет.
Так Лого и есть ЧЕРЕПАШКА
А в пыхе я полный хуй, ни разу не работал, да и дизайнер из меня неоче, дети хуйню наверстают. Раньше был там препод HTML, охуенный мужик, но он шарил
Блджад, а заебись тема, мелких засранцев как раз увлечёт. Спасибо!
Питон неудачный вариант для обучения. Язык сложный, возможностей мало. Сейчас каждая макака учит пистон, а потом не знает что делать с ним. Лучше попробуй Haskell. Язык легкий и понятный даже школьнику. Если никогда не занимался программированием, то начинать лучше всего с Haskell - после него другие языки учатся быстрее.
По книгам, что бы подготовится. Если есть хоть немного знаний программирования, читай это: http://www.ozon.ru/context/detail/id/30425643/ Если совсем новичок, пойдет эта книга: http://www.ozon.ru/context/detail/id/28346038/ Ну и куча онлайн-учебников. Вот, например: https://anton-k.github.io/ru-haskell-book/book/home.html Хороший учебник, всё расписано подробно. Сам по нему учился. Рекомендую.
Тебе осталось несколько дней до отбытия в лагерь, а ты сам 0 в том что собираешься преподавать, классический пример образования в рашке. Просто съеби.
Core wars годная.
А почему не QBasic или Turbo-pascal? Выебнуться решил?
он ещё не понял что ломает жизнь детям. большая часть алгоритмических книжек на паскале, а этот пидорас питону всех учит.
>Через несколько дней
>хочу попробовать дать Питон
>я сам его абсолютно не знаю
>Через несколько дней
>младшей аудитории я давал Scratch. Он зашёл на ура
Прикольная штука. Зашел на сайт mit, а там коты летают. Именно так должен выглядеть ЯП!
Нет, все-таки охуительная штука.
а вот когда у меня сайт крашит браузер, я пишу угарные письма и получаю пермобан, за честность, иначе макаки так и не поймут.
>>770392
Имплаинг я не смогу за неделю+во время преподавания разобраться в том же питоне
>>770351
Паскалю их и в школке научат
>>770311
>QBasic
Ты хочешь детей вообще сломать как программистов?
>Ты хочешь детей вообще сломать как программистов?
Да, думаю надо учить детей, что программирование это копание в говне. Так туда пойдут только самые отбитые чуханы, которым туда и дорога, а нормальные люди выберут другую отрасль.
Посмотри etoys. Кажется, он более полноценный, чем скретч.
>C#
>уныло
Конечно им, блять, уныло, ёбаный ты задрот. Дети программировать пришли, а не в абстрактные фабрики и прочий жаваподобный ооп-мусор пердолиться.
Для тех, что постарше, могу посоветовать смолтолк вместо питона. По простоте и выразительности он сравним с питоном, но удобство и интересность разработки намного выше за счет поддержки т.н. интерактивного программирования. Возможность пощупать, исправить работающую систему - громадный плюс. Особенно при обучении.
Ну и плюс в сквике из коробки идут библиотеки для работы и с графонием, и со звуком.
>>770577
Алсо, можно попробовать elm: горячая замена кода есть, frp есть, грофен есть, работает в браузере и язык не такой задротский, как хаскел. Можешь, например, доработать марио http://debug.elm-lang.org/edit/Mario.elm и показать детям. Если их заинтересуешь и если они понимают физику 5х-6х классов,
то они тебе за вечер напердолят свой крузис.
Ну и научи их задачи решать, а не языку. Расскажи, как моды делать, напишите вместе какую-нибудь игру, юзерскрипты для сайтиков (можно сделать бота для браузерки), научи их игры крякать, в ядре линукса покопайтесь, объясни, как за бородой ухаживать.
ОП, попробуй Ruby. Или Boxer: http://web.archive.org/web/20150905171238/http://www.soe.berkeley.edu/boxer/20reasons.pdf .
Возьми что-нибудь игроделательное. Unity3D, game maker, love2d, dark basic, в /gd посоветуйся. Можно к майнкрафту моды пилить.
сук ждал эту пасту
> Но наиболее мелким ублюдкам это было абсолютно неинтересно и они либо поливали от меня, либо приходили чисто гонять в каесик.
Надо было Unity изучать, писать игори.
> Во второй раз младшей аудитории я давал Scratch.
Это совсем для маленьких, до 12 лет. Или для тян.
> game maker
Двачую, многие в детстве начинали с него (кроме совсем олдфагов, заставших DOS или Spectrum).
Unity сложнее, но интереснее.
> ОП, попробуй Ruby.
RPGMaker можно (там Ruby используется в качестве скриптового языка), но это на любителя.
Говорят, легче начинать именно с функциональных языков (Haskell или Lisp), т.к. они ближе к человеческому мышлению, а сложными кажутся только тем, кто выебал свой мозг императивной парадигмой.
ебать дебил.
я так и представляю, как мыслит человек
постирать(включить стиральную машину (
Наполнить машину вещами(взять вещи из таза),
засыпать порошок(вес вещей),
выбрать режим (мягкая стирка, 50 градусов)
))
вместо
Стирка:
1. возьмите вещи из таза и загрузите их в барабан
2. засыпьте порошок по весу стираемого белья
3. установите режим мягкая стирка, 50 градусов
4. включите стиральную машину.
Не, ну хуй знает, конечно, но второй вариант явно ближе к тому, как мыслит человек. В функциональщине все шиворот навыворот. Человек мыслит порядком действий, а не функциями.
Действительно, обоснуй. Почему функциональные языки считаются простыми?
Да, там ошибки отлавливать легче и параллелятся лучше, но именно с точки зрения восприятия я хуй знает.
Простых для понимания языков походу не существует, лол. С одной стороны у нас скобочки, с другой у нас 28 классов для поддержки правильной иерархии. Заебись, чё
Еще один даун с промытыми мозгами. Человек мыслит вещами (объектами) и связями между ними (функциями).
Стирка - это функция, определяемая последовательностью действий, принимающая аргументы (грязные вещи) и выдающая результат (те же вещи, только чистые).
Императивный стиль тяжел для понимания начинающим. Сколько школьников на уроках информатики осваивало запись X = X + 2? Это надо именно насиловать мозг, чтобы мыслить не вещами, а некими изменяемыми "коробками". Потому что память у человека ассоциатиативна и иммутабельна, а у машины - последовательна и мутабельна.
В Excel и Mathematica, например (инструментах для непрограммистов) используется функциональный стиль. Потому что формулы человек понимает лучше, чем скрипты и переменные.
> С одной стороны у нас скобочки
В Лого нет никаких скобок (хотя это и не совсем функциональный язык, смешанный как Лисп).
>>770771
ты сейчас описал объектное программирование, а не функциональное
Функциональное мышление - это когда
Мне нужно постирать
чтобы постирать, мне нужно включить машину
для того, чтобы включить машину, мне нужно положить вещи из таза в барабан, нужно установить режим мягкая стирка 50градусов, нужно засыпать порошок в резервуар, чтобы положить порошок, мне нужно отмерить его по весу вещей.
вот это и есть функциональное мышление.
Императивное же определяет некую последовательность действий, которую тебе нужно выполнить для достижения результата.
Естественно, структурное программирование позволяет выделить функции и упростить последовательность действий и, даже, при желании, привести все, что ты хочешь к первому варианту.
> одной стороны у нас скобочки
Как что то плохое. Скобки гораздо легче читаются, чем рабипитоновская поебень.
Императивное мышление:
Собрать всё бельё в тазик.
Пока в тазике есть грязные вещи, загружать их в стиралку.
Засыпать в стиралку порошок.
Закрыть дверцу.
Задать программу.
Функциональное мышление:
Отобразить пустой тазик в тазик полный грязных вещей (создав по пути новый тазик (старый можно оставить посреди комнаты - сборщик мусора (мамка) о нём позаботится)).
Создать новую стиральную машину с грязными вещами внутри.
Создать ещё одну с грязными вещами и стиральным порошком внутри.
Плоско отобразить стиралку, полученную на последнем шаге, в стиралку с заложенной программой.
>они ближе к человеческому мышлению
Действительно, ближе, а я и не замечал как-то даже.
А параметры у функции не последовательно вычисляются, наркоман? Императивное - работает с изменяемой средой. Человек в голове строит модели (объекты) и функции/формулы, описывающие зависимости между ними. Ему важно, что нужно сделать для достижения результата, а не как. Ту же последовательность действий человек может забыть, может перепутать ветви при возможности выбора, но сам набор необходимых команд обычно запоминает.
>>770873
> Отобразить пустой тазик в тазик полный грязных вещей
> Создать новую стиральную машину с грязными вещами внутри.
> Создать ещё одну с грязными вещами и стиральным порошком внутри.
> Плоско отобразить стиралку, полученную на последнем шаге, в стиралку с заложенной программой.
Прикинь, у тебя мозг именно так и работает. Вспомни, как люди складывают/перемножают числа и подумай, почему они с трудом перемножают в уме даже трехзначные числа, но легко распознают цифры на бумаге, а компьютер - наоборот.
>параметры у функции не последовательно вычисляются
При call-by-value последовательно, при call-by-name нет.
Охуевший?
> Even though by default Scala is call-by-value, it can also do call-by-name.[10] Today's .NET languages can simulate call-by-name using delegates or Expression<T> parameters. The latter results in an abstract syntax tree being given to the function. Eiffel provides agents, which represents an operation to be evaluated when needed
В call-by-need такакя же хуйня - а это и Haskell, И R, и Lazy<T> в шарпиках
Блеать, а как же божественный ТУРБО ПАСЦАЛЬ?! Нас что, зря дрочили им в универе? Диды преподавали и ты преподавай!
Только Sinclair Basic, только черно-белый телевизор. Ньюфажина тот, кто череп не рисовал.
Уже советовали, лол.
>А параметры у функции не последовательно вычисляются, наркоман?
Параметры функции могут вообще не вычисляться, наркоман
Это прикол какой-то? Сейчас выбираю, с чего начать и учебники по Хаскелю больше всего нравятся. Другое дело, что загуглил и о языке пишут абсолютно противоположное.
Да не годится он для детей, ибо графику (как самый наглядный и подстегивающий интерес результат) на нем без штанги не попрограммируешь, а списки чисел складывать и факториалы считать слишком уныло.
Бери, как я уже говорил, smalltalk, elm или что-нибудь другое с быстрой обратной связью, простое и доступное.
Очевидная Scala. Рекомендую сразу заинтересовать их этим https://github.com/milessabin/shapeless/wiki/Feature-overview:-shapeless-2.0.0 https://github.com/non/spire https://spark.apache.org/ http://doc.akka.io/docs/akka/2.4.7/scala/stream/stream-graphs.html
Мартин отклеился.
Ууух, сколько семантического шума! Хороший сиплюсплюс у хаскелистов получился
Никаких приколов. Хаскель - идеальный язык для детей и тех, кто не шарит в программировании и думает, с чего бы начать. Там всё для новичков сделано, сам посуди:
- учебники по Хаскелю - это книжки с картинаками: http://learnyouahaskell.com/ Сравни с каким-нибудь заумным талмудом по Джаве http://www.mindview.net/Books/TIJ/ - даже хуй поймёшь как его скачать.
- ghci - приложение, которое позволяет набрать программу на Хаскелле и сразу запустить её. Ага, попробуй сделать то же самое в Джаве. Даже если скачаешь и установишь крутую IDE вроде IntelliJ Idea, тебе всё равно надо знать, что такое JDK, как его скачать и установить, как настроить проект в этом приложении, где 100500 менюшек. Опытный программист на Джаве это быстро сделает, но он на то и опытный программит, он знает, куда жать, а новичек хуй разберется.
- Стандартная прелюдия: https://hackage.haskell.org/package/base-4.9.0.0/docs/Prelude.html - модуль, который по умолчанию импортируется в хаскель-программу, и в котором есть всё, что нужно новичку. Т.е. если тебе нужно написать программу, которая что-нибудь спрашивает у пользователя, что-то вычисляет и что-то пишет в файл или на консоль, в прелюдии это всё уже есть, не надо думать, какие модули подключить, просто пиши программу и не парься. Просто сравни хелловорлды на Хаскелле и Джаве. Хаскель:
[code]main = putStrLn "Hello, World!"[/code]
Единственное, что тут нужно знать, что main - это специальная функция, которая вызывается при запуске твоей программы. Ну она и называется "main" - типа главная функция. А дальше просто положить-стринг-строку и сама строка "Hello, World!". А теперь Джава:
[code]
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World");
}
}
[/code]
И тут сразу зоопарк вопросов. А что значит class (нужно знать ООП)? А что значит public (нужно знать области видимости)? А что значит static (нужно знать, чем class-methods отличаются от object-methods)? А что есть void? Ну и сам метод println в объекте out модуля System, это всё нужно знать.
- Единый репозиторий. Когда-нибудь ты превратишься из новичка в программиста, которому нужно решать практические задачи. И у программиста нет времени, чтобы писать всё самому на функциях стандартной прелюдии, ему нужно взять уже написанные библиотеки, связать их между собой и получить готовую программу. У тут Хаскеля есть https://hackage.haskell.org/packages с полным списком библиотек, всеми версиями, исходниками и документацией. Всё в вебе, ты можешь просто щекнуть мышкой и посмотреть любой исходник, или посмотреть, насколько популярна библиотека, как часто её скачивают. Также есть https://www.stackage.org, где есть тулза для сборки Хаскель-программ и самые свежие билд-планы, т.е. указания, какие версии библиотек с какими дружат. Разумеется, всё это работает автоматически, тебе не надо заморачиваться за версии, ты просто пишешь stack build и выгружается подобранный мейнтернерами стека план, в котором указаны совместимые между собой версии библиотек и твоя программа собирается. А что есть в той же Джаве? Есть http://www.apache.org . Есть https://spring.io . Есть еще хуй пойми что. Есть еще Maven, в котором ты должен прописать все репозитории и используемые версии. В итоге всё это из говна и палок как-то собирётся. Но только в том случае, если ты сам в этом зоопарке нихуёво шаришь и сделал всё правильно.
Резюмируя: Хаскель - это простой, заточенный под новичков язык, с простой инфраструктурой, где всё максимально автоматизировано и сделано под людей.
Постскриптум: А вот некоторые говорят, что Хаскель - это сложный язык. А вот в Хаскеле есть экзистенциальная типизация, охуеть заумное слово! А еще в Хаскелле есть генерализованные алгебраические типы, охуеть как сложно, высшая алгебра прямо! А я вот вас спрошу, а есть ли она там? Ну напишите мне эту самую программу с экзистенциальной типизацие, ну, ну?! И тут сразу рученки тянуться вхуячить {-# LANGUAGE Rank2Types #-} {-# LANGUAGE TypeFamilies #-} и тому подобное. И здесь я соглашусь, в Хаскелле полно расшений, и многие из них заумные, потому что супер-крутому программисту нужны заумные расширения языка, иначе ему просто не хватит выразительных средств. В Хаскелле эти средства есть. Но по умолчанию они все отключены. А супер-крутой программист включает только то, что ему надо. В итоге, сложный ли Хаскель? Да нет, нихуя не сложный, он напротив очень прострой по сравнению с той же Скалой, потому что все выебоны в нём по умолчанию выключены и включаются вручную, когда они нужны. Т.е. когда какой-нибудь выебонщик что-то хуячит, он явно указывает, какие сложные фишки языка надо включить, в итоге каждый модуль содержит минимально-необходимое количество сложных фишек, все остальные попросту отрублены.
Никаких приколов. Хаскель - идеальный язык для детей и тех, кто не шарит в программировании и думает, с чего бы начать. Там всё для новичков сделано, сам посуди:
- учебники по Хаскелю - это книжки с картинаками: http://learnyouahaskell.com/ Сравни с каким-нибудь заумным талмудом по Джаве http://www.mindview.net/Books/TIJ/ - даже хуй поймёшь как его скачать.
- ghci - приложение, которое позволяет набрать программу на Хаскелле и сразу запустить её. Ага, попробуй сделать то же самое в Джаве. Даже если скачаешь и установишь крутую IDE вроде IntelliJ Idea, тебе всё равно надо знать, что такое JDK, как его скачать и установить, как настроить проект в этом приложении, где 100500 менюшек. Опытный программист на Джаве это быстро сделает, но он на то и опытный программит, он знает, куда жать, а новичек хуй разберется.
- Стандартная прелюдия: https://hackage.haskell.org/package/base-4.9.0.0/docs/Prelude.html - модуль, который по умолчанию импортируется в хаскель-программу, и в котором есть всё, что нужно новичку. Т.е. если тебе нужно написать программу, которая что-нибудь спрашивает у пользователя, что-то вычисляет и что-то пишет в файл или на консоль, в прелюдии это всё уже есть, не надо думать, какие модули подключить, просто пиши программу и не парься. Просто сравни хелловорлды на Хаскелле и Джаве. Хаскель:
[code]main = putStrLn "Hello, World!"[/code]
Единственное, что тут нужно знать, что main - это специальная функция, которая вызывается при запуске твоей программы. Ну она и называется "main" - типа главная функция. А дальше просто положить-стринг-строку и сама строка "Hello, World!". А теперь Джава:
[code]
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World");
}
}
[/code]
И тут сразу зоопарк вопросов. А что значит class (нужно знать ООП)? А что значит public (нужно знать области видимости)? А что значит static (нужно знать, чем class-methods отличаются от object-methods)? А что есть void? Ну и сам метод println в объекте out модуля System, это всё нужно знать.
- Единый репозиторий. Когда-нибудь ты превратишься из новичка в программиста, которому нужно решать практические задачи. И у программиста нет времени, чтобы писать всё самому на функциях стандартной прелюдии, ему нужно взять уже написанные библиотеки, связать их между собой и получить готовую программу. У тут Хаскеля есть https://hackage.haskell.org/packages с полным списком библиотек, всеми версиями, исходниками и документацией. Всё в вебе, ты можешь просто щекнуть мышкой и посмотреть любой исходник, или посмотреть, насколько популярна библиотека, как часто её скачивают. Также есть https://www.stackage.org, где есть тулза для сборки Хаскель-программ и самые свежие билд-планы, т.е. указания, какие версии библиотек с какими дружат. Разумеется, всё это работает автоматически, тебе не надо заморачиваться за версии, ты просто пишешь stack build и выгружается подобранный мейнтернерами стека план, в котором указаны совместимые между собой версии библиотек и твоя программа собирается. А что есть в той же Джаве? Есть http://www.apache.org . Есть https://spring.io . Есть еще хуй пойми что. Есть еще Maven, в котором ты должен прописать все репозитории и используемые версии. В итоге всё это из говна и палок как-то собирётся. Но только в том случае, если ты сам в этом зоопарке нихуёво шаришь и сделал всё правильно.
Резюмируя: Хаскель - это простой, заточенный под новичков язык, с простой инфраструктурой, где всё максимально автоматизировано и сделано под людей.
Постскриптум: А вот некоторые говорят, что Хаскель - это сложный язык. А вот в Хаскеле есть экзистенциальная типизация, охуеть заумное слово! А еще в Хаскелле есть генерализованные алгебраические типы, охуеть как сложно, высшая алгебра прямо! А я вот вас спрошу, а есть ли она там? Ну напишите мне эту самую программу с экзистенциальной типизацие, ну, ну?! И тут сразу рученки тянуться вхуячить {-# LANGUAGE Rank2Types #-} {-# LANGUAGE TypeFamilies #-} и тому подобное. И здесь я соглашусь, в Хаскелле полно расшений, и многие из них заумные, потому что супер-крутому программисту нужны заумные расширения языка, иначе ему просто не хватит выразительных средств. В Хаскелле эти средства есть. Но по умолчанию они все отключены. А супер-крутой программист включает только то, что ему надо. В итоге, сложный ли Хаскель? Да нет, нихуя не сложный, он напротив очень прострой по сравнению с той же Скалой, потому что все выебоны в нём по умолчанию выключены и включаются вручную, когда они нужны. Т.е. когда какой-нибудь выебонщик что-то хуячит, он явно указывает, какие сложные фишки языка надо включить, в итоге каждый модуль содержит минимально-необходимое количество сложных фишек, все остальные попросту отрублены.
> есть хоть одна причина
Говорю же: он прост для вкатывания и освоения основ программирования. Я предложил его как вариант для старших школьников. Никто не заставляет на нём работать.
> зоопарк аналогичных говн
Например?
>А вот некоторые говорят, что Хаскель - это сложный язык.
И правильно говорят. Хаскель прост ровно до тех пор, пока ты считаешь факториалы, реальный же код писать невозможно из-за тех самых супер-программистов, которым так и не терпится хоть куда-нибудь воткнуть крутой йобаморфизм, о котором они только что узнали. В итоге 90% библиотек - неоправданно переусложненный шлак с зашкаливающим количеством сущностей (лишних в основном) на строчку кода либо просто сырые недоделки. Я одно время угорал по хаскелю, но меня заебало часами червить документацию очередной решающей тривиальную проблему библиотечки, чтобы разобраться в заумных изъёбствах её автора.
Котлин прост для жаба-программистов, а не для вкатывания.
Scheme. Точнее, Racket. Для обеих возрастных групп. Там тебе и графическая поебень и все, что захочешь. Со старшими можешь и сикп порешать, если там не лагерь дцпшников. Только не засирай неокрепшие умы ООП ссаниной, прошу. И парашу со сломанным скоупингом aka питон давать не смей.
>Там тебе и графическая поебень
Насколько я помню, она была то ли сырая, то ли жутко медленная, то ли просто ебанутая. В общем, непригодная для использования.
А в котлине есть что-то уровня https://github.com/scalaz/scalaz ? А то дети не заинтересуются.
А, вспомнил! FrTime была сырая, хуйня для графена медленная и с не самым удобным api (могли бы и edsl запилить, ведь ракета так для этого подходит), ну а ебанутой, видимо, была сама ракета.
>ну а ебанутой, видимо, была сама ракета
Уж не знаю. Когда смотрел? Может допилили с тех пор. Глянь еще раз. Для твоих целей, по моему, лучше не найти.
Олсо, подумай насчет Go.
Я не ОП, а тот анон, что советовал ему элм или смолтолк
Я тоже считаю что shapeless лучше
лучшие ЯП для обучения это:
Logo (https://goo.gl/5Lql3Y) - тут мы учимся рассуждать, юзать рекурсию, программировать мультиагентные системы (https://goo.gl/ZjLSyl)
Scratch (https://goo.gl/VInUxk) - продолжение идеи Logo, только ещё и EventDriven.
Oz (https://goo.gl/xBcDdv) и его реализация Mozart - приучает к нормальному восприятию конкурентного dataflow программированию.
В общем-то ещё можно показать смолток.
Лол, императивный дебилоид решил блеснуть знаниями.
Все твои последовательные тумба-юмба инструкции "Взять копьё; Убить мамонта; Съесть мясо" - это как раз противоестественная хуита для специально выведенных компьютерных опущенцов байтоёбов, мыслящих как машина. Заметь, ни в математике, ни в физике такой примитивной хуйни нет, потому что человек мыслит абстрактно, и только червь-байтоёб мыслит командами.
И в мышлении нормального человека не будет никаких низкоуровневых "создать", "удалить", "пока", "старая версия", "сборщик мусора". И кстати, персистентные структуры как раз естественны, ведь прибавив к 1 ещё 1, ты не уничтожаешь единицу, она по прежнему продолжает существовать. Это только в мире процедурных опущей с их i++ колдунствами, переменная это не переменная в нормальном смысле, а специальная коробочка куда что-то можно положить, потом забрать, потом положить что-то ещё. И не будет всего этого убогого перекладывания кирпичиков, а будет просто контейнерный тип, одна свертка и отображение. Потому что это обобщенные понятия, которые работают везде, не важно что нужно делать, постирать бельё, собрать результаты двух парсеров, или посчитать сумму двух сигналов. Этому учат с самого детства на уроках алгебры. Поиск закономерностей это и есть важнейшая часть человеческого обучения. И только отмороженный инженегр-аутист, ничему не учится, так и продолжая перекладывать какашки с места на место своими инструкциями.
>для специально выведенных компьютерных опущенцов байтоёбов, мыслящих как машина
Почему тогда в кулинарных рецептах тоже императивный стиль? Домохозяйки -- байтоёбы?
Процесс готовки по рецепту тут как раз аналогичен выполнению последовательности инструкций процессором. А вот процесс придумывания нового блюда как раз подключает декларативное мышление и использование известных закономерностей (x зависит от y и z по таким то правилам). А написание уже готового рецепта - это компиляция нормальных декларативных рассуждений в набор команд для тупого исполнителя.
>Все твои последовательные тумба-юмба инструкции "Взять копьё; Убить мамонта; Съесть мясо" - это как раз противоестественная хуита для специально выведенных компьютерных опущенцов байтоёбов
Просто ты, дружок, забыл уже, как чему-то учился. На самом деле, это печально. Сие значит, что ты в развитии остановился очень давно. Не важно, умственный ли скилл ты учишь, или физический, но делается это именно так. И лишь после определённых часов практики тьы можешь, наконец, "мыслить абстрактно", когда ты настолько до автоматизма задрочил мелкие действия, что это для тебя "пойти в магазин", а не "выйти на лестницу, согнуть ногу, перенести вес... и так далее".
Там не императивный, тащемта. Определяются лишь зависимости между шагами, а как и когда их выполнять - решает он сам исполнитель.
>Очистить чеснок |> порубить мелко |> обжарить |> добавить (мясо |> промыть |> нарезать)
Где |> имеет тип a -> (a -> b) -> b
Т.е. ты думаешь, чтобы прийти к понятию числа 3, нужно сначала сначала увидеть три камня, и три яблока и три ещё чего нибудь? А так просто умозрительно это сделать никак? И чтобы прийти к понятию вычитания нужно сначала взять три яблока и одно съесть чтоб стало два? Вообще я не специалист по обучению, может действительно ребёнок первое время учится исключительно восходящим путём. Но ведь потом он накапливает достаточно закономерностей, потом учит математику, логику, другие точные науки. И дальше не обязательно каждую вещь сначала делать, чтобы потом выводить общение. А наоборот сначала изучить общие правила и потом уже по Top-Down применять их на чем то конкретном. В общем-то этому в вузиках и учат.
>В общем-то этому в вузиках и учат.
Учат, да только императивное быдло там нчиего понять не способно и поэтому механически заучивает действия, которые приводят к сдаче контрольных и переходу с курса на курс. Тупые, жрущие говно быдлостуденты.
>три камня, и три яблока и три ещё чего нибудь? А так просто умозрительно это сделать никак?
Именно так. Число само по себе - не число чего-то, а число в отрыве от этого чего-то, даже концепция количества - это абстракция, обобщение.
К интуитивному понятию любой абстракции обычно приходят через опыт работы с частными случаями, которые - как становится в какой-то момент понятно - могут быть обобщены и абстрагированы в какое-то понятие более высокого уровня.
Математики в своих книжках и статьях сразу выплескивают на читателя определение абстракции, из чего у неподготовленного читателя может сложиться впечатление что это естественный путь. Но это не так, сами же математики, если им нужно работать с какой-то незнакомой им областью, после ознакомления с определениями аккое-то время (иногда довольно большое) отводят себе именно на выработку интуиции о понятиях этой области - это можно делать разными способами, например порешать какие-то задачки из нее, подоказывать теоремы - все это сводится к тому чтобы покрутить в руках (голове) разные частные проявления тех абстракций, которые им нужны.
С монадами, паттернами, и многими другими абстракциями в программировании, например, хорошее, годное их понимание приходит после того как человек с десяток раз напрограммировал разные варианты чего-то очень похожего, и ВНЕЗАПНО обнаружил что блджад, да я что-то почти такое, только в полосочку уже писал несколько раз - после этого он задумывается о том чем же именно оно было похоже между собой и выделяет абстракцию.
>Олсо, подумай насчет Go.
Когда мне было 15 лет, и я ездил в лагерь вожатый всё время как-бы невзначай крутился возле компа, и всё спрашивал, почему ты не передаёшь указатель на структуру, почему передаешь саму структуру? первый раз я не ответил, так он начал стучать по столу, и орать, что ты там итерируешь, почему у тебя потребление памяти превышает 14 килобайт? начал материться, и говорить, что вообще на Си переведёт всю группу, будем вручную память очищать, алсо, вожатый ругался, если я передаю аргумент не как указатель , причём не просто при объявлении метода структуры, а везде, мотивировал это тем, что памяти меньше нужно, и сам потом мне говорил: вот я объявлю функцию и и передаю ей указатель, и ты так делай!
однажды я программировать сел, и слышу, вожатый где-то у двери встал в отдалении, ну я скомпилировал всё, и на пол накарачики присел, а там щель очень широкая снизу у двери, ну я в щель и смотрю, а там вожатый на карачиках сидит и в щель смотрит, и мне говорит: ты чё? ебанутый? чё ты там делаешь?
вожатый кстати всё время какие-то методы у структур объявляет, чтобы писать было удобдно, пишет по 5 программ в день, а потом говорит, что пальцы жжёт, и ещё монады любит. пиздец короче!
реальная история. я не тролль
Пробовал подрочить на монаду? Есть правило 34 с монадами?
Зачем тогда спрашиваешь про готовку, если и без меня там видишь монады?
>В итоге 90% библиотек - неоправданно переусложненный шлак с зашкаливающим количеством сущностей (лишних в основном)
Если 90% библиотек - неоправданно переусложненный шлак с зашкаливающим количеством сущностей тебе не составит труда назвать, скажем 20 таких библиотек из перечисленных тут https://hackage.haskell.org/packages/ нескольких тысяч, а так же объяснить, какие именно сущности в них лишние? Не то, чтобы я не доверял твоему экспертному мнению, но просто если ты такие вещи пишешь, тебе наверное очень легко будет ответить на мой вопрос, о великий гуру Хаскеля.
Но у тебя две императивные программы написаны. И та и другая у тебя - последовательности действий, видимо ты еще не освоил функциональное мышление.
>неоправданно переусложненный
Оправданно. Попробуй сделать все то же самое, но значительно проще. Сложней сделать несложно - Scala тому пример.
Но действительно
> Once you manged to grok the basic stuff about Typeclasses, Functors, Applicative, Monads, Monad Transformers, different notions of recursion, a minimal understanding of how lazyness can be quite tricky, the multitude of different ways of how errors and exceptions are handled in various libraries, and perhaps basic STM, Haskell has a tendency to become even more complex. If you want to do efficient IO and prevent space leaks, you have to learn about Iteratees, Enumerators and Enumeratees. If you wish to create GUIs in a bearable manner, its imperative that you learn about FRP and Arrows eventually. Then there's the innumerable amount of language extensions to Haskell of the GHC flavor, each of which comes with only scarce documentation and examples, but with a lot of theory (Fundeps, Type families, Existential types, GADTs). But there's more: Comonads, Kleisli Arrows and probably things I haven't even heard about. The whole point being: If you want to be able to handle 'real world stuff' in Haskell, its not enough to stay 'mostly pure' and use StateT, unfortunately. I like Haskell - I shudder when I think of C, C++ and Java - but at this point in time I find it overwhelming
>Попробуй сделать все то же самое, но значительно проще.
Дело в том, что то же самое иначе не сделаешь. Упрощать нужно не реализацию, а сам дизайн библиотеки. Точнее, не упрощать, а полностью переделывать с нуля.
Все. Так я прям всё и брошу, начну шерстить хакейдж, займусь перепроектировкой библиотек и всё ради ублажения праздного интереса анона, который ещё и, возможно, сектант и меня попросту не услышит.
Почему ты продолжаешь набрасывать делая вид, что не заметил мой вопрос >>773135 ? Он слишком неудобный?
Тебе не надо ничего шерстить, ты сказал, что там "90% библиотек - неоправданно переусложненный шлак с зашкаливающим количеством сущностей (лишних в основном)". Раз ты так сказал, ты очевидно, уже прошерстил весь хакейдж, или по крайней мере большую его часть, поэтому тебе не составит труда привести пример, допустим 20 библиотек и лишних сущностей в них. Есть, конечно, еще один вариант - ты просто пиздабол, который пиздит о чём понятия не имеет, но ты ведь не такой, правда?
Потому что с того времени прошло года три-четыре, экосистема хаскеля уже давно позабылась, не говоря уже об архитектурных изъебствах отдельных библиотек.
Так она короткая, если не дебил, то часа за 3 можно пройти.
Хотя если чисто давать там по одной миссии в день, то сойдет.
Но ведь ты ведь не на экзамене с ручкой и читым листком бумаги, чтобы оправдываться перед профессором в духе "я знаю ответ, но забыл!" Тебе достаточно зайти на http://hackage.haskell.org/packages/ и открыть несколько популярных библиотек. Там ведь 90% библиотек - неоправданно переусложненный шлак с зашкаливающим количеством сущностей, поэтому найти их не составит для тебя труда. Если, конечно, ты вообще что-то знаешь о языке.
Ну по памяти в двух словах можешь рассказать, в чем заключались архитектурные изъебаства отдельных библиотек.
У тебя там ВРЁТИ что ли? Предлагаю тебе самому провести эксперимент: выбери какую-нибудь простую задачу (будь то пара содомирующихся фигурок на черном экране, работа с базой данных или ещё что-то) и реши её на хаскеле и каком-нибудь другом, более подходящем языке, а затем сравни затраченные усилия.
>>773196
-> >>773177
>>773198
Сравни хотя бы ямпу в хаскеле и реакт (или как он там назывался) в окамле.
>У тебя там ВРЁТИ что ли?
Нет, просто было интересно, можешь ли чем-нибудь подтвердить свой наброс. Ну не можешь, так не можешь.
>Предлагаю тебе самому провести эксперимент
Проводил уже неоднократно.
>Сравни хотя бы ямпу в хаскеле и реакт
Давай сравним.
Ну сравни, потом расскажешь. Можешь ещё потом для сравнения взять frp из elm и racket.
помню была какая то игра с блоками, наверно вроде скретча
составляешь из них алгоритм, если правильно - высирает тебе письменное решение на таком-то ЯП
Но зачем мне их сравнивать, ведь это ты спизданул что "90% библиотек - неоправданно переусложненный шлак с зашкаливающим количеством сущностей (лишних в основном)", а теперь пытаешься увильнуть от ответсвенности.
Зачем? Не знаю, зачем тебе это. Ты же, наверное, не просто так прилип как банный лист к жопе и уже второй день отлипнуть не можешь. Доказывать я тебе ничего не собираюсь, потому что 1) мне лень снова ковырять библиотеки, вникать в документацию, потом ещё тебе всё по полочкам раскладывать, ведь сам ты, как выяснилось, провести анализ и сравнение не можешь, несмотря на свою заинтересованность, 2) есть подозрение, что эти усилия будут напрасны ввиду твоей фанатичности, о которой намекают твои хвалебные оды хаскелю.
Так что, хочешь докопаться до истины - валяй: сравнивай библиотеки, подсчитывай сущности, оценивай трудозатраты на изучение документации, что хочешь, то и делай, но сам. Ну а я выводы для себя уже давно сделал.
Ну или просто забудь и продолжай свою пропагандистскую форумную деятельность, пока не разочаруешься в своем предмете обожания после первого более-менее реального проекта.
я не он
> If error handling is so great in Haskell, then why am I putting it under the complaints section? Well, it turns out that not everyone seems to think it’s as great as I make it out to be because people seem to keep writing Haskell APIs that throw exceptions!
> Despite what some purists would have you believe, Haskell has exceptions, and they are not uncommon. Lots of things can throw exceptions, some of which are probably reasonable. Failing to connect to a database is a pretty catastrophic error, so it seems fair that it would throw. On the other hand, inserting a duplicate record is pretty normal operation, so it seems like that should not throw.
> It’s also probably worth noting that exceptions in Haskell can be thrown from anywhere, even pure code, but can only be caught within the IO monad. This is especially scary, but I’ve seen it happen in actual libraries out in the wild, even ones that the entire Haskell ecosystem is built on. One of the crowning examples of this is the text package, which provides a function called decodeUtf8 to convert bytestrings into text. Its type is very simple:
> decodeUtf8 :: ByteString -> Text
> But wait, what if the bytestring is not actually a valid UTF–8 string?
>A couple weeks later, we found that providing this function with invalid data was returning HTTP 500 errors. Why? Our error handling was meticulous! Well, the answer was a decodeUtf8 call, hidden inside of the JWT library. This is especially egregious, given that the API it exposed returned a Maybe anyway!
https://lexi-lambda.github.io/blog/2016/06/12/four-months-with-haskell/
>не просто так прилип как банный лист к жопе
Тебя за язык никто не тянул. Ты сделал заявление, думаю многим читателям было бы интересно, стоят ли за ним реальные знания, или это просто пук в воду. Получается, что пук в воду.
>Доказывать я тебе ничего не собираюсь, потому что
Ты не знаешь языка и библиотек, вот единственная причина.
Нет, я решил проверить, есть ли за твоим заявлением реальные факты, или это просто наброс. Выяснилось, что просто наброс.
Не доказывает, показывает. Проблему с хаскельными библиотеками по имени "дохуя эксепшнов вылазит где не плюнь".
http://pythontutor.ru если будешь давать ублюдкам ЗМИЯ, http://informatics.mccme.ru тут можно глянуть обучение на олимпиадных задачках, ботанам понравится.
let tazik = put_to pustoi_tazik @@ List.filter (fun belie -> belie.gryaznoe) vse_belie in
let stiralka = put_to pustaya_stiralka @@ dostat'_iz tazik in
let stiralka1 = add_poroshok stiralka poroshok in
...
?
Окамл
https://racket-lang.org/
http://docs.racket-lang.org/quick/
Попробуй racket. Как раз для этого и создавался.
Кармак рекомендует, его огрызок мелкий на нем пишет.
При чем здесь дети? Я для себя хотел выбрать первый язык, а тут, хотя тема про увлечение детей программированием, на эту тему жаркие споры.
>>774862
NET. POCHEMU VY SPRASHIVAETE?
Ну для себя можешь и хаскель взять, а можешь и общелисп какой. Да хоть даже смолтолк
Или даже форт, или ребол/ред
Выше писали, мол, "язык X портит восприятие". Вообще, часто читал, что люди последующие ЯП изучали в контексте первого. Другое дело, что тут были хорошие, как мне показалось, аргументы в пользу Хаскеля, а противник не смог ничего конкретного противопоставить. Потому и уточнил.
С хаскелем ты не найдешь для себя вводной в программирование литературы как минимум.
В MIT, кажется, были вводные курсы на ocaml. Можешь их поискать.
Ну и сам язык, окамл, получше будет в плане практичности.
>вводной в программирование литературы
http://www.ozon.ru/context/detail/id/28346038/ объясняются все принципы программирования с самого начала.
Это не тот язык, которым среднестатестического долбоеба 8-16 лет обучишь за 3 недели, тем более поддерживая интерес.
Хотел начать с "Learn You a Haskell for Great Good!". В введении с оговоркой написано, что можно и первой книгой по программированию брать. Или лучше Lisp (Common?) тогда?
>>774891
Именно вводные не смог найти.
Конкатенативный стиль:
Бельё в тазик собрать
Из тазика в машину загрузить
Порошок в стиралку засыпать
Стиралки дверцу закрыть
Стиралки программу задать
И всё это кратко, и даже вполне функционально.
Вот, держи: http://kittenlang.org/
Лучше в явном стиле J напишу:
задать&программу закрыть&дверцу засыпать&порошок стиралку загрузить тазик собрать бельё
2) Если лагерь технарской направленности, притащи Ардуину со светодиодами. Заставь светодиоды светофором мигать, это строчек в 10-20 делается. На двухстрочный ЛСД-дисплей тоже може ардуиной "ты хуй" вывести и в корпус от какого-нибудь школьного дерьмометра засунуть.
Важнее не какой язык, я что писать.
Если даёшь C#, то показывай Unity. Можешь дать Java и учить делать плагины к майнкрафту. JS опять же может хорошо зайти, если делать игры.
А мне похуй, я вкатываюсь. И ты так делай
Язык тоже важен. От него зависит, сколько лишних сущностей нужно изучить, чтобы начать писать, насколько велика будет задержка обратной с программистом связи и т.д., и т.п.
Cамое то для сраных детей. Если денег на айпады нет, то можно какие-нибудь колоботы и аналоги поискать.
Этому говну полезному пусть в вузиках обучаются. Сейчас дать им просто алгоритмизирование зойдачек уже достаточно.
Ну это само собой, но я то представил не визуальное.
Уже сами японцы не хотят писать на Руби. Хотя годный был язык, и детей на нем вполне можно было обучать, как раньше на Бейсике. Что сейчас осталось, только Питон и Го?
Си, увы, нет. Возьмем самый простейшую программу:
#include <stdio.h>
int main(int argc, char* argv[])
{
printf("Hello World!\n");
return 0;
}
Детям придется объяснять:
1. Что такое заголовочные файлы и препроцессор.
2. Что такое типы данных.
3. Что такое массивы и указатели.
4. Что такое спецсимволы.
5. Что такое функции и возвращаемые значения.
Сомневаюсь, что кто-то осилит все это на первом уроке.
#include <stdio.h>
main:
printf("Hello world");
>просто вставьте эту строку и пока о ней забудьте
Там всю программу придется забывать, кроме одной строки. И вообще, непонятная магия ("это тебе знать пока не нужно") - не лучший способ обучения программированию. Программист должен знать, как работает каждая его строчка, чтобы с легкостью вносить изменения и править баги. Иначе получаются быдлокодеры, которые не могут на собеседовании рассказать, как в Java устроен HashMap и чем он отличается от TreeMap.
Дети тем более будут задавать вопросы, они очень любопытны. В итоге придется объяснять все.
А пацаны в гарварде-то и не знают. Пожалуйста, не пиши больше хуйни в этот раздел.
В гарварде учатся школьники, не умеющие программировать? Пожалуйста, не пиши больше хуйни в этот раздел.
Алсо, курс из MIT для начинающих именно на Python:
https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-8
Внезапно, и в Гарварде тоже:
https://www.summer.harvard.edu/courses/introduction-programming-python/33562
Про C же ничего найти не удалось. Так что не придумывай и не пиши хуйню.
Студенты, которые компьютера могли в глаза до курса не видеть. Кушай https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
Если две извилины есть, то можно за пару лет в программирование вкатится, конечно суперзвездой не станешь, но вполне сможешь реализовать свои проекты. Так что 30 это еще совсем не поздно
Питон один из самых легких языков. Возможностей мало, хех да на нем почти все задачи решать можно.
Там так и сказано в первой лекции?
>просто вставьте эту строку и пока о ней забудьте
Сомневаюсь, что профессора в Гарварде такие же долбоебы, как ты.
Вообще-то в руби есть еще и {}
Да, именно так и сказано. "Потом мы до этого доберёмся". И это во второй лекции. Или ты про неумение в компьютеры? Это-таки в первой.
Понятно, профессор типа Вирта попиливает бабло. Вот в MIT такой хуйни нет, там учат на Питоне.
>ёбаные дети
>мелким ублюдкам
ОП, я вижу, ты не испытываешь особой симпатии к ЦВЕТАМ ЖИЗНИ. Нахуй в лагерь-то тогда идти? Зарплаты вроде небольшие, так что я думал что туда идейные идут.
> да на нем почти все задачи решать можно.
Почти абсолютно на любой языке можно решить любые задачи.
> ОП, я вижу, ты не испытываешь особой симпатии к ЦВЕТАМ ЖИЗНИ.
Он не педофил же, чтобы любить мелких уродливых карликов.
>я думал что туда идейные идут
Нет, самые никчемные, те кто не могут просто выучить плюсы и переехать в деес.
Туч - На острие педагогики!
>указатели
Попиши на асме недельку, там ничего сложного нет.
>куча
Здесь-то тебе что может быть непонятно?
В теории, вроде, понятно. А на практике - нет.
Насчет асма - даже хз с чего начать, я же ООП-макака.
> указатели
Переменная, которая содержит адрес в памяти (по сути число), по которому лежит объект
> куча
Шмат памяти, отведённый под динамическую аллокацию.
>личинки пидорашек
>Кодинг
Тут все очевидно. ТУРБО ПОЦКАЛЬ и ДЕЛФИ
>Функциональный господин
Функциональный господин посасывает хуй в говношараге без работы)))))) Пока успешные жава/сишарпо/крестогоспода уже студентиками-джуниорами получают 1к долларов)))))) Ботан, ты будешь своей мамке рассказывать какой ты погромист, мы то все тут знаем что ты нищий лох в свитере без будущего))))))
>графику (как самый наглядный и подстегивающий интерес результат) на нем без штанги не попрограммируешь
Да ладно-ка. https://cdsmith.wordpress.com/2011/08/16/haskell-for-kids-week-1/
>джавабог
>джава
ХХАХАХАХАХАХАХАЗЫХВЪЫХАХЪВХЗАЪХАЗВЪХАБ ЛЯТЬ ЪАВЪХАЪХАХАХХХAUHAUHAUHAUHAUHAUHAUHAUHAUHAUHAUHHAHUAHUAHUAHAHAHAHAHAHAHAHAHHAHAHHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAHAHHAHHHHHHHHHHHHHHHAHAHAHAHAH BLYAAA AHAHAHAH
>и мне нужны ваши советы
Мелких Scratch-ем обмазывай, а со старшими на Python с прикрученным pygame игрули пиши.
А можешь поступить ещё проще - и тех, и других ардуиной со всеми прибамбасами обмажь: с псевдо недо-C, с моторчиками, с "роботами", которые два раза в ладоши хлопаешь, а они два оборота колёсами делают...
Бог Питух штоле?
> указатели
На коробке написано ЧЕЙ МАТЬ ИПАТЬ. Я открываю коробку, достаю бумажку, читаю там адрес твоей мамаши и иду по нему к ней в спальню. В это время подходит хаскелобог и кладет другую бумажку, где написан адрес мамаши жабопетушка. На следующий день я прихожу, достаю бумажку и иду по указанному адресу. Бумажка - указатель, коробка - переменная типа указатель, мамаша-шлюха - содержимое по указателю.
> куча
Есть полка с кучей таких бумажек. Специально обученный раб-хохол по звонку достает из кучи первую попавшуюся бумажку и кладет в указанную ему коробку (коробок может быть несколько). Затем прихожу я или хаскелобог и см. выше. Когда мамаша выебана, мы звоним хохлу, и он убирает бумажки обратно.
Если внезапно на полке кончаются бумажки, то это ошибка, и хохол получает пизды.
Если что, https://code.org/educate/applab
Учи их лучше настраивать окружение, уметь в линупс, работать с терминалом. Затем вводи в алгоритмы и структуры данных.
Niet. Вот джаваэлита.
О, вот и пхпжавамакаки подтянулись.
> в свитере без будущего
Свитер без будущего - это сильно. Это, если можно так выразиться, квинтэссенция, соль и мудрость в одной ебаной фразе - свитер без будущего. Теперь я знаю, как называются эти пидорасы, которые вытирая сопли о свои свитера, доказывают как охуительно быть бедным интеллектуалом и собирать для музея спектрумы и прочие калькуляторы. Ты открыл мне глаза, блядь.
В свитере со спектрумом и калькулятором это же байтоёбы - полная противоположность функциональщикам.
> Надо так: первую бумажку с конца.
Это стек (или очередь, если первая бумажка с начала). Куча обычно реализуется как список свободных бумажек (областей памяти), и раб-хохол возвращает некоторые из них в ответ на команду выделения памяти.
Лисп же был на спектруме.
Функциональщики это, по сути, те же байтоебы в худшей их ипостаси - профитов в производительности нет, а страдание осталось.
Вы видите копию треда, сохраненную 20 июля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.