과거에 BASIC을 배울 땐 서브루틴과 함수가 분리되어 있었다. 포트란도 그러했다. 그러다가 C 언어를 배울 땐, return 유무에 따라 성질이 달라질 뿐 모두 함수로 통합이 됐다. 그러다가 JavaScript를 배울 땐, _객체_로서 함수 개념을 배우게 된다. 이 말은 함수와 자료가 통합되었다라고 말할 수 있다. Javascript가 구현하는 함수객체는 function func1 ( ) { /* code */ } func1()으로 쓰면 { ... } 안의 내용이 실행된다. func1.abc = "def" 로 쓰면 func1를 객체 취급하여 'abc'라는 키를 추가한다. 이런 발상의 전환이 통합의 구체적인 모습이다. func1.apply func1.call func1.bind 이런 함수는..
짧은생각 Javascript와 python에서 제공하는 배열/리스트에서 특정 값의 위치를 찾는 비슷한 명령어로 각각 indexOf, index 라는 메소드가 있다. 이 둘은 찾지 못했을 때의 특성이 다른데, Javascript: -1 을 return 한다. Python: ValueError 예외를 발생한다. 언어를 다루다보면 이 둘은 묘한 선택의 순간을 만드는데, 전자는 매번 return 값을 확인해야하고, 후자는 앞 뒤로 예외 처리 구문을 넣어야한다. Javascript/Java/C++ 계열에 익숙하다보면 정상적인 처리를 해야하는 상황을 예외를 발생시켜 점프하는 것에 약하지만 부담을 느낀다. 스택을 되돌리는 백그라운드 작업에 원하는 모든 리소스 해제는 잘 일어나는 것일까랄지, 단순히 값 하나만 비교하면..
요샌 일부러 마크다운편집이 가능하면 그걸 써보려고 노력한다. 오래 알아왔지만, 글 쓰는 일이 줄어들어 마크업이 할 일이 줄어 드니 영 느리다. 그래서 간단한 의식의 흐름대로 기술을 할 때, 쓰는 나와 읽는 당신의 관계에서 단순히 글의 연속으로 전달되는 것이 아닌, 강약이 전달되려면 강조 혹은 병렬적 정보전달은 필요한 것 아닌가 싶다. 머라고 주절 주절 쓰는 것은 사실 마크다운 문법을 테스트하기 위함이지 그 ^이상^도 이하 도 아니다. 어떤 문법은 것은 지원되지 않을 수도 있음을 고려해서 테스트해 본다. 문법을 익히는데 쓰는 글은 의미가 없어도 상관없고, 표현이 거칠거나 맥락을 뛰어 넘는 전개 가 이루어지기도 한다. 그래도 글의 모양을 갖추려면, 가독성이 고려되어야하고 적당한 길이어야하며 무엇보다 독자가 ..
'밀리-마이크로-나노-피코'로 이어지는 1/1000 단위의 스케일을 내 주위에서 느껴보는 것을 도와주는 명상법이며, 1분도 안 걸리며 세상과 잘 감응하는 방법이다. 숨을 거칠게 쉬거나 참으면 오히려 예상치 못한 교란이 일어날 수 있으므로, 마음을 잡아주는 용도로 사용한다. 각 단계에 숫자를 붙여서 0) 미터, 1) 밀리, 2) 마이크로, 3) 나노, 4) 피코의 단계로 점점 내려간다고 생각하면, 우리는 의식하지 않아도 0단계 규모의 사물을 인식하면서 산다. 우리의 주의 집중을 0 단계로 하면서, 엘레베이터를 탄다. 네 개의 사물을 보거나 상상한다. 1초에 하나씩. 거울, 긴 막대 손잡이, 모서리에서 모서리, 외부에서 엘레베이터 탄 내 모습을 상상한다. 이들은 0단계에서 관찰되는 1미터 언저..
npm, yarn을 설치했다면, bootstrap theme 변경을 위한 초간단 테스트를 할 수가 있다. #!/bin/bash mkdir bootstrap-customizing cd bootstrap-customizing yarn init -y yarn add bootstrap node-sass mkdir -p public/css yarn node-sass --recursive --output public/css \ --source-map true --source-map-contents true \ node_modules/bootstrap/scss bootstrap은 scss로 관리되고 있으므로 yarn(npm)으로 받아다가 바로 컴파일 해 볼 수가 있다. 위의 예는 directory 만들고, 빠르게 n..
unzip 을 구현해 볼까? 하는 마음이 들었다. 다 뻘짓이 되긴 할텐데, 동기는 이렇다. 윈도우에서 한글로 된 파일을 압축하면 맥에서 잘 풀리지가 않는다. 7z으로 풀어 볼까? 7z도 안되는군. 7z 옵션중에 charset을 지정하는게 있더라. CP949를 넣어보니 안된다. 아, 이게 머라고, 2020년에도 고통을 받아야하나. huffman coding 이런거 봐야하나. 그 테이블 튜닝을 하면 성능이 더 좋아지려나? 실리콘밸리의 파이드파이퍼는 대체 뭘 쓴 거지? 아 놔..
- Total
- 1,081,331
- Today
- 0
- Yesterday
- 51
- Linux
- VIM
- perl
- 구근
- writely
- 클레로덴드럼
- JavaScript
- tattertools
- Tattertools plugin
- MySQL
- nodejs
- SVN
- 디버깅
- 커피
- 킹벤자민
- url
- SSO
- BlogAPI
- 덴드롱
- 퀴즈
- TCP/IP
- 수선화
- macosx
- OpenID
- 오픈소스
- 식물
- Subversion
- 벤자민
- ssh
- 대화