2009-09-01ãã1ã¶æéã®è¨äºä¸è¦§
ãã¦ã³ãã¼ãã¯ãbitbucketï¼http://bitbucket.org/m_hiyama/caty-python-proto1/downloads/ï¼ãããã¦ãã ããã詳細ã¯ãCaty/Python Prototype-1 version 0.1.1 ï¼ Bitbucketããã覧ãã ããã次ã®URLãããtar.gz ã¾ã㯠zip ãã¡ã¤ã«ããã¦ã³ãã¼ãã§ãâ¦
æ¨æ¥ã®å¤å»ãéãæ©ãã¦ããããèã®é§è»å ´ã®ãªãããããè ¹ç©ºããã¼ããè ¹ç©ºããã¼ãã¯ã¼ãããæ»ã«ãããã¨ããç«ã®é³´ã声ãèããããè¿ã¥ãã¦ã¿ãã¨ãç«ã¯ãããããã¦ããããããããªãã®ã§ãã³ã³ããã¾ã§è¡ã£ã¦ãçä¹³ãã¹ãã£ãã¯ãã³6æ¬å ¥ãããããâ¦
ææ¥9æ30æ¥ã«ãCatyã®æåã®ãªãªã¼ã¹ããã¾ããã¤ã£ã¦ããã¢ã¼ã«ã¤ããã©ã£ãï¼ãã¶ãbitbucketï¼ã«ã³ã½ãã¨ç½®ãã ãã§ããã©ãã½ããã¦ã§ã¢ãããèªèº«ã«ã¤ãã¦èªããã¨ããã®ã§ãããä»ã®æ®µéã§ã¯ãCatyãã¤ã³ã¹ãã¼ã«ãã¦å®è¡ãã¦ããã£ã¦ãããã¸ã£ï¼ ãªâ¦
ããã¼ãããããç§èåã«ããããã¹ããããã¨ããååã®ãã½ã³ã³ã·ã§ãããããã¾ãããã¨ã«ããæ¿å®ãå®ãããããã«ãå¾æ¥å¡ã«æ¨æ¶ããããªããã¨ããææ³(?)ãæ¡ç¨ãã¦ã¾ãããæ¨æ¶ãç¦æ¢ãããããããªããã©ããããªãã¨ã¯æè²ãå¼·å¶ãããªããã¨ããâ¦
次ç·ï¼ããã¨ãããããªããªãããã¯ãããã©è±ããªããã®ã¯ãªã¼ãã ï¼ãç¶è¦ªï¼ããã¼ãããªãã ããªã¼ãé´ãé´ä¸ããºãã³ãã¯ãã¦*1è±ããããªã次ç·ï¼ããã¦ãã ãããã¦ãã§æãããã©ãè±ããªãã§ãããé·ç·ï¼ã(å²ãè¾¼ãã§) ã²ãï¼ãç¶è¦ªï¼ãâ¦ï¼ã次ç·â¦
ãèªé¸èªè¦ã¨ã³ããªã¼ã»ãªã³ã¯éãã®ãªãã«ãé¡å¸ãã®ãª-幸夫ããããã¿ã®ã¨ã³ããªã¼ã2ã¤å ¥ãã¦ããã¾ãããï¼ã©ã¡ãã2008å¹´10æï¼ ãã¼ããããããã¡ã ããé¡å¸ãã®ãª-幸夫ãã æå¼ãããã¬ã¼ãã³ã° åãææï¼2008å¹´10æï¼ã«ã¡ã¢ç·¨ã«æ¬¡ã®ã¨ã³ããªã¼ãâ¦
1æ¥æ©ãã«æ°´æãããã«ã¯é常å¶æ¥ãã§ãªãã¨ãã¾ã¼ããªãããªãå¿ è¦ã«ãªãã®ã§ï¼ä¼ãã¨ãã¨ããã«ãã«ã«ãªãä½è³ªï¼ã ãã«ã«ãªããªããã¡ã«å¾©å¸°ãã¤ã£ã¦ããã«ã«ãªã£ã¦ããæ°ããããã
ã¨ãä¸éã§ã¯è¨ã£ã¦ãããã§ãããåã¯å¥ã«ä¼ã¿ããããªãã®ã ãã©ããã¶ããæã»ç«ã¯å¶æ¥ãã¾ããã1æ¥æ©ãã«æ°´æãããã«ã¯é常å¶æ¥ãã§ãªãã¨ãã¾ã¼ããªãããªãå¿ è¦ã«ãªãã®ã§ï¼ä¼ãã¨ãã¨ããã«ãã«ã«ãªãä½è³ªï¼ã
æ¨æ¥ãKuwataããã¨æã¡åããã¦ãããããæåã®ãªãªã¼ã¹ï¼å ¬éï¼ãããããã¨ãããã¨ã«ãªãã¾ãããã¾ã å®åã§ä½¿ããã¹ãã¼ã¿ã¹ã«ã¯ããã¾ãããã試ä½ãã¼ã¸ã§ã³ã¨ããããproof-of-conceptãã¢ã¨ããä½ç½®ä»ãã§ããã9æã¨ã³ããããã«å ¬éãã¾ããã©ã¤â¦
http://b.hatena.ne.jp/entrylist?sort=count&url=http%3A%2F%2Fd.hatena.ne.jp%2Fm-hiyama%2F ã¨ããURLã§ããã®ããã°ãããã¤ã©é£¼è²è¨ãã®ããã¯ãã¼ã¯æ°ã確èªã§ãã¾ãããããã¦ããã¯ãã¼ã¯ã¯ããã¦ãªãï¼ãã¾ã人æ°ããªãï¼ãã©ãåã¨ãã¦ã¯ãããã¯â¦
次ç·ï¼ããã¨ããããã°ã¯ã·ç¥ã£ã¦ãï¼ãç¶è¦ªï¼ããããç¥ã£ã¦ãããã£ã¦ãããããªãã§åãããããªãã¨ç¥ã£ã¦ãããã ï¼ãé·ç·ï¼ããããããããã¬ãã§ãã£ã¦ãããç¶è¦ªï¼ããããããããã¼ã彼女ã¯å¦ã«å¤ããã¨ãããç¥ã£ã¦ãããããªã次ç·ï¼ãã°ã¯ã·â¦
鳩山ãããç·ç大è£ã«ãªããã ãããã¼ãããããæ¬ã®æ¨è¦ææ¸ãã®ã¯ãããã¼ããç¥ãããããªãã£ãã®ã¯ã鳩山ããããããªãã¨æ¸ãã¡ãã£ããã¨ãããªãã®ï¼
次ç·ï¼ããã¨ãããã¯ãªã«äººï¼ãç¶è¦ªï¼ãããã¼ããã¼ã¨ãæ¥æ¬äººã ãªã次ç·ï¼ããããããªãã¦ãç«æ人ã¨ãæ¨æ人ã¨ããç¶è¦ªï¼ãããï¼ å ãããªããï¼ãé·ç·ï¼ã(å²ãè¾¼ãã§) ãã¨ãããã¯ãªã¸ã³ã ãã次ç·ï¼ããªã¸ã³ï¼ ãªã¸ã³äººï¼ãé·ç·ï¼ãã¢ãããããªã¸â¦
ãåè«ï¼ç±³ç°åãè¾¼ã¿ã¨å°ã®ç¤¾ä¼æ§ãã§ããçã£ãã¯ã±ã¯ã«ã³ãã¤ãã¨ãæ¸ãã¦ãã¾ãããæ¨æ¥ã®å 容ã¸ã®è¬ç½ªï¼åãã©ãããåãä½ã話ãã§ã´ã¡ã³ããµã¤ã¨è¨ã£ãããã§ããããã®äºæ ã¯ï¼ ã¨ããåé¡ãèãã¦ãã¦ãããã§å½é¢ãã¦ããç¹å®ç¶æ³ã¨ä¸è¬è«ãæ··åã»â¦
æè¿ã®OSããã¢ããªã±ã¼ã·ã§ã³ã®ãç¯ä»ã§åæãªæ¯ãèãã«è ¹ç«ããããã¨ã¯å¤ã ããã®ã ãã©ï¼ ãã¼ãã³ ãã¼ã«ãã¼ãã使ãã®ãã©ã¦ã¶ã«ã¤ã³ã¹ãã¼ã«ããã¾ããã ã¤ã³ã¹ãã¼ã«ãããã©ããèããããããããããã
æè¿ããã¸ã£ã姿ã®æ¾æ¬äººå¿ã®é²åºãã»ãã¨ã«åããªããªããªã®ã³ã¬ï¼ï¼ã£ã¦ãæ ç»ã®ããã¢ã¼ã·ã§ã³ãªãã ããããéå°ã ããï¼
æå°æ½è±¡ãã¡ã¤ã«ã·ã¹ãã ã®ä»æ§æ¡ãæåã«åºããã®ã¯ã6æ3æ¥ãæå°æ½è±¡ãã¡ã¤ã«ã·ã¹ãã ã®ä»æ§æ¡ãã§ãã»ã¼åºã¾ã£ãã®ã7æ7æ¥ãæå°æ½è±¡ãã¡ã¤ã«ã·ã¹ãã ãããããå®è£ ãã§ãããã®ããã ã®å¤æ´ã¯ä»¥å¤ã«å°ãªãã¦ã次ã®ã¡ã¿ãã¼ã¿å¨ãã®äºé ã§ãã ãã¡ã¤â¦
æè¿ã®å ±éã«ããã¨ãã¢ã©ãã³ã¤ããããªããã³ï¼over hundred; xâ§100ï¼ã®äººã4ä¸äººãè¶ ããã¨ãã ãã¢ã©ãã³ä¸ä»£ããã¼ãããã¾ãæ°ããªãã ãããªã ããããã£ããæ°ãã¾ããããã¼ã±ãã£ã³ã°ã®ã¿ã¼ã²ããã«ããã»ã©ã®æ°ãããªããããããªããã
ãCatyããã¸ã§ã¯ãï¼ã½ããã¦ã§ã¢ã«ã¤ãã¦ãããï¼ ãããã£ãã¨çºé³ãä¼¼ã¦ããã®ã§ããããã£ã¡ããããã´ã«æ¡ç¨ããããã¨ææ¡ããããKuwataããã«ããµã³ãªãªã«æããããããããã»ãããããã¨å対ããã¾ããããããã£ã¡ããã«ã¤ã³ã¹ãã¤ã¢ããããã£â¦
æ¨æ¥æ¸ããã¨ã³ããªã¼ãåè«ï¼ç±³ç°åãè¾¼ã¿ã¨å°ã®ç¤¾ä¼æ§ãã¯ãã¾ã£ããã®ãã³ãã³ã«ã³ã§ãããryoããã®ãææã®ã¨ãããâk.(k;f = k;g) ãä»®å®ãããªããkã«idãå ¥ããã°å³åº§ã« f = g ãåºãã®ã§ããã以ä¸ã®è°è«ã¯è«ççã«ã¯ä½ã®æå³ãããã¾ããããè«çâ¦
[追è¨]ãã®ã¨ã³ããªã¼ãåè«ï¼ç±³ç°åãè¾¼ã¿ã¨å°ã®ç¤¾ä¼æ§ãã¯ãã¾ã£ããã®ãã³ãã³ã«ã³ã§ãããryoããã®ãææã®ã¨ãããâk.(k;f = k;g) ãä»®å®ãããªããkã«idãå ¥ããã°å³åº§ã« f = g ãåºãã®ã§ããã以ä¸ã®è°è«ã¯è«ççã«ã¯ä½ã®æå³ãããã¾ããããè«çâ¦
ã¨ããåé¡ãèãã¦ããããããºã«ã«åºä¼ã£ãã®ã§ãããåã¯ããºã«ãè¦æãªã®ã§ãã©ãªãã代ããã«èãã¦ãã ãã(è¦ç¬)ãkåã®ã¡ã¢ãªã»ã«ã¨1種é¡ã®æ©æ¢°èªå½ä»¤ãæã¤âãã·ã³âãèãã¾ãã ã¡ã¢ãªã»ã«ã«ã¯ã¢ãã¬ã¹ãä»ãã¾ããããã§ã¯çªå·ä»ãã1çªããã¯ãâ¦
ä»æ§å¾ ã¡ã§å®è£ ãæ»ããªãã¦ã®ã¯æ ããªã話ãªã®ã§ãåãæ¥ããå³æ°ãªãBNFã®ã¿ãè£å©çãªå®ç¾© å ::= åå¤æ° | ä»»æã®JSONåè¡¨ç¾ | 'never' ã¹ã«ã©ã¼å ::= integerå | numberå | stringå | booleanå | nullå | ç°¡æåæå | 'anyScalar' /* * ã¹ã«ã©ã¼â¦
ç§åéãé£ã¹ã¦ãã¦ï¼ é·ç·ï¼ããã¨ãããããããã©ã¯ã¿ã§ããï¼ãç¶è¦ªï¼ãããã ããé·ç·ï¼ããã©ã¯ã¿ã¯é£ã¹ãããªãããï¼ãç¶è¦ªï¼ãé£ã¹ãããªãããªããã©ãç¡çãã¦é£ã¹ãªãã¦ãããããé·ç·ï¼ãããã¯ããµã³ãã®å èã§ããï¼ãç¶è¦ªï¼ãããã ããé·ç·â¦
http://return0.dyndns.org/log/2009/09/06#s_1 ï¼ æè¿ã¡ãã£ã¨ä»äºãéã㧠... å°ã£ãããã ãã§ãã¾ã¼ãKuwataããã®æè¿ã®ãã¼ãã¯ã¼ã¯ã®ãããã§ãCatyãWebãã¬ã¼ã ã¯ã¼ã¯ããããªã£ã¦ãã¦ãç°¡åãªãµã³ãã«ãµã¤ããåãåºãã¾ãããã¨ã¯ãããã¾ã ã¾â¦
ãCatyã¨ãã«ã«ãåé åãããï¼ [追è¨]以ä¸ã®è¨è¿°ã§ãééãã¨èª¬æä¸è¶³ãããã¾ãããã¨ãããããã(b=> object {α: A, β: B} | c=> object {α: A, γ: C})ãã¨æ¸ãã¦ãã£ãã¨ãããã(object {α: A, β: B} | object {α: A, γ: C})ãã«ç´ãã¾ãããããã§çâ¦
é·ç·ï¼ããã¨ãããã¯ãè¸è½äººã§èª°ã好ãï¼ãç¶è¦ªï¼ããã¼ããè¸è½äººã¨ãããã¾ãèå³ãªããããªã¼ãæãã¤ããªãããé·ç·ï¼ãå°æ¬ãã¦ããè¸è½äººã¨ãããªãã®ï¼ãç¶è¦ªï¼ãå°æ¬ï¼ ç¹ã«ããªããªã¼ãåã¯ããã®ï¼ãé·ç·ï¼ããããã¼ãé«ç°ç´æ¬¡ããã ããç¶è¦ªï¼â¦
Catyã§ä½¿ãåå®ç¾©ã¨ã¹ã¯ãªããã®æ§æã«ã¤ãã¦ã¯ããJcentricåã·ã¹ãã ã®å®£è¨ã¹ã¿ã¤ã«ã»ã¹ãã¼ãæ§æãã¨ãCatyã¹ã¯ãªããã®æ§æãã§è¿°ã¹ã¾ãããæå³è«ã¯ã»ã¨ãã©è¿°ã¹ã¦ã¾ãããããã§ãæå³ã«é¢ãããªãªã¶ãããªè©±ãå°ãã ãæ¸ãã¦ããã¾ãããã«ã«ãåé â¦
ç¶è¦ªï¼ãããã£ããªãã§ãããªã«ã©ã³ãã»ã«ãéããã ï¼ãé·ç·ï¼ããã£ãç¶è¦ªï¼ãæç§æ¸å ¥ãæ¿ããã®ãé¢åãªãã§ãå ¨é¨è©°ãè¾¼ãã§ããã ãªãé·ç·ï¼ããããããç¶è¦ªï¼ãããã横çã«ãã»ã©ããããªã¼ãé·ç·ï¼ããã®ãã§ãâ¦ãç¶è¦ªï¼ãéãã ãããããé·ç·ï¼â¦
[追è¨]ãã®ã¨ã³ããªã¼ã¯ãCatyã¹ã¯ãªããã®ææ°ã®ä»æ§ã«ã¯è¿½å¾ãã¦ãã¾ãããã注æãã ããã[/追è¨] Catyã¯ã©ããªã½ããã¦ã§ã¢ãã¨ããã¨ããã³ãã³ãã»ã¤ã³ã¿ããªã¿ã ãã¨è¨ãã®ãä¸çªé©åããªãã¨æãã¾ã*1ããã¼ãã¼ãããå ¥åããã³ãã³ãã©ã¤ã³ã®æ§â¦