ãã£ã±ã趣å³ã®ããã°ã©ãã³ã°ã¯æ¥½ããï¼Part2ï¼
ï¼Part1ããï¼
Â
ãã¤ã¹ã«ã³ãã«ã®ãã¼ãå±ã²ã¼ã ã
ãã®ã²ã¼ã ã¯æåã¢ã¹ãã¼1978å¹´6æå·ã«æ²è¼ãããBASICããã°ã©ã ã§ããã®å½æã¯ã¾ã æ¥æ¬ã§ã¯ãã¤ã³ã³ãã¼ã ã«ã¯ãªãã¤ã¤ããã¾ãããã製åã¨ãã¦ãã½ã³ã³ã®å½¢ããããã®ã¯ã»ã¨ãã©ãªããç¿å¹´ã®1979å¹´ã«çºè¡¨ã»çºå£²ãããNECã®PC-8001ã®ç»å ´ãå¾ ããã°ãªãã¾ããã§ããããªã®ã§ããã®ã²ã¼ã ããªãªã¸ãã«ã®ãã¤ã³ã³ã§åããã¦ããããã§ãã
ã¤ã¹ã«ã³ãã«ã®ãã¼ãå±ã²ã¼ã ã¯çè ã1978å¹´ã«èæ¡ããASCIIèªä¸ã§çºè¡¨ãããã®ã§ï¼ä¸ç¨®ã®çµå¶æ¦ç¥ã·ã¥ãã¬ã¼ã·ã§ã³ã²ã¼ã ã§ãï¼å½æã®ã³ã³ãã¥ã¼ã¿ã®æ¼ç®è½åã¯ç¾å¨ããã¯èããããªãããã貧弱ã§ï¼å½æã®çè ã®ãã·ã³ã¯8ããã6800CPU, ã¯ããã¯1MHz, ã¡ã¢ãª4ï½32Kãã¤ãï¼HDD, FDD ã¯ãªãï¼ãã¼ãã¬ã³ã¼ãã«300bpsã§ããã°ã©ã ãä¿åãã¦ãã¾ããï¼ï¼ã¢ããªã±ã¼ã·ã§ã³ã¨è¨ãã°åç´ãªæ°å½ã¦ã²ã¼ã ã®ãããªãã®ã°ããã§ããã®ã§ï¼ãã®ãã¼ãå±ã²ã¼ã ã¯åç´ãªè¨å®ã¨ã¯è¨ãï¼ã³ã³ãã¥ã¼ã¿ã¨å¯¾æ¦ã§ããã¨ãããã¨ã§å¤§å¤å¥½è©ã§ããï¼
ï¼ããã°ã©ã ã®ä½è ã®Webãã¼ã¸ï¼ã¤ã¹ã«ã³ãã«ã®ãã¼ãå±ã²ã¼ã (vivi.dyndns.org)ããæç²å¼ç¨
ä¸è¨ã®ãããªèæ¯ããã£ã¦ããªãªã¸ãã«ã®ã½ã¼ã¹ããã°ã©ã ã¯ãç§ã調ã¹ãéããããä¸ã«ã¯è¦ã¤ããããChatGPTãå©ç¨ãã¦ã®Javaè¨èªã¸ã®å¤æã試ããã¨ã¯ã§ãã¾ããããããããªãªã¸ãã«ã¯BASICè¨èªããããæ§é åãããåã®æ§ä»æ§ã§ãããå½è©²ã½ã¼ã¹GOTOæãå¤ç¨ããâã¹ãã²ããã£ããã°ã©ã âï¼å¤±ç¤¼ï¼ã®ãããããããã¾ã¨ãã«ã¯å¤æã§ããªãã ããã¨ã¯æãã¾ãã
ä¸è¨ã®åçã¯ã以åææãã¦ããæåã¢ã¹ãã¼ã®è©²å½ãã¼ã¸ã®åçã§ããã¤ã¹ã«ã³ãã«ã®ãã¼ãå±ã²ã¼ã ãããã£ã¨æ°ã«ãªã£ã¦ãããã¨ãåãã証æ ã§ãããã¾ããä¸é®®æã§ãããã®ãªã®ãªã§BASICã®ã½ã¼ã¹ã³ã¼ãã確èªãããã¨ãåºæ¥ã¾ããããã®ã¾ã¾ã§ã¯Javaè¨èªã®ãããªæ§é åè¨èªã«æ¸ãæãããã¨ã¯é£ããï¼ã§ããªããã¨ã¯ãªãï¼ã¨æãã¾ããã
ããã§ãååºã®ä½è ãã¼ã¸ã®ä¸ã«ããä»è¨èªï¼ä»ç°å¢ï¼ã¸ã®ç§»æ¤ããã°ã©ã ã½ã¼ã¹ãå ãã¿ã«ãããã¨åãªã³ã¯å ãæ¢ã£ã¦ã¿ãã¨ãããããªãã®ããããªã³ã¯ã¨ãªã£ã¦ãã¾ãããããªãå¤ãæ å ±ãæ²è¼ãã¦ãã¦ãã®ã¾ã¾ã¢ãããã¼ãããã¦ããªãç¶æ ã®ããã§ãã
ã¡ãªã¿ã«ãã®ãã¼ã¸ã®æçµæ´æ°æ¥ã調ã¹ã¦ã¿ãã¨ãä¸è¨ã®ããã«2015å¹´ã®12æã«ãªã£ã¦ããã®ã§ããããã§ã«8å¹´è¿ãæ¾ç½®ããã¦ãããã¨ãåããã¾ããï¼çµå±ã¯ããªã³ã¯ä¸è¦§ã®ææ°æ¥ä»ã¨ä¸è´ããã®ã§ãæå¾ã®ãªã³ã¯ã®è¿½å æ¥ãè¦ãã°ããã£ãã¨ãã話ã«ãªãããã ãâ¦â¦ï¼
çµå±ãããããªã³ã¯ã«ãªã£ã¦ããªãè²´éãªãªã³ã¯å ãå·¡ã£ã¦ã使ããããªã½ã¼ã¹ã³ã¼ããæ¢ãã¦ã¿ããã¨ã«ãã¾ãããããè¨ã£ããæããããã§ããã帯ã«çããããã«é·ããç¶æ ã§ããªããªãé©å½ãªã½ã¼ã¹ã³ã¼ããè¦ã¤ããã¾ããã§ããã
ãã®ä¸ã§ãä¸è¨ã®ï¼ã¤ã使ãããã§ããã
ï¼ï¼Shozo Hattaæ°ã®Rubyç
ï¼ï¼ããããæ°ã®Prologç
ããããç§èªèº«ãçµé¨ãããã¨ã®ãªãè¨èªã ã£ãã®ã§ãã½ã¼ã¹ã³ã¼ããè¦ã¦ããã³ã¨æ¥ã¾ããã§ãããã§ããã³ã¡ã³ããåèã«ãããã³ã¼ããçºãã¦ã¿ãã¨ããããä¸è¨ã®ä»æ§ã®ããã§ãã
ï¼ï¼ãªãªã¸ãã«ã®å¤é¨ä»æ§ãããªãã¼ã¹ããå½¢ã§å
ã®ä»æ§ã«è¿ã移æ¤
ï¼ï¼ãªãªã¸ãã«ããã®ç§»æ¤ã§ã¯ãªãå¥ã®äººã移æ¤ããperlçãã移æ¤ãããã®
ãªãªã¸ãã«ã®åç¾æ§ã¯1ã®ã»ããé«ãããã§ãããã2ã®ã»ããä»æ§ã¨ãã¦ã¯ããªãæ¡å¼µããã¦ãããããã«ã¯æ¥æ¬èªåãããã«ã¼ã«èª¬æãä»å ããããªã©è¦ªåè¨è¨ã«ãªã£ã¦ãã¾ããã
横éã«é¸ãã¾ãããå¾å¦ã®ããã«Rubyè¨èªã¨Prologè¨èªã®ç¹å¾´ã調ã¹ã¦ã¿ã¾ããã
ãRubyã
Rubyã¯æ¥æ¬äººã®æè¡è ãéçºããæ¥æ¬è£½ã®ããã°ã©ãã³ã°è¨èªã§ãããWebã¢ããªã±ã¼ã·ã§ã³ã®éçºã«ç¨ãããããã¨ãå¤ãè¨èªã§ãããã¼ã¿ãããã«ä½ç¨ããæç¶ãã®éåä½ããªãã¸ã§ã¯ãã¨ãã¦è¡¨ç¾ãããªãã¸ã§ã¯ãæåè¨èªã§ãã·ã³ãã«ã«çãã³ã¼ãã§è¨è¿°ã§ããã¨ããç¹å¾´ãããã¾ãã
ãPrologã
Prologã¯å称ã®ç±æ¥ã®éããè«çã使ã£ã¦ããã°ã©ãã³ã°ãããè¨èªã§ããå°ãé£ããè¨ãåãã§ããããPrologã¯æ°çè«çå¦ã«åºã¥ããâè«çåè¨èª âã§ãããã¨è¡¨ç¾ã§ããã§ããããPrologã¯ãè«ççæèãå¾æãªã®ã§ããã¾ããALGOLãBASICãCè¨èªãªã©ã«ä»£è¡¨ãããæç¶ãåè¨èªã¨ã¯ç°ãªããPrologã¯å®£è¨åè¨èªã§ãã Prologã§ã¯ã対象ã®æ§è³ªã宣è¨ãããã¨ã§ããã°ã©ã ãæ§æãã¦ããã¾ãã
ãªãã¸ã§ã¯ãæåè¨èªã§ããJavaã«ç§»æ¤ããã«ã¯ãRubyã®ã»ããããããããã§ããæããã¦ã©ãã§ããããããããã«ãã¦ãã使ããããªã³ã¼ãã¯ããããããªã®ã§ããã£ããChatGPTã«å¤æãé ¼ããã¨ã«ãã¾ããããã¦ããã