2008-02-01ãã1ã¶æéã®è¨äºä¸è¦§
æ¬æ ¼çã« Parsec ã§ããã°ã©ã ãçµãã§ã¿ã¦ããããã使ãæ¹ãç¿å¾ã§ãã¾ãããè¨èªèªä½ã«è¦ªåæ§ãé«ããã¼ãµã¼ã¯ãç´ æ´ãããã§ãããã¨ããã§ããµã¤ãã® Haskell ããã°ã©ãã³ã°ãã«ä»ãã¦ã LazyLines ã§ãããææ³ã®èª¬æã« ã*ããé£ç¶ãã¦æ¸ãã¨ãã¹ãâ¦
Electric 㪠Ruby ã® end (2)ã§æ°ä»ãããã¨ãç´ããã ãã§ãå ¬éãã¦ãã¾ããã§ãããããããç¾å¨ã®ãã¼ã¸ã§ã³ã§ããã³ã¡ã³ããä»ããã®ã§ãæãåºãã¾ããã(_ _) (defvar ruby-elect-keyword '("def" "if" "class" "module" "unless" "case" "while" "doâ¦
Emacs ã® haskell-mode ã¯ãã¤ã³ãã³ããå¤ã§ä½¿ãæ°ã«ãªãã¾ããã§ããããHaskell mode ã® indent cycleãèªãã§ãã¯ã«ã¯ã«åãããã¨ãåãã¾ããã(Mew ã¿ããã ã:)ã§ãåã®å¥½ã¿ã®ä½ç½®ã¯ãå¤§æµ 2 çªç®ã§ããã½ã¼ã¹ãã±ã£ã¨è¦ãã¨ãããã«ã¹ã¿ãã¤ãºã§ãâ¦
3ã¤ã®ã¢ããåã®å ããããã2ã¤ãç解ã§ãã¾ããã (return x) >>= f == f x 以ä¸ã®ãã㪠DB ãèãã¾ãã db = [("alice", [("title", "Ms."), ("city", "Yokohama")]), ("bob", [("title", "Mr."), ("city", "Sapporo" )])] "alice" ã® "city" ã調ã¹ãâ¦
ruby-modeã®è©±ã§ãappend ã§ã¯ãªã cons ã使ãã¹ãã ã¨æ¸ããã¨ããã使ãæ¹ã«æ©ãã§ãã人ãããããã§ãããã¨ãã°ãcons ã§2 ã¤ãã¹ã追å ãããã¨ããã¨ã (setq load-path (cons "foo" (cons "bar" load-path))) ã¨ãªã£ã¦è¦ã«ããã§ããappend ãªãã â¦
èªç§°ãä¸çä¸ã® alpaca ã¦ã¼ã¶ãããããããalpaca ã«ã¯ãã°ããããã¨ãã話ã常ã ããã¦ããã®ã§ããããã®ç¨ãåç¾ã§ãããã¨ããå ±åãåãããã®ãã°ãåãã¾ããããã°ã®å 容ã¯ä»¥ä¸ã®éãï¼ C-xC-s ã§ä¿åãã¦ããªã GnuPG ãã¡ã¤ã«ããããã¡ã¡ãã¥â¦
æ¨æ¥ãåéã«ãããªãã¨ã話ãã¾ããã Haskell ã§ããã°ã©ãã³ã°ããã¨ãã¯ãã¨ããããå¹çã®ãã¨ã¯å¿ããã ã¡ã¢ãªã¼ã¯ç¡éã«ããã¨èããã³ã³ãã¤ã©ã¼ã¨é 延è©ä¾¡ãé å¼µã£ã¦ãããã¨ä¿¡ããã Haskell ã§ã¯ what ãè¨è¿°ããã å¹çãèãã¦ããæç¹ã§ãhowâ¦
ä»æ¥ãæ²ããã«ã¢ããã®è©±ã§ããHaskell/Understanding monadsãèªãã è¦ãæ¸ãã以ä¸ã® echo ã§ãbind ãä½ããã¦ãããèªã¿è§£ãã¾ãã echo = getChar >>= putChar ãã® echo ã¯å®éåãã¾ããä¸æ¹ããã以éã®ã³ã¼ãã¯åãã¾ãããHaskell 風ã«æ¸ãã¦ããâ¦
Haskel ã¨ã¢ããã«å¯¾ããã³ã¡ã³ãã«ã¤ãã¦ã以ä¸ãèªãã¨ããã¿ããã§ãã DanoMoi 㨠Haskell Haskellã®ã¢ããIO Haskellã®ã¢ããIO(ã¤ã¥ã) ">>=" ã ">>" ããç³ãªã®ããªï¼
ç¥ãåãã«ã«ã¡ã©ãæ®ãã¨ãã®ãã¤ã³ãã«ã¤ãã¦èããã¾ããã®ã§ãæè§ãªã®ã§ã¾ã¨ãã¦ã¿ã¾ããã åçã§ã¯ä½ã表ç¾ããããã大äº
ä»æ¥ã¾ã§ã«ç解ãã Haskell ã¨ã¢ããã«ã¤ãã¦ãã¾ã¨ãã¦ã¿ã¾ããééã£ã¦ããã¨ãããããã¨æãã¾ãã®ã§ãã³ã¡ã³ããæå¾ ãã¦ãã¾ãã(_ _) Haskell ã®ç¹å¾´ ç´ç²é¢æ°åè¨èªã§ãã åç §ééæ§ å¤æ°ã¯åæåã§ãã¾ãããä¸æ¦æ±ºã¾ã£ãå¤ã¯å¤æ´ã§ãã¾ãããé¢â¦
Emacs Lisp ããããªãæããåã®ç®ãããEmacs Lisp ããã¡ã ã¨æãã¨ãããã¾ã¨ãã¦ããã¾ãã æåçãªåé¡ Emacs Lisper ã®å¤ãã¯ãLisp ã好ãã§ä½¿ã£ã¦ããã®ã§ã¯ãªããEmacs ã好ãã ããããããªã使ã£ã¦ããã®ã§ããããæ¬å½ã¯ C ã§æ¸ãããã®ã«ãç¡â¦
æ¨æ¥ã®ç¶ããä»æ¥ã¯ãã£ã¼ãæ°ã§ãã ZERO 㨠ONE ZERO 㨠ONE ã®å®ç¾©ã¯ç°¡åã§ãã ;; 0 := λf x. x (define ZERO (lambda (f x) x)) ;; 1 := λf x. f x (define ONE (lambda (f x) (f x))) SUCC SUCC ã®å®ç¾©ããæ¨æ¥ã® CONS ãåãã°ãåãããã«ã§ãã¾ããâ¦
Wikipedia ã®ã©ã ãè¨ç®ã«ããä¾ã Scheme ã§å®è¡ãã¦ç解ãã¦ã¿ã¾ãã TRUE 㨠FALSE TRUE 㨠FALSE ã¯ç°¡åã§ãã ;; TRUE := λx y. x (define TRUE (lambda (x y) x)) ;; FALSE := λx y. y (define FALSE (lambda (x y) y)) ANDãORãNOT é£ããã®ã¯ãæ¬ä½â¦
Emacs 㧠(require 'cl) ã¨ãã㨠defstruct ã使ããããã«ãªãã¾ããã¡ãã£ã¨èª¿ã¹ã¦ã¿ã¾ããã 大ããªãã¯ãã§ç解ããã®ã¯å°é£ Common Lisp ã® defstruct ãªã®ã§ãgetter ã¯ããããsetter ããªã ã¨ãã訳ã§ãèªåã§å®è£ ãã¦ã¿ã¾ããã (defun my-keyworâ¦
Electric 㪠Ruby ã® endã§ãããããã¯ãã¼ã¯ã®ã³ã¡ã³ãã«ãã°ãææãã¦ãã£ãã®ã§ãç´ãã¦ã¿ã¾ããããã°ã®å ±åã¯ãããã°ã®ã³ã¡ã³ãã«æ¸ãè¾¼ãã§é ããã¨å¬ããã§ãã(_ _) (defvar ruby-elct-regex "def\\|if\\|class\\|module\\|unless\\|case\\|whileâ¦
å·åããã®ã¨ãã»ã¤ãSchemer's wayãã¯é¢ç½ããã¨ã¦ãããã«ãªãã¾ãããã ä¸ç¹ããã§ã¢ãªè°è«ãªã®ãæ°ã«ãªãã¨ãããããã¾ããã å¤ãã®è¨èªã§ã¯ãæ°ãããªãã¬ã¼ã¿ã追å ããã®ã¯è¨èªãã®ãã®ãæ¡å¼µããªããã°ãªããªãã ãããä¾ãã°Javaãæ¡å¼µãã¦Perlâ¦
Ruby ã«ä»ãã¦ãã ruby-electric.el ã§ã¯ããã¨ãã° class ã¨æã£ãå¾ã«ç©ºç½ãå ¥ãã㨠end ãæ¿å ¥ããã¾ããåã欲ããã¨ã¬ã¯ããªãã¯ãªæ©è½ã¯ãããããããã¾ãããend ã¨æ¼ãã¨å¯¾å¿ããåèªã«é£ãã§ã»ããã®ã§ããã¨ããããã§ä½ã£ã¦ã¿ã¾ãããå¥ãã¡ã¤â¦
Ruby ã«ã¯ Emacs ã® ruby-mode.el ãä»éãã¦ãã¾ããREADME ãªã©ã«è¨å®æ¹æ³ãæ¸ãã¦ãªãã®ã§ãã»ã¨ãã©ã®äººã¯ãæ¤ç´¢ãã¦è¨å®ä¾ãæ¢ãã§ããããããã¨ããããªä¸å¹çãªè¨å®æ¹æ³ãè¦ã¤ããã¾ãã (autoload 'ruby-mode "ruby-mode" "Mode for editing ruby sâ¦
Lisp ã® car ã cdr ãã以ä¸ã®ç¥ã§ãããã¨ããããLisp ãããã£ããã¨ã®ãã人ãªãç¥ã£ã¦ããã§ãããã Contents of the Address part of Register number Contents of the Decrement part of Register number Lisp ãæåã«å®è£ ããã IBM 704 ã®æ©æ¢°èªâ¦