169 похожих чатов

The story: I had a thought, that perhaps Math becomes simpler

to understand when you invent it, rather than trying to learn it. And that people who invented Math must've been more proficient in Math than people who learn what they invented.

I decided to learn Lisp, but I wasn't feeling like learning. So, instead, I decided to implement my own Lisp, using JSON arrays and strings for source code, for simplicity.

Learning can be boring, problem solving is always interesting!

And, perhaps I'll understand it better when I'll try to invent it myself. I'll know why some things have to be the way they are.


So, I had like 40 minutes of free time before my English lesson? lecture? excercises? I don't know the proper terms for college in English. I pulled out a piece of paper, a pen, and started designing.

I must have looked a little bit like a mad man, but so does look anyone who pursues an unusual idea. Especially, cause I didn't finish it before English started, and I couldn't stop.

It felt great when I later was reading some stuff about Lisp, Scheme, Clojure, and I discovered functions and macros which solved the exact problems I solved on paper, having the exact same signature, and sometimes even the same name.

I ended up not writing any code. I didn't need it for my learning.

And that's how I taught myself some Lisp.

3 ответов

5 просмотров

Try learning Lambda Calculus

How is your JSON Lisp doing though?

Wojciech-Pawlik Автор вопроса

Oh, one more factor: I tried to implement a deepMap, and I came up with something that was very suitable for evaluating Lisp and Lisp macros...

Похожие вопросы

Обсуждают сегодня

А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
а как ловят такое ghci> res <- getPos2 urlt 0 (alist !! 0) 200 ghci> res SearchAtom (Search "www.google.com" "/search?q=" "Haskell") "haskell.org" (SearchTS [(2024-05-06 07:...
Fedor
14
Ребята, а из API геокодеров (по адресам в РФ) что сейчас актуального и есть ли среди актуального бесплатное/с нормаотным лимитом запросов? ситуация простая - на сайте периоди...
Dreamer_0x01 VeseloV
8
Добрый день, а есть ли возможность завернуть уже зашифрованный пасс в креденшл, в интернете натыкаюсь только на создание пары и ее шифровки, но тогда все равно нужно расшифров...
SSS
1
короче сгенерила мне эта штука код на ассемблере: struc string val { common local .value dq .value .value: if ~val eq db val end if db 0 } fo...
Vi Chapmann Chapmann
12
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
Есть тут те у кого дети есть + 2 работы + в зал ходят + в семейной жизни все хорошо?
Abdul-Aziz M.
13
Карта сайта