ToDo:
¤³¤ì¤ÎãÀ®¤Ï¡¢¸À¸ì¤Î¿ô¤ò°Ê²¼¤Ë´Êñ¤Ë¸«ÀѤ뤫¤È ¤¤¤¦¤³¤È¤Ë¤â¤«¤«¤Ã¤Æ¤¤¤ë¤±¤É¡¢Ç¯Îð¤Ë¤â¤«¤Ê¤ê¤è¤ë¤è¤Ê¡£
15ºÐ¤ÇãÀ®¤Ç¤¤Æ¤¿¤éÊÑÂÖ¤À¡£ 20ºÐ¤ÇãÀ®¤Ï¤Á¤ç¤Ã¤È¤¹¤´¤¤¡£ 25ºÐ¤¯¤é¤¤¤¬°ìÈÖãÀ®¤·¤ä¤¹¤½¤¦¤Êµ¤¤¬¤¹¤ë¡£ 30ºÐ¤¯¤é¤¤¤Ë¤Ê¤ë¤È¤Þ¤¿¥¥Ä¤¯¤Ê¤Ã¤Æ¤¤Æ¡¢ 40ºÐ¤¯¤é¤¤¤ÇãÀ®¤·¤Æ¤ë¤È¤«¤Ã¤³¤¤¤¤µ¤¤¬¤¹¤ë¡£
(01:31)
¤Ê¤ë¤Û¤É¡£
http://www.nmt.ne.jp/~ysas/diary/?200706c&to=200706291#200706291
¤³¤ì¤Ï Code Golf ¤ÎÊý¤Ç»È¤Ã¤¿¤³¤È¤¢¤ë¤±¤É¡¢ ¤¢¤ì¤¯¤é¤¤¤Î¿¿·õ¤µ¤Ç¤ä¤é¤Ê¤¤¤È½Ð¤ÆÍè¤Ê¤¤¤Ê¤¡¡£
(01:34)
http://d.hatena.ne.jp/odz/20070629/1183121217
koreha omo si roi.
gmail toka dato motto owatteru na.
(01:37)
Æɤ߽ª¤ï¤Ã¤¿¡£¤Ê¤«¤Ê¤«ÌÌÇò¤«¤Ã¤¿¡£ ¥¹¥È¡¼¥ê¡¼¤¬°ìËܤ¸¤ã¤Ê¤¤¤«¤é¹ï¤ó¤ÇÆɤó¤Ç˺¤ì¤Æ¤Æ¤â ¤½¤ó¤Ê¤ËÌäÂê¤Ë¤Ê¤é¤ó¤«¤Ã¤¿¤Î¤â¤è¤¤¤È¤ª¤â¤¦¡£
¤Ê¤ó¤«¤³¤¦¡¢¼ü¿Í¤Ã¤ÆÊѿͤФ䫤ä¤Ê¡¼ ¤È»×¤Ã¤Æ¤·¤Þ¤¦¤Î¤À¤±¤É¡¢ ¤è¤¯¤è¤¯¹Í¤¨¤ë¤È¥É¥¹¥È¥¨¥Õ¥¹¥¡¼¤Î½ñ¤¯¿Í´Ö¤Ê¤ó¤Æ ¤â¤È¤â¤ÈÊѿͤФ«¤ê¤Ê¤Î¤Ç¤¢¤Ã¤¿¡£
¤Ç¤â¥¢¥ë¥«¥È¥é¥º¤Çʹ¤¤¤¿´¶¤¸¤Ç¤âÊѿͤФ䫤À¤Ã¤¿¤±¤É¡¢ ¥¢¥á¥ê¥«¿Í¤Ê¤ó¤Æ²¶¤Ë¸À¤ï¤»¤ê¤ã¤ß¤ó¤Êά¡£ ¤¤¤ä¤½¤¦¤Ç¤â¤Ê¤¤¤«¡£
¤Ç¤É¤¦ÌÌÇò¤«¤Ã¤¿¤«¤È¤¤¤¦¤È¡£ ¤¦¡¼¤ó˺¤ì¤¿¤Î¤À¤Ã¤¿¡£
¤¢¡¼¤Ê¤ó¤À¡£Åö»þ¤Îʿ̱¤Èµ®Â²¤ÎÃÇÀä¤Ã¤×¤ê¤Ï ¿Ò¾ï¤Ê¤â¤ó¤¸¤ã¤Ê¤¤¤Ê¡¼¤È¤«¡£
¤¤¤ä¤Þ¤¡¤½¤¦¤¤¤¦¤³¤È¤è¤ê ¤³¤¦¥Í¥Á¥Í¥Á¥Í¥Á¥Í¥Á¤È ¿Í´Ö¤Ë¤Ä¤¤¤ÆºÙ¤«¤¤ÉÁ¼Ì¤ò ¤Ò¤¿¤¹¤é¤Ë¤·¤Æ¤¤¤¯¤À¤±¡¢ ¤Ã¤Æ¤¤¤¦¤Î¤¬³Ú¤·¤¤¤ó¤À¤è¤Ê¡£
(13:26)
¤¿¤Ö¤óÆó²óÌܤÀ¤±¤ÉÆɤó¤Ç¤ß¤¿¡£
¤È¤ê¤¢¤¨¤ºtypo¤Ý¤¤¤Î¤¬¤¢¤ë¤Ê¡£
http://assam.cims.hokudai.ac.jp/et/indexj.html
¤³¤Î¾ò·ï¤Ï¾¤Î¥ë¡¼¥ë¤Î_·Ê¶·_¤Ï¼õ¤±¤Þ¤»¤ó¡£
¤¿¤Ö¤ó±Æ¶Á¡£
_C¸ì_¤Î¤è¤¦¤Ë½èÍý¤òºÙ¤«¤¯»ØÄꤷ¤¿¤ê
C¸À¸ì¡£
(14:03)
ʸ¾Ï¤Î¼çÄ¥¤Îº¬µò¤¬¤è¤¯¤ï¤«¤é¤Ê¤¤¤Î¤Ï¡¢ ¼ç¤Ë Prolog ¤ÈÈæ³Ó¤·¤Æ¤ë¤«¤é¤À¤È»×¤¦¡£
¥×¥í¥°¥é¥à¤Ë¸·Ì©¤ÊÀµÅöÀ¤òµá¤á¤ë¤ÈÂå½þ¤¬È¼¤¤¤Þ¤·¤¿¡£Î㤨¤ÐÏÀÍý¥×¥í¥°¥é¥ß¥ó¥°¤Ç¤Ï
¤È¤«
µ½Ò²Äǽ¤Ç¤¹¡£Î㤨¤Ð¡¢Prolog¤Ç¤Ï
¤È¤«¡¢¤³¤¤¤¦¤Î¡£ ¤Þ¤¡Ëͤ¬ÃΤé¤ó¤Î¤¬¥¢¥ì¤È¤¤¤¦¤«ÂоÝÆɼԤϤޤȤâ¤Ê¸¦µæ¼Ô¤Ê¤ó¤À¤í¤¦¤· ¤Þ¤¡¤·¤ç¤¦¤¬¤Ê¤¤¡£
¤¿¤À¤Ê¤ó¤«¡¢ ¡ÖÈó¾ï¤Ë¹â®¤Ë¡×¤È¤«¡ÖÈó¾ï¤Ëñ½ãÌÀ²÷¡×¤È¤« ¤¬Û£Ëæ¤Çº¬µò¤¬¤½¤Î¾ì¤Ë̵¤¤¤Î¤Ï ¥¨¥ó¥¸¥Ë¥¢Åª¤Ë¤Ï¥¤¥ä¥ó¤Ê¤«¤ó¤¸¡£ AppleŪ¤È¤¤¤¦¤«¡£
(14:09)
¤È¤ê¤¢¤¨¤º libboost ¤Ï static link ¤·¤ÆÍߤ·¤¤¤Ë¤ã¡¼ ¤È»×¤¤¤Ä¤Ä¥´¥Þ¤«¤·¤ÆÆ°¤«¤¹¡£
Hello ¡Ä¤È»×¤Ã¤Æ¥É¥¥å¥á¥ó¥ÈÆɤà¤Î¤ËË°¤¤¿¤Î¤Ç YT ¤µ¤ó¤È¤³¤ò¸«¤ë¡£ Æ°¤¤¤¿¤±¤É°ÕÌ£¤Ê¤¤¡£
¤¢¤È¥ê¥ó¥¯¤È¸À¤¨¤Ð¥Ç¥Ã¥É¥ê¥ó¥¯¤¬·ë¹½¤¢¤Ã¤Æº¤¤ë¡£
¤³¤Î¤Ø¤óÆɤá¤Ð¤¤¤¤¤Î¤«¤Ê¡£
http://assam.cims.hokudai.ac.jp/ettext/dtext/chap1.html#1
¤à¡¢¤Þ¤¿¤À¤è¡£
£Å£Ô¤ÎÏÈÁȤߤǤϡ¢¥×¥í¥°¥é¥à¤òºî¤ê½Ð¤¹¤³¤È¤ÏÈæ³ÓŪ¤¿¤ä¤¹¤¯¤Ê¤ë¡£ ¤½¤ì¤Ï¡¢°ìµó¤Ë¥×¥í¥°¥é¥àÁ´ÂΤòºî¤ê¾å¤²¤ëɬÍפ¬¤Ê¤¤¤«¤é¤Ç¤¢¤ë¡£
¤³¤¤¤¦¤Î¸«¤ë¤ÈÂçÄñ¤Î¸À¸ì¤Ï¥Õ¥¡¥¤¥ë¤òʬ¤±¤é¤ì¤ë¤· °ìµó¤ËÁ´Âκî¤Ã¤¿¤ê¤·¤Ê¤¤¤ó¤¸¤ã¤Ê¤¤¤Î¤«¡Ä¤È¤«»×¤¦¤Î¤Ç¤¢¤Ã¤¿¡£
(14:19)
(fizzbuzz 0) --> (print "done"). (fbprint *N), {(:= 0 (mod *N 15))} --> (print "FizzBuzz"). (fbprint *N), {(:= 0 (mod *N 5))} --> (print "Buzz"). (fbprint *N), {(:= 0 (mod *N 3))} --> (print "Fizz"). (fbprint *N) --> (print *N). (fizzbuzz *N) --> (fbprint *N), (:= *M (- *N 1)), (fizzbuzz *M).
¸½¾õ¤Ç¤Ï Prolog ¤È²¿¤¬°ã¤¦¤Î¤«¤è¤¯¤ï¤«¤é¤Ê¤¤¤Î¤È¡¢ ¤¢¤È := ¤È = ¤È == ¤Î°ã¤¤¤¬¤ï¤«¤é¤Ê¤¤¤È¤¤¤¦¡£
(14:39)
http://assam.cims.hokudai.ac.jp/eti/eti_builtin/arithmetic.htm#arith
http://assam.cims.hokudai.ac.jp/eti/eti_builtin/match.htm#unify
http://assam.cims.hokudai.ac.jp/eti/eti_builtin/match.htm#eq
¤³¤ì¸«¤ë¤È == »È¤¦¤Î¤¬Àµ¤·¤¯¸«¤¨¤ë¤ó¤À¤±¤É¤Ê¤¡¡£
(14:43)
def ite(n): if n < 0: raise ValueError("minus dame zettai") for i in xrange(n): yield i # Error deru koto kitai simasu! try: ite(-1) # Error tonderu hazu dayo ne! assert False except: # OK pass
²¿ÅÙ¤ä¤é¤«¤·¤Æ¤â¤³¤ì¤Ï¤ä¤é¤«¤¹¡£
Io ¤Ï¸Æ¤Ó½Ð¤·Â¦¤¬°Õ¼±¤·¤Ê¤¤¤È¤¤¤±¤Ê¤¤¤Î¤Ç ¤ä¤é¤«¤¹¤³¤È¤Ï̵¤¤¡£
ite := method(n, write("hoge\n") for (i, 0, n, i println yield(i) ) ) ite(10) // Á´Éô¼Â¹Ô¤µ¤ì¤ë @ ite(10) // hoge ¤â½Ð¤Ê¤¤
Èù̯¤Ë´Ø·¸¤·¤¿¤ê¤Ï¤¹¤ë: http://d.hatena.ne.jp/ku-ma-me/20070613/p1
(15:08)
Á° | 2007ǯ 6·î |
¼¡ | ||||
Æü | ·î | ²Ð | ¿å | ÌÚ | ¶â | ÅÚ |
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 |
Á´¤Æ¥ê¥ó¥¯¥Õ¥ê¡¼¤Ç¤¹¡£ ¥³¡¼¥ÉÊҤϼ«Í³¤Ë»ÈÍѤ·¤Æ¤¤¤¿¤À¤¤¤Æ¹½¤¤¤Þ¤»¤ó¡£ ¤½¤Î¾¤Î¤â¤Î¤ÏGPL°·¤¤¤Ç¤¢¤ì¤Ð¤¢¤é¤æ¤ë»ÈÍѤ˴ؤ·¤Æʸ¶ç¤Ï¸À¤¤¤Þ¤»¤ó¡£ ¤Ê¤Ë¤«¤¢¤ì¤Ð²¼µ¥á¡¼¥ë¥¢¥É¥ì¥¹¤Ø¡£
>> ÂçÄñ¤Î¸À¸ì¤Ï¥Õ¥¡¥¤¥ë¤òʬ¤±¤é¤ì¤ë¤·°ìµó¤ËÁ´Âκî¤Ã¤¿¤ê¤·¤Ê¤¤¤ó¤¸¤ã¤Ê¤¤¤Î¤«¡Ä
¤½¤³¤é¤Ø¤ó¤Ï¤Þ¤¡¡¤¤½¤¦¤¤¤¦ÏäǤϤʤ¯¡¤¡Ö¹Ê¤ê½Ð¤·Ë¡¡× ¤È¤«¤¤¤¦¥ë¡¼¥ë¤ò»ÅÍͤ«¤éÃʳ¬Åª¤Ëºî¤Ã¤Æ¤¤¤¯¤¿¤á¤ÎÊýË¡ÏÀ¤ÎÏä¬Íí¤ó¤Ç¤¯¤ë¤Î¤Ç¡¤ÏäÀ¤¹¤ÈŤ¯¤Ê¤ë¤Î¤Ç¤¹¤¬¡Ä
¤Þ¤¡¡¤Ëͤ⡤¤Á¤ã¤ó¤ÈÏÀʸ¤È¤«Æɤó¤Ç¥Ü¥¹¤ÈµÄÏÀ¤ò·«¤êÊÖ¤¹¤Þ¤Ç¤Ï¡¤²¿¤¬Îɤ¤¤Î¤«¤è¤¯¤ï¤«¤é¤Ê¤«¤Ã¤¿¤Ç¤¹¡¥
¤½¤Î¥µ¥¤¥È¤Ï¡¤µ»½ÑŪ¤Êº¬µò¤äɬÁ³À¤Ï°ìÀÚ½ñ¤«¤ì¤Æ¤Ê¤¤¤Î¤Ç¡¤¤½¤ì¤À¤±¤òÆɤó¤Ç¤â¤Ê¤«¤Ê¤«Ç¼ÆÀ¤Ç¤¤Ê¤¤¤È»×¤¤¤Þ¤¹¡¥
# ¤«¤È¤¤¤Ã¤Æ¡¤¤½¤ì°Ê³°¤Î»ñÎÁ¤Ï¡¤¤â¤¦¸¶ÏÀʸ¤·¤«Ìµ¤¤¤Î¤Ç¤¹¤¬¡Ä ¿Í¼êÉÔ¤ÎÎíºÙ¸¦µæ¼¼¤Î¾å¡¤¤¦¤Á¤Î¥Ü¥¹¤Ï´°àú¼çµÁ¼Ô¤Ê¤Î¤Ç¡¤Á´Éô´°À®¤¹¤ë¤Þ¤¨¤Ë¸ø³«¤·¤ÆŪ³°¤ì¤ÊÈãȽ¤ò¤µ¤ì¤Æ»þ´Ö¤ò̵Â̤ˤ¹¤ë¤³¤È¤ò·ù¤¬¤ë¤Î¤Ç¡¤¤Ê¤«¤Ê¤«¾ðÊ󤬳°Éô¤Ë¸ø³«¤µ¤ì¤Ê¤«¤Ã¤¿¤ê¤â (²áµî¤ËĹǯ¡¤Logic Programming ¤Î¿Í¤¿¤Á¤Ë¡¤»¶¡¹Åª³°¤ì¤ÊÈãȽ¤ä ¡Ö¤½¤ó¤Ê¤Î¤Ï²æ¡¹¤Î¡Á¤Ç¤â¤Ç¤¤ë¡×Ū¤Ê¥Ê¥ó¥»¥ó¥¹¤ÊÈ¿±þ¤·¤«¤µ¤ì¤Ê¤«¤Ã¤¿¤Î¤Ç¡¤¤ï¤ê¤È´è¸Ç¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¤¹)¡¥
Íפ¹¤ë¤Ë¡¤Åù²Á¤Ê´Ø·¸¤Îµ½Ò¤òÃßÀѤ·¤Æ¤¤¤¯¤È¡¤¤½¤ì¤¬¥¢¥ë¥´¥ê¥º¥à¤Ë¤Ê¤ë¡¤¥¢¥ë¥´¥ê¥º¥à¤Ï¼«Æ°Åª¤Ë¹çÀ®¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ë¤Î¤Ç¡¤¿Í´Ö¤¬Á´ÂΤò°ìµ¤¤Ë¹Í¤¨¤ëɬÍפ¬Ìµ¤¯¤Ê¤Ã¤Æ¤¦¤ì¤·¤¤ (¤½¤·¤Æ¡¤¤½¤ì¤òÍýÏÀŪ¤ËÊݾڤ¹¤ë¤¿¤á¤Ë¤Ï¡¤»ÅÍͤËÂФ¹¤ëÀµÅöÀ¤È¤¤¤¦³µÇ°¤ò¸·Ì©¤ËÄêµÁ¤¹¤ë¤³¤È¤¬É¬Í×ÉԲķç¤Ê¤ó¤Ç¤¹¤¬¡¤¤½¤ì¤Ï Prolog ¤Ç¤Ï¹Í¤¨¤é¤ì¤Æ¤¤¤Ê¤¯¤Æ±¾¡¹¡Ä ¤È¤«¤¤¤¦ÏäË)¡¥
shinh ¤µ¤ó¤Î¤è¤¦¤Ê½ÏÎý¼Ô¤Ï¡¤ÌäÂê¤ò¸«¤¿½Ö´Ö¥¢¥ë¥´¥ê¥º¥à¤ò»×¤¤¤Ä¤¯¤È»×¤¦¤Î¤Ç¡¤ÌÌÅݤÊÍýÏÀ¤È¤«¤Ï¥Ð¥«¥Ð¥«¤·¤¯´¶¤¸¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¤½é¿´¼Ô¤Ï¤Ê¤«¤Ê¤«¤½¤¦¤Ï¹Ô¤«¤Ê¤¤¤È»×¤¦¤Î¤Ç¡¥¥×¥í¥°¥é¥à¤òºî¤ë¤¿¤á¤ÎÂηϤò¤Á¤ã¤ó¤È¹Í¤¨¤Æ¤¤¤¯¤È¡¤¤½¤ì¤¬¶µ°éÊýË¡¤ÎÀ®½Ï¤Ë¤â·Ò¤¬¤Ã¤Æ¤¤¤¯¤È¤¤¤¦Îɤµ¤â¤¢¤ë¤È»×¤¤¤Þ¤¹¡¥
# º£¤Î¤È¤³¤í¤Ï¡¤¤È¤Ë¤«¤¯¤¿¤¯¤µ¤óËÜÆɤó¤Ç¡¤¥×¥í¥°¥é¥à½ñ¤¤¤ÆÆɤó¤Ç¤¬¤ó¤Ð¤ì ¡ª ¤È¤¤¤¦¡¤¤½¤Î¿Í¤Î»ñ¼Á¤Ë°Í¸¤·¤¿º¬ÀÏÀ¤·¤«Ìµ¤¤¤È»×¤¤¤Þ¤¹¡¥¤·¤«¤·¡¤Ã¯¤âÈà¤â¤¬ shinh ¤µ¤ó¤Î¤è¤¦¤Ë¥×¥í¥°¥é¥ß¥ó¥°¤ÎºÍǽ¤¬¤¢¤ë¤ï¤±¤Ç¤Ï̵¤¤¤Î¤Ç¡¥
¤¦¡¼¤ó¡£¤¿¤È¤¨¤Ð FizzBuzz ¤È¤«¤É¤¦¤Ê¤ë¤ó¤Ç¤¹¤«¤Í¤§¡£¤½¤ó¤Ê¤Ë¤¦¤Þ¤¯¥ë¡¼¥ë¤Ëʬ³ä¤Ç¤¤ë¤ó¤Ç¤·¤ç¤¦¤«¡£¼ê³¤¤Ë´·¤ì¤Æ¤·¤Þ¤Ã¤¿¤«¤é¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢¥Ï¥Î¥¤¤È¤«¤ß¤¿¤¤¤Ê¤¤¤«¤Ë¤â¥¢¥ë¥´¥ê¥º¥à¥¢¥ë¥´¥ê¥º¥à¤·¤¿ÌäÂê°Ê³°¤Ç Prolog ·Ï¸À¸ì¤¬½é³Ø¼Ô¤ËÍ¥¤·¤¤¤È¤Ï¤É¤¦¤·¤Æ¤â»×¤¨¤Ê¤¤¤Î¤Ç¤¹¡£
¤¢¤È¤É¤¦¤Ç¤â¤¤¤¤¤Î¤Ç¤¹¤¬¡¢»ä¤Ï¥×¥í¥°¥é¥à¤ÎºÍǽ¤È¤«¤½¤ó¤Ê¤Ë¤¢¤ë¤È¤Ï»×¤¨¤Þ¤»¤ó¡£Ã±¤Ë»þ´ÖÅê²¼Î̤Ǿ¡É餷¤Æ¤ë´¶¤¸¤À¤È»×¤Ã¤Æ¤Þ¤¹¡£¤½¤ì¤³¤½º¬ÀÏÀ¤È¤¤¤¦¤«¡£
Prolog ¤Ï¡¤·úÁ°¤Ï¡ÖÀë¸À¤ò½ñ¤¯¡×¤È¤¤¤¦¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ë¡¤¸½¼ÂŪ¤Ë¤Ï¡¤¥×¥í¥°¥é¥Þ¤ÎƬ¤ÎÃæ¤Ç¼ê³¤¤òǾÆâµÕ¥³¥ó¥Ñ¥¤¥ë¤·¤ÆÀë¸À¤ËÊÑ´¹¤·¤Ê¤¤¤È¡¤¤Þ¤È¤â¤Ê¥×¥í¥°¥é¥à¤¬½ñ¤±¤Ê¤¤¤È¤¤¤¦¡¤¤«¤Ê¤êDZ¤ì¤¿¸À¸ì¤Ê¤ó¤Ç¤¹¤è¤Í¡¥ÍýÏÀ¤È¸½¼Â¤¬ÐªÎ¥¤·¤Á¤ã¤Ã¤Æ¤ë¡¥
¤Ê¤Î¤Ç¡¤½é¿´¼Ô¤Ë Prolog ¤¬Í¥¤·¤¯¤Ê¤¤¤È¤¤¤¦¤Î¤Ï¡¤¤½¤Î¤È¤ª¤ê¤À¤È»×¤¤¤Þ¤¹¡¥
ET ¤Î D ¥ë¡¼¥ë¤Ê¤ó¤«¤Ï¡¤¤Þ¤ó¤Þ¥Ñ¥¿¡¼¥ó¥Þ¥Ã¥Á¤¬¤¢¤ë Scheme ¤Ê¤Î¤Ç¡¤ÁÇľ¤Ë¼ê³¤¤¬½ñ¤±¤Þ¤¹¡¥
S ¼°¤Ç¤â½ñ¤±¤ë¤Î¤Ç¡¤¥×¥í¥°¥é¥à¤òÁàºî¤¹¤ë¥á¥¿¥×¥í¥°¥é¥ß¥ó¥°¤È¤«¤âÍưפǤ¹¤·¡¤¥ë¡¼¥ë¥Ù¡¼¥¹¸À¸ì¤Ê¤Î¤Ç¡¤¥ë¡¼¥ë¤òưŪ¤ËÄɲúï½ü¤·¤¿¤ê¤È¤«¤¤¤¦¡¤¤¤¤í¤¤¤í¤ÈÌÌÇò¤¤¥×¥í¥°¥é¥à¤â´Êñ¤Ë½ñ¤±¤¿¤ê¤·¤Þ¤¹¡¥
¤Þ¤¿¡¤¥Ð¥Ã¥¯¥È¥é¥Ã¥¯¤ß¤¿¤¤¤Ê¹âÅ٤ʽèÍý¤Ï¡¤N ¥ë¡¼¥ë¤ÇÁÇľ¤Ë½ñ¤±¤Þ¤¹¡¥
# ¥Ð¥Ã¥¯¥È¥é¥Ã¥¯¤Ï¿¼¤µÍ¥Àèõº÷¤Ç¤¹¤¬¡¤N ¥ë¡¼¥ë¤ÏÉýÍ¥Àèõº÷ (Erlang ¤ß¤¿¤¤¤ËÂçÎÌ¤Î¥×¥í¥»¥¹¤¬Èó·èÄêŪ¤ËƱ»þ¤ËÁö¤ë) ¤òÁÇľ¤Ë¤«¤±¤Þ¤¹¤Î¤Ç¡¥
¤ó¤Ç¡¤Prolog ¥é¥¤¥¯¤Ê (¤½¤·¤Æ¤è¤êÁÇľ¤Ê) »ÅÍ͵½Ò¤«¤é¡¤N ¥ë¡¼¥ë¤òÀ¸À®¤·¤Æ¡¤N ¥ë¡¼¥ë¤ò D ¥ë¡¼¥ë¤ËÊÑ´¹¤·¤Æ¡¤D ¥ë¡¼¥ë¤«¤éµ¡³£¸ì¤òÆÀ¤ë¡¤¤È¤¤¤¦ÂηϤòºî¤ê¤¿¤¤¤Ê¡¼¤È¤¤¤¦¤Î¤¬¥â¥Á¥Ù¡¼¥·¥ç¥ó¤È¤·¤Æ¤¢¤ê¤Þ¤¹¡¥¤½¤³¤é¤Ø¤ó¤¬¡¤º¬ËÜŪ¤Ê Prolog ¤È¤Î°ã¤¤¤Ç¤¹¤«¤Í¡¥Prolog ¤È¤«¤Ï¡¤¤ß¤ó¤Ê½èÍý·Ï°Í¸¤Ç¤¹¤«¤é¡¥
¤¤¤ä¡Á¡¤¥´¥ë¥Õ¤È¤«¤ËÌ´Ãæ¤Ë¤Ê¤ì¤ë¿Í¤Ï¡¤¤É¤¦¹Í¤¨¤Æ¤â¥Ï¥Ã¥«¡¼¥¿¥¤¥×¤Î¿Í´Ö¤À¤È»×¤¤¤Þ¤¹¤è (¾Ð) ËͤϤ½¤³¤Þ¤Ç¥×¥í¥°¥é¥ß¥ó¥°¤¬¹¥¤¤Ç¤Ï¤Ê¤¤¤Î¤Ç¡¤¤Ä¤¯¤Å¤¯¸þ¤¤¤Æ¤¤¤Ê¤¤¿Í´Ö¤À¤È»×¤¤¤Þ¤¹¡¥
OS ¤È¤«¥³¥ó¥Ñ¥¤¥é¤È¤«¤Ï¡¤¤Ê¤¼¤«½ã¿è¤Ë¹¥¤¤Ê¤ó¤Ç¤¹¤±¤É¤Í¡¥¤¢¤È¡¤¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È¤«¤òºî¤ë¤Î¤â¹¥¤¤Ê¤ó¤Ç¤¹¤¬¡¤¥×¥í¥°¥é¥ß¥ó¥°¼«ÂΤϹ¥¤¤¸¤ã¤Ê¤¤¤È¤¤¤¦¡¥
¤¢¡¼ N ¤ÎÊý¤¬¹â¥ì¥Ù¥ë¤Ç¤¢¤ë¤´¤ê¤º¤ß¤Ã¤¯¡¼¤Ç D ¤¬Äã¥ì¥Ù¥ë¤Ç¼ê³¤¡¼¤ß¤¿¤¤¤Ê´¶¤¸¤Ê¤ó¤Ç¤¹¤Í¡£¤Ç N ¤«¤é D ¤ËÊÑ´¹¤È¤«¤·¤Á¤ã¤Ã¤¿¤ê¤¹¤ë¤È¥°¥Ë¥ã¥°¥Ë¥ã¡¢¤È¡£¾¯¤·¥¤¥á¡¼¥¸¤¬¤Ä¤«¤á¤Þ¤·¤¿¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£
¤¤¤ä¤·¤«¤· D ¥ë¡¼¥ë¤ÎÊý¤¢¤¤é¤«¤Ë for ʸŪ¤Ê¤â̵¤¤¤·¡¢ÁȤ߹þ¤ß¤Î map ¤ä¤é fold ¤ä¤é¤â¥ê¥Õ¥¡¥ì¥ó¥¹¤Ë¸«Åö¤¿¤é¤Ê¤¤¤è¤¦¤Ê¡Ä¤³¤ì¤É¤¦¤·¤Æ¤âºÆµ¢¤Ë¤Ê¤ê¤Þ¤»¤ó¤«¡£
¤¢¤È¤Þ¤¡¤¢¤ê¤¬¤Á¤ÊÏäǤ¹¤¬¡¢¹¥¤¤âºÍǽ¤Î¤¦¤Á¤Ê¤éºÍǽ¥¢¥ê¥¥é¥ó¡ù¤È¤¤¤¦¤³¤È¤Ë¤Ê¤ë¤Î¤Ç¤·¤ç¤¦¤¬¡¢3ºÐ¤Î»þ¤Ë¤ÏÀѤßÌÚ¤ò¥¯¥¤¥Ã¥¯¥½¡¼¥È¤·¤Æ¤¿¤È¤«ºÇ½é¤ËÃý¤Ã¤¿¸À¸ì¤Ï x86 ¤È¤«¤½¤¤¤¦°ÕÌ£¤ÎºÍǽ¤Ï̵¤¤¤Ê¤¡¤È»×¤Ã¤Æ¤ë´¶¤¸¤Ç¤¹¡£¤³¤¦¿ô½½»þ´Ö¤«¤±¤Æ¤ä¤Ã¤È Quine ¤Î½ñ¤Êý¤ï¤«¤Ã¤¿¤È¤«¡¢º£¤Ï½½¿ô»þ´Ö¤«¤±¤Æ¤â Unlambda ½ñ¤±¤Ê¤¤¤È¤«Ç¯Ã椽¤ó¤Ê¥¢¥Û¤Ê¤³¤È¤ä¤Ã¤Æ¤ë¤ï¤±¤Ç¤¹¡£
¤½¤³¤Ï¤Þ¤¡¡¤ÊªÀ¨¤¤ÎíºÙ¸¦µæ¼¼¤Ê¤Î¤Ç¡Ä ¼Â¤Ïº£¸ø³«¤µ¤ì¤Æ¤¤¤ë ETI ¤Ï¡¤¤¦¤Á¤Î¸¦µæ¼¼ OB ¤Î¿Í¤¬¥É¥¯¥¿¤Î»þ¤Ë¡¤¤¿¤Ã¤¿°ì¿Í¤Çºî¤Ã¤¿¤â¤Î¤Ç¤¹¡¥¸¦µæÍѤΥץí¥È¥¿¥¤¥×¤â¤¤¤¤¤È¤³¤í¤Ç¤¹¡¥
# ¤½¤ì¤Ç¤±¤Ã¤³¤¦Ä¹Ç¯¡¤¤¦¤Á¤ÎÂç³Ø¤Î¹ÖµÁ¤Ç¼ÂºÝ¤Ë»È¤ï¤ì¤Æ¤¤¤ë e-lerning system ¤¬Æ°¤¤¤Æ¤¤¤ë¤È¤¤¤¦¤Î¤âÀ¨¤¤ÏäǤ¹¤¬¡¥
º£¤ÏË¿»äΩÂç³Ø¤Ç¶µÊܤò¼è¤é¤ì¤Æ¤¤¤Æ¡¤¤Ê¤«¤Ê¤«»þ´Ö¤¬¼è¤ì¤Ê¤¤¤è¤¦¤Ç¡¥¤¢¤È¡¤´ðËÜŪ¤Ë C++ ¤ò¤¢¤Î¥ì¥Ù¥ë¤Þ¤Ç¤ï¤«¤ë¿Í¤¬Â¾¤Ëï¤â¤¤¤Ê¤¤¤È¤«¡¥
sumii ÀèÀ¸¤¬¡¤¤±¤Ã¤³¤¦Â礤ʥ³¥ß¥å¥Ë¥Æ¥£¤¬¤¢¤ë OCaml ¤ËÂФ·¤Æ¤µ¤¨¤¢¤¢¸À¤Ã¤Æ¤ë¤È¤¤¤¦ÅÀ¤«¤é¤·¤Æ¡¤¤³¤¦¡¤¤¤¤í¤¤¤í»¡¤·¤Æ¤¯¤À¤µ¤¤¡¥
(Ëͤâ´ðËÜŪ¤Ë¤¢¤¢¤¤¤¦Î©¾ì¤Ç¤¹¡¥¥¢¥«¥Ç¥ß¥Ã¥¯¤ÎÀ¤³¦¤Ç¤Ï¡¤½èÍý·Ï¤Î´°À®Å٤Ȥ«¤Ç¤Ï¤Ê¤¯¤Æ¡¤ÍýÏÀŪ¤Ê¥³¥ó¥»¥×¥È¤Î´°À®ÅÙ¤¬¾¡Éé½ê¤Ç¡¤¸å¡¹½ù¡¹¤Ë»º¶È³¦¤Ë¼è¤ê¹þ¤Þ¤ì¤Æ¤¤¤±¤ÐÎɤ¤¤Î¤«¤Ê¤È¡¥¤â¤Á¤í¤ó¡¤¼ÂÍѲ½¤Ð¤«¤ê¤ò°Õ¼±¤·¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¥¤½¤â¤½¤â²¿¤¬Ìò¤ËΩ¤Ä¤«¤Ê¤ó¤Æï¤Ë¤â¤ï¤«¤é¤Ê¤¤¤ï¤±¤Ç¤¹¤·)
N/D ¥ë¡¼¥ë¤Î¥ì¥Ù¥ë¤À¤È¡¤ÊÑ¿ô¤ÎÇ˲õŪ¹¹¿·¤¬°ìÀÚ̵¤¤¤Î¤Ç¡¤for ʸ¤òľÀÜÄêµÁ¤¹¤ë¤Î¤ÏÆñ¤·¤¤¤Ç¤¹¡¥¤Ç¤â¡¤ËöÈøºÆµ¢¤ÇÁ´Éô½ñ¤±¤ÐÌäÂê¤Ê¤¤¤Î¤Ç¤Ï ? ´ðËÜŪ¤Ë°·¤¦¤Î¤Ï¼ç¤Ë¥ê¥¹¥È¤Ê¤Î¤Ç¡¤ºÆµ¢ + ¥Ñ¥¿¡¼¥ó¥Þ¥Ã¥Á¤ÎÊý¤¬ÊØÍø¤À¤È»×¤¤¤Þ¤¹¡¥
¼ÂÁõ¤Ë¤ª¤¤¤Æ¤â¡¤³µÇ°Åª¤Ë¤â¡¤ËöÈøºÆµ¢¤Ïñ¤Ê¤ë goto ¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¤Ï¤º¤Ê¤Î¤Ç¡¤for ʸŪ¤Ê¤â¤Î¤ÈËܼÁŪ¤Ê°ã¤¤¤Ï̵¤¤¤Ï¤º¤Ç¤¹¡¥
# ¤¤¤ä¡¤ETI ¤ÎÃæ¿È¤ÎºÇŬ²½¤ÎÅٹ礤¤ÏÃΤê¤Þ¤»¤ó¤¬¡¥
¤Þ¤¡¡¤Á´Éô¼ê½ñ¤¤·¤è¤¦¤È¤¹¤ë¤È¡¤Ëè²óƱ¤¸¤è¤¦¤Ê·Á¤¬¥½¡¼¥¹¤Ë¸½¤ì¤Æ¾éŤǤ¹¤¬¡¤¤½¤ì¤Ï¥×¥í¥°¥é¥à¤ò½ñ¤¯¥×¥í¥°¥é¥à¤ò½ñ¤¤¤Æ¤ª¤±¤Ð¤è¤¤¤À¤±¤À¤·¡¼¤È¤¤¤¦ (¥á¥¿¥×¥í¥°¥é¥ß¥ó¥°Ç¾)
map ¤ä¤é hold ¤ä¤é¤â¡¤ÁȤ߹þ¤ß¤Ç¤¢¤Ã¤ÆÍߤ·¤¤¤Ç¤¹¤è¤Í¤§¡¥¤È¤¤¤¦¤«¡¤append ¤ä length ¤µ¤¨Ìµ¤¤¤ó¤Ç¤¹¤¬¡¥
¤Þ¤¡¡¤¤½¤³¤é¤Ø¤ó¤ÏÄêµÁ¤¹¤ì¤ÐÎɤ¤¤À¤±¤Ê¤Î¤Ç¡¥ÀÛÃø¤Ç¤¹¤¬¡¥
http://www.geocities.jp/kl1_interpreter/GradThesis/thesis.pdf
map ¤È¤«¤Ï 146 ¥Ú¡¼¥¸¡¤fold ¤È¤« 150 ¥Ú¡¼¥¸¤¢¤¿¤ê¤Ë¤¢¤ë¤ß¤¿¤¤¤Ç¤¹ (¼«Ê¬¤¬½ñ¤¤¤¿¤Î¤Ë¾¿Í»ö)
·×»»µ¡¤Ë¸Â¤é¤º¡¤¹©³Ø¤ÎÀ¤³¦¤ÏÃμ±Î̤ȷи³¤¬Á´¤ÆŪ¤Ê¤È¤³¤í¤¬¤¢¤ë¤Î¤Ç¡¤½ã¿è¿ô³Ø¤Î¤è¤¦¤Ê°ÕÌ£¤Ç¤ÎÅ·ºÍ¤ÏÀ¸¤Þ¤ì¤Ë¤¯¤¤¤Ç¤·¤ç¤¦¤Í¤§¡¥¤Ê¤Î¤Ç¡¤¹¥¤ = ·Ñ³¤Ç¤¤ëÎÏ = ºÍǽ¤ÇÎɤ¤¤Î¤À¤È»×¤¤¤Þ¤¹¡¥Schemer ¤¸¤ã¤¢¤ê¤Þ¤»¤ó¤¬¡¤continuation is power ¤È (¾Ð)