Судя по всему участников кружка по чтению #EOPL3 осталось двое, а раз так можно спокойно сделать пост о том, что неспешно начато чтение третьей главы книжки. Удивительно насколько больше времени усвоение материала первых двух глав заняло, чем было запланировано. Хотя последние две недели я скорее просто занимался переосмыслением и рефакторингом своих решений для упражнений второй главы. Но вечно топтаться на месте -- не дело, так что приступаю к самому интересному, написанию первых реальных интерпретаторов
🔥4
Давно не писал про прогресс чтения книжки Essentials Of Programming Languages, которую я помечаю тегом #EOPL3
Была прочитана третья глава, в течение этого периода я написал ряд интерпретаторов для разной сложности языков функционального программирования на языке Kotlin. После чего решил попрактиковаться и переписать все уже пройденные упражнения на языке Rust. Это было весьма интересное приключение, но чем дальше я им занимался, тем больше у меня было сомнений, что я сдюжу написать хороший пост-отзыв по главе, так как мысли уже приобрели отчётливые очертания каши. По этой причине желание писать отзывы-конспекты отпало. Но есть желание сделать что-то другое, например, показать в статье по шагам как бы я писал интерпретаторы на котлине и на расте (отличия достаточно существенные). Так же хочется посветить отдельный пост теме парсинга языков программирования из s-выражений. Чем больше я об этом думаю, тем больше понимания, что репозиторий превратится скорее в подобие блога о программировании. Я в целом всё ещё не отбросил идею описывать эти вопросы в том же репозитории куда попадают все решения упражнений. Но возможно стоило бы сделать полноценный блог, куда впоследствии перенести эти знания в виде постов, возможно переосмысленных и более лаконичных. А пока, можно посмотреть на груду кода, совершенно не сопровождённого комментариями (кроме сообщений в коммитах) во всё том же репозитории https://github.com/madwareru/eopl3_conspects
Была прочитана третья глава, в течение этого периода я написал ряд интерпретаторов для разной сложности языков функционального программирования на языке Kotlin. После чего решил попрактиковаться и переписать все уже пройденные упражнения на языке Rust. Это было весьма интересное приключение, но чем дальше я им занимался, тем больше у меня было сомнений, что я сдюжу написать хороший пост-отзыв по главе, так как мысли уже приобрели отчётливые очертания каши. По этой причине желание писать отзывы-конспекты отпало. Но есть желание сделать что-то другое, например, показать в статье по шагам как бы я писал интерпретаторы на котлине и на расте (отличия достаточно существенные). Так же хочется посветить отдельный пост теме парсинга языков программирования из s-выражений. Чем больше я об этом думаю, тем больше понимания, что репозиторий превратится скорее в подобие блога о программировании. Я в целом всё ещё не отбросил идею описывать эти вопросы в том же репозитории куда попадают все решения упражнений. Но возможно стоило бы сделать полноценный блог, куда впоследствии перенести эти знания в виде постов, возможно переосмысленных и более лаконичных. А пока, можно посмотреть на груду кода, совершенно не сопровождённого комментариями (кроме сообщений в коммитах) во всё том же репозитории https://github.com/madwareru/eopl3_conspects
GitHub
GitHub - madwareru/eopl3_conspects: Прохождение книги Essentials Of Programming Languages 3rd Ed. Конспекты и решения задач на…
Прохождение книги Essentials Of Programming Languages 3rd Ed. Конспекты и решения задач на языках Kotlin и Rust - madwareru/eopl3_conspects
👍4🔥1
Чем бы дитя не тешилось. Решил отвлечься и поизучать функциональные структуры данных по книжке Окасаки, реализуя их на языке Pyret.
Сейчас у меня есть:
1. левоориентированная куча с реализацией дейкстры, её использующей https://gist.github.com/madwareru/704059793fea26fafc2c2af62128a95e
2. калькулятор и компилятор обратной польской нотации в си https://gist.github.com/madwareru/4cd2a9fb3c5ded5a4af9b479d0856cd9
3. Красно-чёрное дерево с возможностью визуализации https://gist.github.com/madwareru/bfad1a91ba374bd8532d0f3359808bf2
Насчёт последнего есть подозрение, что где-то баги, ибо кажется, что при 15 элементах у меня высота дерева не должна превышать 4, но она доросла до 5. Хотя визуально вроде всё корректно, свойство отсутствия рядом двух красных нод соблюдается
Сейчас у меня есть:
1. левоориентированная куча с реализацией дейкстры, её использующей https://gist.github.com/madwareru/704059793fea26fafc2c2af62128a95e
2. калькулятор и компилятор обратной польской нотации в си https://gist.github.com/madwareru/4cd2a9fb3c5ded5a4af9b479d0856cd9
3. Красно-чёрное дерево с возможностью визуализации https://gist.github.com/madwareru/bfad1a91ba374bd8532d0f3359808bf2
Насчёт последнего есть подозрение, что где-то баги, ибо кажется, что при 15 элементах у меня высота дерева не должна превышать 4, но она доросла до 5. Хотя визуально вроде всё корректно, свойство отсутствия рядом двух красных нод соблюдается
В чатике по устройству языков программирования для начинающих промелькнула интересная ссылочка https://josephg.com/blog/3-tribes/, и ведь и правда проблема мискоммуникации имеется. Люди тянутся к своим инфопузырям, обсуждают интересные им темы и не пытаются посмотреть на мир сквозь призму других лагерей. В итоге, имеем проблему, что например пытаясь найти информацию про компиляторы, человек видит вал страшных греческих буков и решает, что у него были дела поинтереснее
Seph
3 tribes of programming
There's an old joke that computer science is a lie, because its not really about computers, and its not really a science. Funny joke. Everyone laughs, then someone says "Yeah but it sort of is about computers though, isn't it?". Feet shuffle awkwardly. Someone…
❤3❤🔥1👍1
Посмотрел различные обзоры на одну захайпившуюся на днях игру. Увидел весьма странное. Посмотрел стримы некоторых товарищей. Увидел слегка другое. Решил приобщиться к пиратке с торрентов, чтобы составить непредвзятое мнение. Ну что тут сказать. Во-первых, хорошо, что я заранее узнал, что из себя представляет саундтрек и врубил режим стримера. С режимом стримера этого саундтрека нет, за исключением эмбиентных мелодий которые вполне ок. Во-вторых, катсцены в игре достаточно неплохие. В-третьих, игру забыли сделать. В этой игре абсолютно нечего делать. Враги действительно тупые и всевидящие одновременно. Никакой симуляции жизни в игре действительно нет. Игра действительно регулярно вылетает в случайных местах (в основном у торговцев, но так же встречались и более спонтанные проявления вылетов). Стелс возможен только там где его захардкодили. В любом квесте где есть выбор между сразу стрелять или пойти поговорить второй вариант приводит к тому, что ты немедленно жалеешь об этом выборе. Самый действенный способ проходить игру — в крысу убивать неписей пока они загадочно ждут диалога. Так же ко всему перечисленному можно было бы добавить, что как только мир в игре становится действительно открытым, выясняется, что в тех локациях, которые стали доступными, абсолютно нечем заниматься, кроме разве что какой-нибудь примитивной активности вроде "сразись с более сильными бандитами и найди лут чуть получше". Вероятно при продвижении по сюжету там появится жизнь, но это ж ещё дожить нужно. В игре есть единичные проявления геймплея с заявкой на интересный поворот вроде встречи с хорошо известным по старым частям сильным монстром, правда награда за эту встречу настолько ничтожна, что думаешь, что нафиг в такое ещё раз вляпываться не будешь. Некоторые отдельные механики выглядят так как будто над ними действительно старательно работали. Только вот воедино они не собираются. Если играть в эту игру только ради основной сюжетки, то вероятно она может кому-то зайти (впрочем, в таком случае лучше пройти её на ютубе). Если же хочется поиграть в неё ради того во что играли в ту, которая вышла чуть меньше двадцати лет назад, то не надо, этого там нет. Есть возможность побегать по локациям той игры, но испытать чувство, что встретился с доппельгангером, который всячески изображает из себя что-то, но этим не является. Какие-то такие ощущения. Цитируя товарища Дим Юрьича Пучкова, потраченного времени жаль
❤🔥7💩2
Поздравляю с Новым Годом! Желаю всем подписчикам добиться успешного завершения всех начинаний, независимо от их срока давности :)
👍8❤4
astronauts.png
6.2 KB
Недавно стартовал конкурс пошаговых стратегий.
https://gamedev.ru/projects/forum/?id=288372
Решил сделать на него что-то простенькое, назвал свой проект Пещерные Космонавты.
Первые наброски тайлов и юнитов
https://gamedev.ru/projects/forum/?id=288372
Решил сделать на него что-то простенькое, назвал свой проект Пещерные Космонавты.
Первые наброски тайлов и юнитов
🔥2❤1👍1
Слушайте, путники, шепот вековых сосен, и я поведаю вам тайну, что хранит глушь лесная...
Живут в чащобе малые старички — Боровички, ростом не выше грибной ножки, в самую меру — несколько вершков от земли. Они — хозяева грибного царства: груздей душистых, рыжиков ядреных, всех даров, что прячутся во мху да под листвой.
Но видит их не всякий... Обычно незримы Боровички, лишь шорох меж корней выдаёт их шаги. А на головах у них — сами грибы: то шляпка подберёзовика, то шапка боровика, будто венцы лесные.
Безобидны они, да только горе тому, кто гриб сорвёт без спроса — тот, что под опекой старичка. Разгневается Боровичок — и вот уже в корзине у обидчика мухомор алеет, как злобный глаз, или поганка притаилась. А то и вовсе заведёт в самую глухомань, где тропы путаются, как нити в руках у злой кикиморы.
Потому слушайте мудрость древнюю: прежде чем гриб сорвать, поклонись, шепни: "Боровичок-батюшка, пожалей да позволь!" А уж когда возьмёшь — не забудь спасибо молвить, да камешком серебряным или ягодкой душистой отблагодарить. Тогда и лес тебе щедрым будет, и путь — ясным..."
Тише, путники... Слышите, как за спиной шевелятся листья? Может, это Боровички слушают нашу беседу?.. 🌲🍄
Живут в чащобе малые старички — Боровички, ростом не выше грибной ножки, в самую меру — несколько вершков от земли. Они — хозяева грибного царства: груздей душистых, рыжиков ядреных, всех даров, что прячутся во мху да под листвой.
Но видит их не всякий... Обычно незримы Боровички, лишь шорох меж корней выдаёт их шаги. А на головах у них — сами грибы: то шляпка подберёзовика, то шапка боровика, будто венцы лесные.
Безобидны они, да только горе тому, кто гриб сорвёт без спроса — тот, что под опекой старичка. Разгневается Боровичок — и вот уже в корзине у обидчика мухомор алеет, как злобный глаз, или поганка притаилась. А то и вовсе заведёт в самую глухомань, где тропы путаются, как нити в руках у злой кикиморы.
Потому слушайте мудрость древнюю: прежде чем гриб сорвать, поклонись, шепни: "Боровичок-батюшка, пожалей да позволь!" А уж когда возьмёшь — не забудь спасибо молвить, да камешком серебряным или ягодкой душистой отблагодарить. Тогда и лес тебе щедрым будет, и путь — ясным..."
Тише, путники... Слышите, как за спиной шевелятся листья? Может, это Боровички слушают нашу беседу?.. 🌲🍄
🎄3
— Садись, путник, у огня. Прикрой глаза и слушай...
В тени вековых ив, где лунный свет стелется по воде, живут они — русалки. Не рыбы, не девы, а духи речные, стражи тихих заводей да лесных озёр. Волосы их — как водоросли тёмные, распущенные по воле ветра, а одежда — рваный сарафан, что истлел за долгие годы под холодной водой.
Не всегда были они такими. Некогда — живыми девушками с сердцем горячим, да любовь их оказалась горькой, как полынь. От тоски да отчаяния бросились они в омут, и река приняла их, да не отпустила. Теперь бродят они по берегам, бледные, как лунный свет, и шепчут песни, от которых кровь стынет.
Остерегайся, добрый молодец! Увидишь у воды красавицу — не верь её смеху. Заманит в тростник, обовьёт холодными руками, утянет на дно. А красным девицам — страху нагонит, косы расплетёт, следы запутает, чтоб не нашли дороги домой.
Но есть у них и жалость... К малым детям. Чисты их души, не ведают зла — потому и берегут их русалки. Бывало, дитя в реку упадёт — а его кто-то подхватит, к берегу тихо подтолкнёт...
— А теперь, путник, гляди в воду осторожнее... Вдруг в отражении — не твоё лицо? 🌿
В тени вековых ив, где лунный свет стелется по воде, живут они — русалки. Не рыбы, не девы, а духи речные, стражи тихих заводей да лесных озёр. Волосы их — как водоросли тёмные, распущенные по воле ветра, а одежда — рваный сарафан, что истлел за долгие годы под холодной водой.
Не всегда были они такими. Некогда — живыми девушками с сердцем горячим, да любовь их оказалась горькой, как полынь. От тоски да отчаяния бросились они в омут, и река приняла их, да не отпустила. Теперь бродят они по берегам, бледные, как лунный свет, и шепчут песни, от которых кровь стынет.
Остерегайся, добрый молодец! Увидишь у воды красавицу — не верь её смеху. Заманит в тростник, обовьёт холодными руками, утянет на дно. А красным девицам — страху нагонит, косы расплетёт, следы запутает, чтоб не нашли дороги домой.
Но есть у них и жалость... К малым детям. Чисты их души, не ведают зла — потому и берегут их русалки. Бывало, дитя в реку упадёт — а его кто-то подхватит, к берегу тихо подтолкнёт...
— А теперь, путник, гляди в воду осторожнее... Вдруг в отражении — не твоё лицо? 🌿