2007-06-01ãã1ã¶æéã®è¨äºä¸è¦§
ä»æãããã¿ã´ã©ã¹ã¤ãããè¦ã¦ãã¦æ°ä»ããã®ã ãã©ãããã¤ããããããã®å±±ç°ä¸æãããã太ã£ããã§ã¯ãªããããã¨ãã¨èå°ç§è¦ããã¯å°ã太ãã ã£ãããä»ã¯ã ãã¶å¤ªãã
å¤åç´ã®è¦åºãï¼ å ¨ç±³ã§ãµã¤ãã¼ãã!! ããè¦ãã¨å°ããããã¤ã»ãã¼ã4.0 ããããå ¬éããããªãã¨ããã®ã¯æ±ã¹ãã ãªãã¨æã£ããå¤åãã¸ã ã£ãã
ãåè«åå¼·ä¼ å¾©ç¿ãã®ç¶ãã¿ãããªããã·ã話é¡ã¯ã¬ãã©ã¯ã·ã§ã³ãã¬ãã©ã¯ã·ã§ã³å¯¾ï¼retraction pairï¼ã¨ã¯ãr:XâYã¨i:YâXã®å¯¾(r, i)ã§ãi;r = Xï¼idXãåã«Xã¨æ¸ãï¼ãæºãããã®ãrã®ã»ããï¼çãæå³ã§ï¼ã¬ãã©ã¯ã·ã§ã³ã¨å¼ãã§ãiãåãè¾¼ã¿ï¼embeddinâ¦
ã¬ãã©ã¯ã·ã§ã³å³å½¢çã¤ã¡ã¼ã¸ã¯ãã¬ãã©ã¯ã·ã§ã³ã®èµ·æºï¼ããªï¼ï¼ãã«æãã¾ãããè¨ç®è«ï¼å帰é¢æ°è«ï¼ããããããã«ãããã«ã«ãåã®çå¼çè¨ç®åã¯çµµãæãã¦ï¼pictorial calculationï¼æ¸ã¾ãã¦ãã¾ããã¨ãå¤ãã®ã ãã©ãçå¼çè¨ç®ï¼equational calcuâ¦
ãµã¼ãã¼ãå¼ã£è¶ãã§ãã¿ãã¿ãã¦ããã£ã¦ãã¨ããªã
ã¬ãã©ã¯ã·ã§ã³ï¼retractionï¼ãããçèªå·±å°ï¼idempotent endomorphismï¼ã®å ¸åä¾ã¤ããèµ·æºã¯ãå³å½¢ã®å¼ãè¾¼ã¿å¤å½¢ã®ãããªæ°ããã¾ããããã£ãæ°ãããã ãã§ã»ãã¨ã®ã¨ããã¯ç¥ããªããã©ãã¾ã¼ã¨ã«ãããçµµãæãã¦ããã¾ããå¹³é¢ãPã¨ãã¦ãæ®éã®åº§â¦
Erlangã«ããWebãµã¼ãã¼ã¨ããã°ãYAWSã¨ããã®ãæåãããã§ãããããã£ã¨åå§çãªä»å±ã©ã¤ãã©ãªã»ã¢ã¸ã¥ã¼ã«httpdã使ã£ã¦ã¿ã¾ããã解説ææ¸ãï¼ããããç¥ããªããã©ï¼è¦ã¤ãããªãã£ãã®ã§ãmanãã¼ã¸ã¨ã½ã¼ã¹ãæ¾ãèªã¿ã man httpd -- http://wwwâ¦
ååï¼ãã®2ï¼ããå¼ç¨ï¼ âæªå®ç¾©ã®å®ç¾©âãã¨ã«ãåãåé層ã®æ¦å¿µãå°ããã¤éã£ã¦ãã¾ãããããã¯ä¸¦åã«åå¨ããç°ãªã£ãå®å¼åã§ãããåªå£ãè«ãã¦ãçç£çã§ã¯ããã¾ãããç¡çã«åªå£ãä»ãããã¨ããã¨ãä¸æ¯ãªè°è«ã«ãªãããã§ãã ã¨ããããã§ããâ¦
æ¢ é¨æã®å¤©åã¨ãã¦ã¯ãããæ£å¸¸ãªã®ã ãããã湿度ã¯è¦æã ããã¼ããã¡ã
900åã®è¡éº»ã ãè麦ãé£ã¹ã¦ãåå®ãããã¨ããã±ãããããµã¤ããåºããç¬éã«ã¯100åçã®ãã¤ããæ渡ãã¦ããããåã¯ãååæãæ¢ãåºãã¦å·®ãåºããã¨ã«ãªãã
ååï¼ååï¼ããã£ããã¨ã¯ãã¬ã³ã¼ããã¼ã¿ã«ãã£ã¦æ§æãããåã®é層ã¯ããã¼ã¿ï¼ã¤ã³ã¹ã¿ã³ã¹ï¼éåã®å å«é¢ä¿ã§ã¯ãã¾ã説æã§ããªããã¨ã§ããå®éã®ã¨ããããã¼ã¿éåã®å å«é¢ä¿ã§ã¯åé層ã表ç¾ã§ãã¾ãããåé層ãå®ç¾©ããæ£çµ±æ´¾ï¼ã¨åãæãï¼â¦
ã¬ã³ã¼ããã¼ã¿ã®åé層ï¼type hierarchyï¼ã¯ãã¨ãããèãã¦ã¿ãåé¡ãªã®ã§ããæ¯åèããçµæãå¿ãã¦ãã(è¦ç¬)ãããªæ°ãããã®ã§æ¸ãçãã¦ãããã¨ã«ããããã£ã¨ãJavaScriptãäºä¾ã«èãã¾ãããã ããç¾ç¶ã®JavaScriptã®åã·ã¹ãã ã¯å¥å¦ã§ä¸æ ¼å¥½â¦
次ç·ï¼æªå°±å¦å ï¼ï¼ãããã§ã¯ããç¶ããã«ã³ã¬ãããããããç¶ï¼ãããããªã«ï¼ã次ç·ï¼ã俺ã17å¹´åã«ãªã¸ã¤ãã£ã³ããããã£ã御å®ãã ããã17å¹´åãã£ã¦ï¼
é·ç·ï¼ããç¶ãããä»æ¥ã¯ç¶ã®æ¥ãªãã ãããã¼ã«é£ãã¦ã£ã¦ãã次ç·ï¼ãããåã«ã¯ãã±ã¢ã³ã®æ¬è²·ã£ã¦ãããªããéãããããã¼ããããã¯ã
é·ç·ï¼ã女åãµãã«ã¼ã§ã¯ããªãã§è©¦åãçµãã£ãå¾ãã¦ããã©ã¼ã ã®äº¤æãããªãã®ï¼ãã ãããã®äºæ ã¯å¯ããã¤ããã ãã©ããã¾ã説æã§ããªãã
ã¾ã¼ãã風åã¨ã温æ³ã§ä½¿ããã®ã¯ä¾¿å©(?)ãããã§ããåã¯é²æ°´ããé²ã³ã¼ãã¼ã®ã»ããåå®ãªè¦æ±ã ãªã
以åã«ããã§æåºããã¢ããã®ã¯ã¤ãºãErlangããã°ã©ã ã«ãã解ãã¦ã¿ã¾ãããã解ãããã¨ã¯è¨ã£ã¦ããããã°ã©ã ã解ã®åè£ãå ¨é¨åæããã·ã©ãããã·æ¹å¼ã§ããã©ããã§ããããã§éãã ãå®é¨ãã¦ã¿ãã¨ããªããªã楽ããã§ãããå å®¹ï¼ ã¢ããã®ã¯ã¤ãºâ¦
æè¿ãã¦ç¶ãã«ï¼6æ9æ¥ã¨6æ12æ¥ï¼å¥å¦ãªãã©ãã¯ããã¯ãåãã¾ãããäºå®ä¸ã¹ãã ãªãã ãã©ãããã¼ã³ããªãã»ã©ããã¨æå¿ããã®ã§æ¶ããã«ãããã©ãä»å¾å種ã®ãã©ãã¯ããã¯ã¯åé¤ãã¾ãããã§ãã©ãããä»æããã¨ããã¨ï¼ ã¾ããå¤ãã®äººãèå³ãâ¦
Erlangã ã£ã¦ãã¬ã¤ã¯ããã®ã ããCafeOBJã ã£ã¦â¦â¦ ã£ã¦ãããã¯ãªãããDiaconescuã®è«æ*1ã«ãã£ãä¾ï¼ mod R2VECT { pr(FLOAT *{sort Float -> Real}) -- FloatãRealã¨ãªãã¼ã [Vect] -- RÃRã§å®ç¾©ããããã¯ãã«ç©ºéï¼ã®ã¤ããï¼ op 0 : -> Vect op <_,_> :</_,_>â¦
Erlangãã¾ã ã³ã½ã³ã½ããã£ã¦ãããããã®ã§ããï¼ããã»ã¹ééä¿¡ãå©ç¨ããéã«ãRPCï¼Remote Procedure Callï¼ã¿ãããªå½¢ã«ããã¨ä½¿ãããããã¨ãããããã§ããRPCã¨ã¯è¨ã£ã¦ããå®éã«ã¯ãªã¢ã¼ãï¼é éå°ï¼ãããªãã¦è¿è·é¢ã ã£ããããã®ã§ãããããâ¦
èå³ãæã¤äººã¯é常ã«å°æ°ããã¤åå¿ã¯ããããã«ãªããã¨ãæ¿ç¥ã§CafeOBJã®è©±ãç¶ãã¾ããã¢ã¼ãã«ç¾¤ã®ä»æ§ã次ã®ããã«æ¸ãã¾ããã mod ABGRP { -- Abelian group [A] op _+_ : A A -> A op 0 : -> A op -_ : A -> A vars X Y Z : A eq X + Y = Y + X . -â¦
å³ã¯æ¢ã¾ããªããããã¾ãï¼å²ã¨æ¬æ ¼æ´¾ï¼ã¯åºããã§ããã¡ãªé±ã§ãããã§ããã¾ãCafeOBJããã£ã¦ããããã®ã ãã©ãã
ã¾ã å³ãæ¢ã¾ããªããä¸èª¿ã ãããã¯ã¨ãããï¼ãã½ã¼ãã¨ææ¨ã¨åãå®ä¾ãã¾ããã¦ãã«ãCafeOBJã®ãµã³ãã«ã³ã¼ããåºããã®ã§ãä¹ ãã¶ãã«CafeOBJã触ã£ã¦ã¿ã¾ããããã¼ããã£ã±ãããé¢ç½ããªãã§ããããåãããªãã¨ãããããã¾ãããCafeOBJã®ã¦ã¼ã¶â¦
風éªã¨ã¯éããããªæ°ãããããããå³ãè¾¼ãã¨ã¤ããã
ãã®ãã¤ã¢ãªã¼ã§ã¯ãåï¼ã¿ã¤ãï¼ã®è©±é¡ããã£ããåãä¸ãã¦ãã¾ããä¾ãã°ï¼ ä»é¢¨ã®åçè«å ¥éï¼æ¬ç·¨ï¼ ãã¥ã¢ã«ããã°ã©ãã³ã°ã¨ã¨ã¯ã½ã·ã¹ãã²ã¼ã åã®ã¹ã¿ã³ã¹ã¯"Types as Theories"ãã¤ã¾ãåã¨ã¯ã»ãªãªã¼ï¼å½¢å¼ççè«ï¼ã ã¨ã¿ãªãç«å ´ã§ããã§ããâ¦