검색어(search term):
--- 검색결과가 없습니다. ---
--- 검색결과: 건 ---
"One of the nice things about getting older is that you come to understand that you can integrate multiple aspects of your life together. When you're young, you think everything has to be binary, as that's exactly how you feel at that age".
- Min Jin Lee
Zettelkästen?
어제 Ping에서 계속 블로깅을 하면서 생각 하는걸 계속 다듬어 갔으면 좋겠다는 말을 했었는데,
마침 HN에 그런걸 하기 적절해 보이는 글이 올라와서 읽어봤다.1
간략히 정리해보면,
- 생각 적기: 짧은 길이 메모를 적어서 생각만으로 카드를 만들고,2 3
- 이 상태에서는 우선 각 카드는 “순번없음 (Unsorted)” 상태 deck으로 쌓아만 놓는다.
- 순서매기기(1): 카드끼리 1, 2, 3 같이 순서를 두고 정렬.
- ‘Unsorted’ deck에서 꺼내와서 정리하는거겠지.
- 각 순서는 생각의 순서일수도 있겠고,
- 아니면 그냥 구분되는 다른 생각의 단절을 나타내는 방법으로 쓸수도 있겠지.
- 순서매기기(2): 그리고 위에 만든 1, 2, 3와 같은 순서 카드에 딸린 하위 생각들은,
- 1a, 1b, 2a, 2a1, 2a2 와 같이 alphanumeric으로 하위 생각들을 표현해 나간다.
- 연결하기: 그리고 각 카드들의 서로 연결 을 적어나간다.
- 예를 들어, 1a에서 하위 카드가 아닌데도 연관이 있는 2a1,
- 2a2으로 연결을 갖는다면, 1a 카드에 2a1, 2a2을 링크 라고 적어준다.
위 3단계에서 계층적으로 순서를 할당하는걸 시각화해보면 다음과 같은 트리가 되겠지4:
…rutils으로 커먼리습 확장해서 clojure 비슷하게, 더 편하게
커먼리습은 CLHS 이후로 언어 자체 정의는 변하지 않았다.
구현체마다 조금씩 확장이 있을수도 있지만 딱히 그렇게 하지도 않는거 같다. 그럴만도 하다고 생각하는게 어차피 커먼리습에서 lisp reader을 확장하는게 CLHS에서 정의해놓은 기능 중 하나이고, 구현체들도 스펙을 잘 구현해놓았으니까.
결국 커먼리습에서 문법이나 그런게 조금 마음에 안들거나 확장하고 싶으면 언제든지 매크로를 만들듯이 확장하면 되니까.
‘커먼리습 언어 자체를 커먼리습으로 프로그램 할 수 있다’
이런 커먼리습 확장 ‘라이브러리’ 들이 여러가지 있는데, 가장 요즘에 쓸만할거 같다고 생각하는건 rutils이다. https://github.com/vseloved/rutils
(eval-when (:compile-toplevel :load-toplevel :execute) ...)
같은거
매번 반복해서 쳐넣는걸 그냥 eval-always
으로 바꿔준다거나.
gensym
하는것도 with-gensyms
제공하거나 하는 이런류의
라이브러리들에서 보통 제공하는것들부터.1
Ping 11/Oct/2019
매일 글쓰기. 블로깅하기 나도 해볼까.
해보려는 이유는 메모는 계속해서 하면서 살고 있는데, 연속해서 같은 주제에 대해서 더 생각하고 하면서 발전시키는 방법으로 일기를 쓰는것과 반복적으로, 또 이전에 썼었던 글을 읽어보면서 거기에서 더 나아가서 고쳐나가고 발전시키는 방법으로 블로깅이 나쁘지 않은거 같아서.
…Ping 08/Oct/2019
어제는 하루 종일 아는 사람들을 만나고 돌아다녔다.
한국에서 운전을 하게 되고 재미를 붙이고 살고 있다.
비가 오는 날이었지만 상쾌해서 북한산 국립공원 근처, 은평한옥마을, 진관사를 다녔다. 차를 타고 이동하면서 편하고 좋았다. 행동반경이 넓어지고 운전하면서 아직은 매순간이 재밌다.
비가 내려서 구름과 안개가 북한산 자락에 깔려서 운치있었다. 카페에 앉아서 산풍경을 감상했다. 학생때는 자주 학교에서 소풍이나 백일장을 서오릉이나 북한산으로 왔었었는데. 그때도 가끔 생각했지만 비가 내려 세상이 이렇게 젖었을때 애처롭게 어둡기도 하고 깨끗한 습기를 머금은 숲이 상쾌해서 생명을 느끼게 해준다.
…Ping 17/03/2019
Emacs/C++ 개발환경 스크린캐스트
이전 포스팅 에서 만들었던 설정을 스크린캐스트로 찍어서 공유해봤다.
“Let Over Lambda” 읽기
Let Over Lambda을 읽기 시작했다. 커먼리습 매크로, 클로져에 대한 이야기를 더 깊이 있게 설명하고, 그런 기능들이 어떻게 리습이랑 리습이 아닌 “Blub language”이라고 말하고있는 대부분의 언어들과의 차이인지를 설명한다.
리습의 매크로나 closure을 통해서, 그간 내가 프로그래밍언어 설계를 할때 포함해야하고, 컴파일러가 지원하도록 손수 만들어놓아야 한다고 믿던 것들이 얼마나 쉽게 구현되는지를 보며 충격을 받는다. 재밌고 신선하다.
…