![èŠåºãç»å](https://assets.st-note.com/production/uploads/images/84704584/rectangle_large_type_2_741a22cd0c644ec4ca4b6508fccbdac1.png?width=1200)
ð Refalèšèªå ¥éãæ«å°Ÿååž°æšæºè£ åã§åœä»€åèšèªããã£ã¹ãããã¿ãŒã³ãããã³ã°ã®èµ·æº
REFALã¯ãèªç¶èšèªã人工èšèªã«åºã¥ãã³ã³ãã¥ãŒã¿ããã°ã©ã ã®è§£æãéä¿¡ãããã¹ãã®æšæ²ãªã©ãã·ã³ãã«ããŒã¿ã®æšæ²ã«éç¹ã眮ããé¢æ°åããã°ã©ãã³ã°èšèªã§ããã
ãŸããã®èšèªã¯ã1968幎ã«Valentin Fedorovich Turchinã«ãã£ãŠã¡ã¿èšèª[1]ãããªãã¡ä»ã®ããã°ã©ãã³ã°èšèªã®ã»ãã³ãã£ã¯ã¹ãèšè¿°ããããã®èšèªãšããŠææ¡ãããŸãããèšãæããã°ãããã¯æ¬äŒŒã³ãŒãã§ãããããçš®ã®æ°åŠçè¡šèšæ³ã§ããããã®åŸãREFALãã³ã³ãã¥ãŒã¿ã«å®è£ ããããã®æ°ããå¹æçãªæ¹æ³ãç»å Žãããã§ã«å®å šãªæ©èœãæã£ãããã°ã©ãã³ã°èšèªã«ãªã£ãŠããã
åºæ¬Refalãšã¯äžè¬ã«Refalæå³çéšåéåãæããé¢æ°æã¯2ã€ã®éšåãããªããå€æ°ã¯s-ãt-ãŸãã¯e-åïŒRefal-2修食åã¯ãªãïŒãèšå·åã¯ãªãã©ã«æåãæ°åãåèªã®ã¿ã§ããã
Refal-5λã§ã¯ãã©ããªããã°ã©ã ãé¢æ°ã®éåäœã§ãïŒçµå±ãé¢æ°åããã°ã©ãã³ã°èšèªãªã®ã§ãïŒããã®ããã°ã©ã ãäŸå€ã§ã¯ãããŸãããGoé¢æ°ã¯ããã§å®çŸ©ãããŠãããé¢æ°ã®å®çŸ©ã¯ãé¢æ°åãšãããã¯ïŒäžæ¬åŒ§ã§å²ãŸããé¢æ°æ¬äœïŒããããæåå1ã3ïŒã§èšè¿°ãããŠããŸããGoãšããååã¯å¶ç¶ã§ã¯ãããŸãããRefalã®ããã°ã©ã ã«ã¯å¿ ãGoãŸãã¯GOãšããååã®é¢æ°å®çŸ©ã1ã€ãããŸãã
![](https://assets.st-note.com/img/1660440963560-ySxk4Lcs0B.png?width=1200)
ãŸããäžæ¬¡æŽ»æ§éšååŒã¯ãä»ã®æŽ»æ§åæ¬åŒ§ãå«ãŸãªã掻æ§åæ¬åŒ§ã®å·Šç«¯ã®ãã¢ãéžæãããããã¯ãRefal - ãå¿çšèšèªã§ãããé¢æ°èšç®ã®é åºãå·Šããå³ãžãšæ£ç¢ºã«å®çŸ©ãããããšãæå³ãããã€ãŸããæã®å³åŽã«ããã€ãã®é¢æ°ã®åŒã³åºããããå Žåããããã¯å·Šããå³ãžãæãå éšçãªãã®ããæãå€éšçãªãã®ãžãšèšç®ãããããããã£ãŠãå¯äœçšã®ããé¢æ°ïŒããšãã°ãProutïŒã䜿ãå Žåããã®å¯äœçšããã€çºçããã®ããç¥ã£ãŠäœ¿ãããšãã§ããã
第äºã«ãRefalãããããæ«å°Ÿååž°ã®æé©åãå®è£ ããŠããããšã¯ããã¥ãŒãã£ãŒã«ãã®ã»ãã³ãã£ã¯ã¹ããããã«ç解ã§ããã
å€ãã®åœä»€åããã°ã©ãã³ã°èšèªã§ã¯ãååž°ã¯éåžžã«é«äŸ¡ã§ãããèšç®ã³ã³ããã¹ãïŒæ«å°ŸåŒã³åºãã®å®äºåŸã«å®è¡ããã»ã¹ãæ»ããªããã°ãªããªããã€ã³ãïŒãç¶æããããã®ãªãŒããŒããããå¿ èŠã§ããããããŠããã®ä¿åã®ããã®ã¡ã¢ãªã¯ãéãããé åãã€ãŸãã·ã¹ãã ã¹ã¿ãã¯ããæäŸããããããã°ã©ãã¯ååãšããŠã·ã¹ãã ã¹ã¿ãã¯ã®å€§ãããå¶åŸ¡ã§ããªãããã¹ã¿ãã¯ããªãŒããŒãããŒãããšããã°ã©ã ãç°åžžçµäºããŠããŸãããããã£ãŠããã®ãããªèšèªã§ã¯ãååž°ã䜿ã£ãŠåšæçã«ç¹°ãè¿ãããåäœãå®è£ ããŠã¯ãªããªãïŒç¹ã«ãåœä»€åèšèªã§ã¯ãã®ããã®å埩æŒç®åãããïŒã
Refalé¢æ°ã¯ãååž°åŒã³åºããå®è¡ããé¢æ°ã次ã®ååž°åŒã³åºãã®åã«çµäºãããããå€ãè¿ãããã«èšç®ã³ã³ããã¹ããä¿æããå¿ èŠããªãããããŠãå³ã®éšåã®ååž°åŒã³åºããæåŸã«å®è¡ããã°ãäžå®å šãªèšç®ããã¥ãŒãã£ãŒã«ãã«éãŸããªãããšãæå³ãããã€ãŸããå®éã«ã¯ååž°ïŒå²ãŸããæèïŒã¯èŠ³å¯ãããªããããµã€ã¯ã«ã¯èŠ³å¯ãããã
Refal-5ã«ã¯ãæšæºçãªçµã¿èŸŒã¿é¢æ°ã®ã©ã€ãã©ãªãå«ãŸããŠããŸãããããã¯ãI/Oãç®è¡æŒç®ãRefalã§ã¯å®çŸ©ã§ããªãæ§ã ãªã·ã¹ãã ãžã§ããããã³å¹çåã®ããã«ã·ã¹ãã ã«çµã¿èŸŒãŸããç°¡åãªæç¶ããªã©ã§ãã
REFALãšä»ã®é¢æ°åèšèªïŒFLïŒãšã®éãã¯ããŸã第äžã«ãç¹æ®ãªããŒã¿æ§é ã§ãããªããžã§ã¯ãåŒã䜿ãããŠããããšã§ãããå€ãã®FLã§ã¯ãåäžãªã³ã¯ãªã¹ãïŒå·ŠèŸºã ããã¢ã¯ã»ã¹å¯èœãªèŠçŽ ã®åïŒã䜿ã£ãŠãçŽæ¥æšæ²ããããšãã§ããŸããã€ãŸããæåã®èŠçŽ ãæ¢ããæåã®èŠçŽ ãåãåããæåã®ãªã¹ãã®å é ã«èŠçŽ ãè¿œå ããŠæ°ãããªã¹ããäœãããšãã£ãæäœããã§ããªãã
æåŸã®èŠçŽ ãåŸãã«ã¯ãæåã®èŠçŽ ã空ã£ãœã«ãªããŸã§é 次åãæšãŠãŠãããã€ãŸãæåŸã«åãæšãŠãèŠçŽ ããªã¹ãã®æåŸã®èŠçŽ ã«ãªããŸãã2ã€ã®ãªã¹ããé£çµãã(glue)ããã«ã¯ãæåã®ãªã¹ãã®èŠçŽ ãéé ã«2çªç®ã®ãªã¹ãã®å é ã«è¿œå ããªããã°ãªããªãã
REFALã¯åæ¹åã®ã·ãŒã±ã³ã¹(ããªããžã§ã¯ãåŒããšåŒã°ãã)ãæäœããããšãã§ããŸãã äž¡åŽã§åãæäœ(æåã®èŠçŽ ãåãé¢ããèŠçŽ ãè¿œå ãã)ã ãã§ãªããé£çµãåé¢ãã©ãã§ãå¯èœã§ã (open e-variable ã«ã€ããŠå ãåç §ããŠãã ãã)ããããã®æäœã¯ãã¹ãŠåå§çãªãã®ã§ã ãã®ãããããã°ã©ã ã®è¡šçŸåãå¢ããŸãã
ãã¿ãŒã³åŒã¯ããã¹ãŠã®å€æ°ã«èš±å®¹å€ãä»£å ¥ããŠåŸããããªããžã§ã¯ãåŒã®éåãšèŠãªãããšãã§ããããããã£ãŠïŒãã¿ãŒã³A e.1ã¯ïŒèšå·Aã§å§ãŸããã¹ãŠã®ãªããžã§ã¯ãåŒã®éåãè¡šãïŒ åãå€æ°ã®ãã¹ãŠã®ãšã³ããªã¯ïŒåãå€ã§çœ®ãæããããªããã°ãªããªãïŒãã¿ãŒã³s.1 e.2 s.1ã¯ïŒåãèšå·ã§å§ãŸãïŒåãèšå·ã§çµããïŒå°ãªããšã2ã€ã®èšå·ãæã€ãã¹ãŠã®ç®çèªè¡šçŸã®éåãšèŠãããšãã§ããïŒ
ãããããã¿ãŒã³åŒã«ã¯ããäžã€ã®æ©èœããããããã¯ããã¿ãŒã³äžã®å€æ°ããªããžã§ã¯ãåŒã®äžéšãšåå®ããããã€ãŸãããå€ããšããšããããªããžã§ã¯ãåŒã®å解ãèšè¿°ããããšã§ããããã®ããã«èãããšïŒA e.1 ã¯ïŒäžãããããªããžã§ã¯ãåŒã®æåã®èšå·ã A ã§ããããšã確èªãïŒãã®æ®ãã®éšåãå€ãšã㊠e.1 ã«ä»£å ¥ããæç¶ãã§ããïŒãã®æç¶ãã¯ãã¿ãŒã³ãããã³ã°ãšåŒã°ããã
ãããŸã§ã®RefalåŽã®èšãåããŸãšããŠã¿ãã
![](https://assets.st-note.com/img/1660465325134-ROSqD8zHUz.png)
ã¯ããã«
åºæ¬çãªãªãã¡ãŒã«
1.1 ç°¡åãªé¢æ°å®çŸ©
1.2 èšå·ãšåŒ
1.3 ãã¿ãŒã³ããã
1.4 æç« ãšããã°ã©ã
1.5 æœè±¡çãªRefalãã·ã³
1.6 ãã®ä»ã®é¢æ°ã®äŸã³ã³ãã¥ãŒã¿ã«ããããªãã¡ãŒã«
2.1 å®è¡æ¹æ³
2.2 ããã°ã©ã ã¢ãžã¥ãŒã«
2.3 å ¥å-åºå
2.4 RefalåŒã®è¡šçŸ
2.5 ãã¿ãŒã³ãããã³ã°ã®ã¢ã«ãŽãªãºãããã°ã©ãã³ã°ã®åºæ¬ææ³
3.1 ãã€ã³ã¿ãšããŠã®ãã©ã±ãã
3.2 é¢æ°ã®æžåŒ
3.3 æé»ã®ååž°ãšæ瀺ã®ååž°
3.4 å€æ°ã®éè€
3.5 ã¢ã«ãŽãªãºã¢ã®é¢æ°ãžã®å解
3.6 ååž°ãšå埩
3.7 å ¥ãåã«ãªã£ãæ¬åŒ§ã®åŠçæ¡åŒµãªãã¡ãŒã«
4.1 æ¡ä»¶
4.2 ãããã¯
4.3 Bury-Digé¢æ°ããã°ã©ã éçº
5.1 宣æåž«ãšã«ãããŒã«
5.2 ãœãŒãã¢ã«ãŽãªã¹ã
5.3 ã°ã©ãã®ãã¹
5.4 ç®è¡åŒã®ç¿»èš³ã¡ã¿ã·ã¹ãã é·ç§»
6.1 ã¡ã¿ãã¡ã³ã¯ã·ã§ã³ãã¥ãŒ
6.2 ã¡ã¿ã³ãŒã
6.3 è©äŸ¡åš
6.4 ããªãŒã¶
æŒç¿åé¡è§£ç
åèããã¥ã¢ã«
A. èšçœ®æ¹æ³ãšäœ¿çšæ¹æ³
B. æ§ææŠèŠ
C. çµã¿èŸŒã¿é¢æ°
D. ãªãã¡ãŒã«ãã¬ãŒãµãŒ
INDEX
ããã§åŒ·èª¿ããŠããããã®ã¯ãRefalã«ãããè¡šçŸã®æŠå¿µã¯ããäžè¬çã§ãããšããããšã§ãããRefalã§ã¯ãåŒãç¹å¥ã«è§£éããããšã¯ãªããæ§ã ãªæ¹æ³ã§äœ¿çšããããšãã§ããŸããRefalã®åŒã¯ãèšå·ãšæ§é æ¬åŒ§ããããçš®ã®æ¹æ³ã§æ§ç¯ãããæ§é äœã§ãããåæ§é æ¬åŒ§ã«ã¯ãã¡ããã©1ã€ã®å¯Ÿã«ãªãæ¬åŒ§ããããŸãããããã¯äžçš®ã®ç®±ãè¢ã®ãããªãã®ã§ããããããã¯ãå šäœã·ã¹ãã ã®äžéšã§ãããªããããã®çµ±äžæ§ãä¿ã€ãå šäœã·ã¹ãã ã®ãµãã·ã¹ãã ãåºåããŸãããã®éšåæ§é ã®äžæ¹ã®å¢çãç¹å®ããã°ãä»æ¹ã®å¢çã¯äžæã«å®ãŸããã·ã¹ãã ãšãã®ãµãã·ã¹ãã ã®é¢ä¿ã¯ãäžçã®éåžžã«éèŠãªåŽé¢ã§ãããç§ãã¡ãäžçã®è±¡åŸŽçãªã¢ãã«ãäœããšããæ§é æ¬åŒ§ã¯ãã®é¢ä¿ãã¢ãã«åããããã¢ãããã€ãªãªã³ãããªã©ãã¢ã³ã®ã¢ããŒãã«ããããã§ããšããŒã¹ãããã®ã¢ããŒãã«ããå Žåããã®ç¶æ³ã¯RefalåŒã§ã¢ãã«åããããšãã§ããã
![](https://assets.st-note.com/img/1660464902113-GrbOm41Kvd.png?width=1200)
èªç±å€æ°ã¯ãåèšå·ãããããã€ã³ããã¯ã¹ã§åœ¢æãããŸããå€æ°ã®ã€ã³ããã¯ã¹ã¯èå¥åãŸãã¯æŽæ°ã§ãããåèšå·ã¯3ã€ããããããã¯å°æåã®sãtãeã§è¡šããã察å¿ããå€æ°ã¯s-ãt-ãe-å€æ°ãšåŒã°ããããããã®éãã¯ã蚱容ãããå€ã®éåã«ãããså€æ°ã¯1ã€ã®èšå·ã ããå€ãšããŠåãããšãã§ãããtå€æ°ã¯ä»»æã®é ãå€ãšããïŒé ã¯æ§é äœæ¬åŒ§å ã®èšå·ãŸãã¯åŒã§ããããšãæ³èµ·ããŠã»ããïŒãeå€æ°ã¯ãä»»æã®åŒãå€ãšããããšãã§ããã
åè¿°ã®ããã«ãRefalãšLispãããã³ãªã¹ããæ±ãä»ã®èšèªãšã®å€§ããªéãã¯ãããŒã¿ãã¡ã€ã³ã«ãããŸããRefalã®åŒã¯å·Šããå³ãžããããã¯å³ããå·ŠãžåŠçããããšãã§ããé åã§ãããŸããã¢ãªãã£ãåºå®ãããŠããªãä»»æã®æšæ§é ã§ããLispã®ãªã¹ãã¯ç¹æ®ãªRefalè¡šçŸã§ããç§ãã¡ã¿èšç®ã§RefalåŒãé ãªã«äœ¿ãã®ã«ã¯ããã€ãã®çç±ãããïŒäž»ãªçç±ã¯é ãããšããŠããã®ã ããç§ãçºæããããã§ããïŒ
1.è¿ãå°æ¥ãã¡ã¿èšç®ã®ææ³ãã倧èŠæš¡ãã€é«éãªããã°ã©ã ã®èªåéçºã«ãç£æ¥èŠæš¡ã§å©çšãããããšãæåŸ ããŠãããã¢ã«ãŽãªãºã ã®å¹çã¯ãããŒã¿æ§é ãšå¯æ¥ã«é¢ä¿ããŠããããšã¯ããç¥ãããŠãããæååã®ãããªéèŠãªããŒã¿æ§é ãæŸæ£ããããšã«ãå®çšçãªããã°ã©ããåæãããšã¯æããªãããªã¹ãã«éå®ãããšãå¹ççãªã¢ã«ãŽãªãºã ã®å·šå€§ãªã»ãããæãæšãŠãããšã«ãªãã
2.2ç¯ã§èŠãããã«ãRefalåŒã¯ãªã¹ãã§ã¯è¡šçŸã§ããªããããªäžè¬åãå¯èœã«ãããããã«ãããã¹ãŒããŒã³ã³ãã€ã«ã容æã«ãªããããå¹ççã«ãªããæã ã䜿çšããããŒã¿æ§é ã¯ãåºæ¬çã«ã¯çŸå®ã®ã¢ãã«ã§ãããããæŽç·ŽãããããŒã¿æ§é ãçšããããšã§ãåªäœã®ãã埮åŠãªç¹åŸŽãè¡šçŸããããšãã§ãããã°ã©ãã«åºã¥ãèšèªã¯ãRefalãçŽç²ãªãªã¹ãåŠçèšèªã«å¯ŸããŠæã£ãŠããã®ãšåããããªå©ç¹ãRefalã«å¯ŸããŠæã€ããšã«ãªãã
3.察象æ©æ¢°ã®åäœã調æ»ã»å¶åŸ¡ããããã®ã¡ã¿ãã·ã³ãäœæããå Žåããã®æ©ã¿ãåæ¹ã»åŸæ¹ã®äž¡æ¹åã«è¿œè·¡ãããå Žåãå€ããèšç®ã®å±¥æŽã¯ãåœç¶ãªããç¶æ ã®æååã§è¡šçŸãããã第3.1ç¯ã§ã¯ãèšç®æ©ã®æ§æããèšç®æ©ã«ããèšç®ã®æŽå²ã«åãæ¿ããããšã§ãã¹ãŒããŒã³ã³ãã€ã«ãã©ã®ããã«åŒ·åããããã瀺ããããã«ãåŸæ¹ãžã®ç§»åã¯ã¹ãŒããŒã³ã³ãã¥ãŒãã£ã³ã°ã®æŠå¿µã®äžéšã§ãããåŸæ»ãã¯é¿ããããšãã§ããŸããããã®ä»£åãšããŠãæŠå¿µçãªç°¡ç¥åãšãã代åãæããªããã°ãªããŸãããç§ãã¡ã䜿ãèšèªã¯ãä»ãã£ãŠããããšãè¡šçŸããã®ã«åœ¹ç«ã€ã ãã§ãªããããã«äœãã§ãããã瀺åããŠããããã¹ãŒããŒã³ã³ãã€ã«ã®æŠå¿µãRefalã®ãããªèšèªã®æèã§æåã«ç»å Žããã®ã¯å¶ç¶ã§ã¯ãããŸããã
4.çŽç²ãªãªã¹ãåŠçèšèªã¯ãååž°çãªããã°ã©ãã³ã°ã«ã¯åããŠããããã¢ã«ãŽãªãºã ãå埩çã§ããå Žåã«ã¯äžåãã§ãããäžæ¹ãååž°çãªã¢ã«ãŽãªãºã ã¯æ確ã§ãšã¬ã¬ã³ãã§ããããå¹çãæªããããå埩çãªåœ¢ã«å€æããªããã°ãªããªãç¶æ³ã«ãã°ãã°çŽé¢ãããLispã§ã¯ããªã¹ããå転ãããªãåçŽãªãã©ããŒãµã«ã§ãããå埩çã«è¡ããšäžå¯èœã«ãªããRefalã¯ååž°çãªããã°ã©ãã³ã°ãå埩çãªããã°ã©ãã³ã°ãåæ§ã«åŸæãšããŠããŸãã
ãé¡ãèŽããŸã