ContentsLemon parser generator 사용법 1/2Lemon parser generator 사용법 2/2 레몬 컴파일러 (LALR(1) parser generator) http://www.hwaci.com/sw/lemon/ 먼저 lemon 이 어떤 parser generator 인지 알아보자. lemon 의 개요.lemon 은 yacc 나 bison 같은 일을 하지만, yacc나 bison 의 한 종류는 아니다.lemon 은 yacc 나 bison보다 coding error 가 적은 grammar syntax 를 갖는다.lemon 은 reentrant 하고 thread-safe 하지만 yacc 나 bison 보다 빠르다.lemon 은 resouce leak 을 없앨 수 있는 기능이 구현..
역시 사람은 배워야 하는 듯 하다.lex/yacc 가 거의 전부인줄 알았다. parser generator 로는,근데 그 이외에도ANTLR (http://skyul.tistory.com/tag/ANTLR)Packrat Elkhound GLR parser generator등 여러가지가 있다는 것을 이제야 알았다.각자 다른 종류의 parser 를 생성할 수도 있다. 나도 자세히 어떤 종류의 parser 를 만드는 지는 아직 조사해 보지 않았다. 여튼 자세한 사항은 아래 경로를 참조하자. http://stackoverflow.com/questions/428892/what-parser-generator-do-you-recommend
google updater 가 자꾸 뜬다.이것을 어떻게 안뜨게 하는지 보자. 일단 처음엔 '실행' 창을 띄워서 msconfig 로 Google updater 를 uncheck 하자.그리고 google updater 는 scheduled task (예약된 작업) 에 들어가 있다.아래 경로 참조.http://www.google.com/support/forum/p/earth/thread?tid=37ad9d03e5643889&hl=en그러기 때문에 여기서 task 를 없애주자. 이것으로 자동으로 실행되지 않을 것이다.
http://json.org/json 에서는 콜론(:) 을 control character 로 사용한다.그래서 단순히 string 변수를 이용해서는 콜론을 사용할 수 없다.json parser 가 parsing 을 못해 error 가 나기 때문이다.이럴 때는 아래처럼 array([]) 로 묶어주면 된다. { "port-no": "COM14", "7zip-path": ["c:\\Program Files\\7-Zip\\7z.exe"]}
python 에서 현재의 변수가 list 인지 dictionary 인지 등, 변수의 type 을 알고 싶을 때가 있다.그럴때 isinstance() 를 사용하면 된다.http://code.activestate.com/lists/python-list/56087/예를 들면, {} 가 dict type 인지 알고 싶다면isinstance({}, dict)이런식으로 하면 된다. isinsatnce() 에 관한 document 이다.http://docs.python.org/library/functions.html
batch file 등을 이용할 때는 이미 정의되어 있는 환경변수를 쉽게 이용하게 된다.(windows xp 환경변수 : http://vlaurie.com/computers2/Articles/environment.htm)근데 이것을 python 에서도 사용할 수 있다.import osprint os.environ["Path"] # %PATH% 를 이렇게 사용하면 된다.print os.environ["ProgramFiles"]
참고 동영상 : http://www.youtube.com/watch?v=L36u7GudN8k 많은 사람들이 많이 쓰는 명령어가 context menu ( 마우스 오른쪽 버튼을 누를때 나오는 메뉴) 에 들어가 있는 것을 편리하게 여긴다.그래서 원하는 명령어를 context menu 에 넣는 방법을 알아보자. regedit 를 연다. HKEY_LOCAL_MACHINE- Software - Classes - * (모든 파일) - Shell (만약 없다면, 만들자) - Test (context menu 에 표시될 문자) - Command 란 이름의 key 를 다시 만들자. 그리고나서 command 안에 가보면,기본값(default) 가 있을 것이다.이걸 수정하자. value data에"(program full ..
Visual C++ 6.0 에서 long long 이 안된다.그래서 찾아보니 __int64 로 대체해서 사용가능하다고 한다. 자세한 사항은 밑을 참고하자.http://msdn.microsoft.com/en-us/library/aa983524(VS.71).aspx 참고로 print 도 평범하게는 잘 안된다.long long 에 대한 printf 사용법을 보고 싶으면 아래 경로를 참고하자.http://i5on9i.egloos.com/4840597
- Total
- Today
- Yesterday
- 녹색농원
- 보드고글
- 인테리어
- icon program
- 제주영귤
- icon tool
- 인공안구
- 과학
- 편집프로그램
- 칠오름농장
- network error
- 영귤
- breakpoint
- 영귤차
- 샤워기전
- 상식
- 그림편집
- 스타치
- 미스터피자주문
- sudachi
- 명언
- 대일농장
- 제주녹색농원
- 무릎마사지
- 고강도
- 인공눈
- 데크에 바인딩묶기
- 칠오름
- 늙기
- 의학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |