2006-01-01ãã1å¹´éã®è¨äºä¸è¦§
Christian Queinnec ã® The Influence of Browsers on Evaluators or,. Continuations to Program Web Servers http://www-spi.lip6.fr/~queinnec/PDF/webcont.pdf ãèªã¿ãªããä¸ã åå¹´åã«èªãã ãã©ãããããèªåã®ä¸ã§ãéå®ç¶ç¶ãCPSãHopãHaskellãâ¦
Kahuaã¯ã¢ããªã±ã¼ã·ã§ã³ãµã¼ãã¹ãæ§ç¯ããããã®ãç¶ç¶ãã¼ã¹ã®ãã¬ã¼ã ã¯ã¼ã¯ã§ããã§ããµã³ãã«ã«ã«ã¦ã³ã¿ã¼ãä½ã話ãã§ã¦ããã http://www.kahua.org/cgi-bin/kahua.fcgi/kahua-web/show/doc/hello-kahua#H-1o28l31 ãªã³ã¯ãã¯ãªãã¯ããã¨ãæ°ãã©ãâ¦
function searchSales() { var url = 'http://yourserver/app/get_sales'; var myAjax = new Ajax.Request( url, { method: 'get', onComplete: showResponse }); } function showResponse(originalRequest) { //put returned XML in the textarea $('resultâ¦
ãªã spec ãã¡ã¤ã«ãä¿®æ£ããã®? rpmbuild --rebuild tetex-jisfont-1-6.src.rpm ãå®è¡ããã¨ã è¦å: ã¦ã¼ã¶ t-matsuu ã¯åå¨ãã¾ãã - root ã使ç¨ãã¾ã è¦å: ã°ã«ã¼ã supramol ã¯åå¨ãã¾ãã - root ã使ç¨ãã¾ã è¦å: ã¦ã¼ã¶ t-matsuu ã¯åå¨ãâ¦
http://homepage2.nifty.com/t-matsuu/install-memo/fc/tetex-jisfont.html http://homepage2.nifty.com/t-matsuu/install-memo/fc/tetex-jsclasses.html ã® src.rpm ããã¦ã³ãã¼ã spec ãã¡ã¤ã«ã®ä¿®æ£ã¨ãã¤ã³ã¹ãã¼ã« (tetex-jsclasses-060725-1.src.rpmâ¦
yum install tetex*
çæ° ãThere's no dark side of the moon really. Matter of facts it's all darkï¼æ¬å½ã¯æã®æãå´ãªãã¦åå¨ããªããã ããä½æ ãªãããã¹ã¦ãéãã®ãã®ã ãããï¼ãã¨ããå°è©ï¼ã¤ã¾ããå®éã¯ä½ããããã ãæãããã®ã¯ããã 太é½ã®å ãå½ãã£ã¦ããâ¦
OCaml ãã¥ã¼ããªã¢ã« ä»æ¥ãLabels ã®æ¥æ¬èªè¨³ãã³ããããã¾ããã ç¾å¨ããã®ãã¥ã¼ããªã¢ã«ã¯ æ¥ãç¬ãä»ãä¼ ã«è¨³ããã¦ãã¾ãã æ¥æ¬èªçã¯ãã®ä¸ã§æãã翻訳ãé²ãã§ãã¾ãã ã¯ããã®ä¸æ© - åºæ¬ä¸ã®åºæ¬ OCamlããã°ã©ã ã®æ§é ãã¼ã¿åã¨ãã¿ã¼ã³â¦
ããéå¶å±ã®å ä¸è°è«ã¯èãããããæå³ããªãã å¦ä¼ã«è«æã§çºè¡¨ã®å½¢ãã¨ã£ã¦ããã°ãæå©ã ã£ãã ããã«ã
appendãappend!ã¨ãã£ãé¢æ°ãããããCons Listãããã£ãã append ã Cons! List ãããã£ãã append! ã¨ã åã«å¿ããã¢ã«ã´ãªãºã ãæå¾ ããã Cons ã£ã¦"使ããã³ã«å¤ãã"ã®ã? ã»ã»ã» "ã¡ã¢ãªã¢ãã¬ã¹ãéã" ã ããã (Cons'' 3 (Cons' 2 (Cons 1â¦
ä¸ã®ä¾ã§ããã¨ãèªå㧠"ãã®" ãä»ãã¦ãããããªãã®ã ã ç·å½¢åãæ±ãé¢æ°ãç·å½¢åã§ãããã ããã"è²·ã"ã!ãã¼ã¯ãã¤ãã "財å¸"ã§ã¿ãããè²·ã "ãã®è²¡å¸"ã§ãããã"ããã«è²·ã"
ã ããªä¾: 財å¸ã§ã¿ãããè²·ã 財å¸ã§ããããè²·ã ããä¾: "財å¸"ã§ã¿ãããè²·ã "ãã®è²¡å¸"ã§ããããè²·ã
100åããã° ã¿ãããè²·ãã 100åããã° ããããè²·ãã ã ããã¨ãã£ã¦ã"100åããã° ã¿ãããè²·ãã ã㤠ããããè²·ãã" ããã§ã¯ãªãã
Wadler ã® Linear Types Can Change the World! ã®ã¼ãããã£ãã å¤ãè«æãªã®ã§ãClean ã® Uniq Type ãè¦ãã»ãã話ãæ°ãããããããªãã 以ä¸ãèªåã®ç解ã
1 + 2 ã¯ãéãã¼ã©ã³ãè¨æ³ã§ã1 2 + ã¨ãªãã (1 + 2) * (3 - 4) ã¯ã 1 2 + 3 4 - * ã ã éãã¼ã©ã³ãè¨æ³ãªãã¦èªããªãã¨æããããããªãããæ¥æ¬èªã ã¨æãã°ã¹ã©ã¹ã©èªããã Forthã®ç³»èãéãã¼ã©ã³ãè¨æ³ã® Joy ã Factor ãã¡ãã£ã¨è¦ã¦ã¿ããâ¦
æ¥é±ã®ã¼ãã§ãWadler ã®ã Linear types can change the world! ããããããã®ã§ãèªãã§ã¿ããç·å½¢åã®å¤ã¯ãã³ãã¼ç¡ç¨ãç ´å£çä»£å ¥ä¸çã ã³ãã¼ç¡ç¨ã¨ã¯ãä¾ãã°ãéè¡å£åº§ã¸ã®åç §ã¯å¿ ãã²ã¨ã¤ã ãã¨ä¿è¨¼ãããã¨ã§ãSICPã§ãã£ããããªãreader & wrâ¦
é¢æ°åä½ã®CGIãããAjaxã§ã¡ã³ã¡ã³çµæãåãã¨ã£ã¦ãçµã¿åãããã¨ããã¹ã¿ã¤ã«ãå¯è½ã HTTPãµã¼ãã®æ©è½ã¯Apacheã«ä»»ãã¦ãä»ã®ãCGI+Ajax+DHTMLã®èªååã®é¨åã¯åãé¢ããªãã ãããï¼
Ïãè¿ã CGI ãã (define-service (pi) (* 4 (atan 1)))ãªã©ã¨è¨ç½®ãããã ã ããç¡åé¢æ°ãSchemeã«ãããã¨ããé£æ³ãã¦ãç¡åCGIãèãã¦ã¿ããã ããã $ è¨æ³ã§ã (<HTML> (<BODY> (<BUTTON> :onclick ~(alert $(* 4 (atan 1))) "Click me to see an approximation of PI</button></body></html>â¦
(define-service (server-date) (current-date)) (<HTML> (<BUTTON> :onclick ~(with-hop ($server-date) (lambda (h) (alert h))) "Server time"))ã¨æ¸ãã¦ããã¨ã Hop ã¯ããèªä½ãHTTPãµã¼ãã define-service ã§ãèªå㧠CGI ãè¨ç½®ãã¦ãããã HTMLã¯ãã¿ã°ãSå¼ã§</button></html>â¦
ç§ãã¡ã®æå ã«ããã®ã¯ãHTTPãµã¼ãã¨ãCGIã¨ãJavascriptã¨ãAjaxã ã HTTPãµã¼ããç«ã¦ãã CGIã Bigloo (Schemeå¦çç³») ã§æ¸ãã¦è¨ç½®ãä¾ãã°URLã¯ãhttp://hoge.com/serverdate.cgi HTMLãæ¸ããAjax ãªãã prototype.js ã使ããããããªæãã <html> <head> <script src="prototype.js" type="text/javascript"></script> <script type="text/javascript"></head></html>
Hop, a Language for Programming the Web 2.0ããããããã説æãããã¨æãããµã¼ãå´ã®ç¾å¨æå»ããAjaxã§åãåã£ã¦ãåçã«è¡¨ç¤ºããHTMLãæ¸ããã¨ãèããã
ãããããã©ã¦ã¶ã®ä¸ã«ã®ã£ã¦ããã®ã OCaml ã® VM ã§ã OCaml ã§æ¸ããã¢ãã¬ãããåããã¦ãããããã£ã¨ããã£ãã ãã¡ããã Scheme ã®ã¢ãã¬ããããããã Haskell ã®ã¢ãã¬ãããããã ãã©ã¦ã¶ã®ä¸ã«ãããã VM ãè¼ããããããããã®ä»çµã¿ãâ¦
ã¨èãã¦ããã¨ãåæ£ã·ã¹ãã ã®Plan9ã®èãæ¹ã¨ããã®ã¯ããã ããã§ããããã«ãã¾ã話ã ã¨ã¤ãã¥ãæãã ããããæ®åããªãããçµµã«æããé¤ ã ã ç¾å¨ããã©ã¦ã¶ã®ä¸ã«ãJavascript ã® VM ã ã® Java ã® VM ã ã®ãã®ã£ã¦ããããã§ããã® VM å士ã åæ£â¦
ä»é±ã® OCaml nagoya ã§ããOCaml ããã©ã¦ã¶ã§ã¯ã©ã¤ã¢ã³ãå´ã§å®è¡ã§ãããé¢ç½ããã¨ãã話ã«ãªããçã§æ¤è¨ããã ããããã°ãã¢ã©ã³ã»ã±ã¤ããããªãã¨ãè¨ã£ã¦ããã http://itpro.nikkeibp.co.jp/a/it/alacarte/interview0626/alan_5.shtml Webã®æâ¦
Haskellãè¯ãè¨ã人ã¯ãHaskellãååããã£ã¦ããªãã Haskellãæªãè¨ã人ã¯ãHaskellãå ¨ãããã£ã¦ããªããããã¯ãã¦ãããhttp://www.ocaml-tutorial.org/ja ã®ç¿»è¨³ãé²ãã§ãã¾ãã ä»æ¥ãIf Statements, Loops and Recursion ã®é¦è¨³ãã³ããããã¾â¦
range é¢æ°ãèãããã·ã³ãã«ã«ã (define (range a b) (if (> a b) [] (cons a (range (+ a 1) b))))ããã¯ãæå¾ã«å¼ã³åºãããé¢æ°ã cons ãªã®ã§ãæ«å°¾å帰ã§ã¯ãªããæ«å°¾å帰ã«ããã¨ã (define (range a b l) (if (> a b) (reverse! l) (range (+ a 1â¦
ã¢ã«ã´ãªãºã ãæ¹è¯ããããé«éã«è§£ããããã«ãªãã¾ããã http://tsukimi.agusa.i.is.nagoya-u.ac.jp/~sydney/ocaml/index.php?%A5%CD%A5%BF%B5%AD%CF%BF%B8%CB 002g0000b0a00300 5b00d0f00e000ca0 f00001b020d0g070 0cd03702050f00b0 000b5000a0800047 dâ¦
16x16ã®è¶ é£åæ°ç¬ããä¾ã®ããã°ã©ã ã 8æé@Pen4 2.6GHz ã¶ãã¾ããã¦è§£ããªãã£ã¦ã®ã¯ãã©ãã解ããªãã ãããªãã®ã人éã解ããã ãããã»ã»ã»ãå¤åãã¢ã«ã´ãªãºã ã«æ¹è¯ã®ä½å°ãããã¯ãã ãSchemeã®ãandãoré¢æ°ããã£ã¦ããã¨ã¯ãé 延è©ä¾¡ã ãªâ¦
æ¨æ¥ã®ãçããã²ã¨ã¤è¦ã¤ãã£ãããã大åè±åºã¨ããã®ã¯ãé 延è©ä¾¡ã®Haskellã§ã¯ãè¤æ°è§£ããããã¤ããã®ãªã¹ãã«headããããã°ããããããHaskellããã¼ãç¶ç¶ãããªããããã