Stanã¨Rã§ãã¤ãºçµ±è¨ã¢ããªã³ã°èªæ¸ä¼ãChapter 7ï¼7.6-7.9ï¼ãå帰åæã®æ©ã¿ã©ãããï½çµ±è¨ã®åã§æãã¾ã«ãªãããï½
Stanã¨Rã§ãã¤ãºçµ±è¨ã¢ããªã³ã°èªæ¸ä¼ãChapter 7ï¼7.6-7.9ï¼ãå帰åæã®æ©ã¿ã©ãããï½çµ±è¨ã®åã§æãã¾ã«ãªãããï½
M. Watanabe @labidochromis ã¯ã©ã¹ãåç©ãéèã«ä¾ãã説æã®å¤ãã¯ããæä½ãã®æ¦å¿µãæ¬ è½ãã¦ãããã¨ã®ã¿ãªãããããã¼ã¿ãã®è¦³ç¹ããã®èª¬æã¨ãã¦ãåé¡ããããã¨ãå¤ãã®ã ã 2010-08-17 12:41:55 M. Watanabe @labidochromis ã¯ã©ã¹ãéèï¼ã¨ãåºä¹³é¡ã¨ãæ´æ°ã¨ãï¼ã«ãã¤ã³ã¹ã¿ã³ã¹ããããï¼ã¨ãç¬ã¨ãï¼ã¨ãï¼ã«ä¾ããã¨ãã¯ã©ã¹ã夿°ã§ã¤ã³ã¹ã¿ã³ã¹ã¯ããã«æ ¼ç´ãããå¤ã®äºã ã¨æããããã 2010-08-17 12:59:00 大' @satodainu æ´æ°ã¨ï¼ã«ä¾ããããint ãããï¼(^^;; QT @labidochromis: ã¯ã©ã¹ãéèï¼ã¨ãåºä¹³é¡ã¨ãæ´æ°ã¨ãï¼ã«ãã¤ã³ã¹ã¿ã³ã¹ããããï¼ã¨ãç¬ã¨ãï¼ã¨ãï¼ã«ä¾ããã¨ãã¯ã©ã¹ã夿°ã§ã¤ã³ã¹ã¿ã³ã¹ã¯ããã«æ ¼ç´ãããå¤ã®äºã ã¨æããããã 2010-08-17 13:
2011å¹´12æ6æ¥ç«ææ¥ ããã¸ã¸ãå§ã¡ãããã³ãä½è²ãããå§ããã¯ã©ã¹è§£èª¬ ããã¸ã¸ãå§ã¡ãããã³ãä½è²ãã¯ãã以ä¸ãªãã»ã©ãªãã¸ã§ã¯ãæåã§ããããããçæ³çãªå®è£ ããã¦ãããã¨ã«æ°ã¥ãã¾ããããããç¨ãã¦ãªãã¸ã§ã¯ãæåã説æãã¦ã¿ããã¨æãã¾ãã ãã人ãããã¸ã¸ãå§ã¡ãããã³ãä½è²ãã¨è³ªåããã®ã¯ããå§ã¡ãããªãã¸ã§ã¯ãã®ä¿æããpants_color夿°ãåå¾ãããã¨ããæç¶ãã¨è¦ããã¨ãåºæ¥ã¾ããã¤ã¾ã oneechan.pants_color ãåå¾ãããã¨ãã¦ããããã§ãã ã§ã¯ã©ãããã°ããã®ã§ããããï¼ èãã¦ã¿ã¾ããããç´æ¥ãã³ããè¦ãã°pants_colorãåå¾ãããã¨ãã§ãã¾ããã ã¯ã©ã¹ã使ããªãã¨ããã°ãããªæ¸ãæ¹ãèãããã¾ãã struct oneechan{    int pants_color; }; æ§é ä½ã§ã²ãªå½¢ã宣è¨ãã¾ãã
Haskell Advent Calendar2011 2æ¥ç®ã§ãã ãã42æã«ãªã£ã¦ãã¾ãã¾ãã...ãããã«é ãã§ããã Haskellã¨è¨ãã°åã¯ã©ã¹ ãªãã¸ã§ã¯ãæåã®ã¯ã©ã¹ã¨Haskellã®åã¯ã©ã¹ã¯éãã¾ããçãªèª¬æã¯è¦ã¾ããã©ãéããæ¯ã¹ãæ å ±ãç¡ã ãªãã¸ã§ã¯ãæåç¥ã£ã¦ãã人ããã®çè§£ãç°¡åã«ããã°Haskellçè§£ãã人ãå¢ãã¾ããï¼ ã¨ããç®è«è¦ã®å ã«ã¹ã©ã¤ããä½ãã¾ããããã¦ã¼ã¶è¦ç¹ãè¶³ããã«æ··ä¹±ããã¦ãã¾ã£ãããç¥ãã¾ããã Programming haskell chapter10 View more presentations from Ruicc Rail Haskell Advent Calendarææ¥ã¯id:melponããã§ãã
å°çæ å ±ã®å½éæ¨æºåã«ããã¦ã¯ãå°ç©ããæ¦å¿µä¸çã®ãã®ã¨å®ç¾©ãã¦ãã¾ãããããããã®æãåºæ¬çãªå®ç¾©ãããã§ã«èºãã®ç³ã ã£ãã®ã§ã *1ã 徿¥ããå°ç©ãã¯ç¾å®ä¸çã®ãã®ã§ãã£ãã å°çæ å ±ã«æºãã人ã ã®éã§è©±ããã¦ããã¨ãå°ç©ãæ¦å¿µä¸çã®ãã®ã¨ãã¦å®ç¾©ããã¦ããã®ããç¾å®ä¸çã®ãã®ã¨ãã¦å®ç¾©ããã¦ããã®ããç¨èªã®å®ç¾©ã§æ··ä¹±ãçãããã¨ãããã¾ããæ¦å¿µä¸çã®ãã®ã¨èªèãã¦ããäººã¯æ å ±ç³»ã®äººãå¤ããç¾å®ä¸çã®ãã®ã¨èªèãã¦ãã人ã¯ä¼çµ±çãªæ¸¬éã«ã¤ãã¦ã®ç¥èãè±å¯ãªäººãå¤ãããã§ãããã®æ··ä¹±ã¯ã次ã®ãã¨ãçç±ã ã¨èãã¦ãã¾ãã å°çæ å ±ã®å½éæ¨æºåã®ä¸çã§ã¯ãå°ç©(feature)ã¯ãå®ä¸çã®ç¾è±¡ã®æ½è±¡æ¦å¿µ(abstraction of real world phenomena)ãã¨å®ç¾©ããã¦ããããã§ããã¤ã¾ããå°ç©ã¯æ¦å¿µä¸çã®ãã®ã¨ãã¦å®ç¾©ããã¦ãã¾ãã 䏿¹ã§ãå°ç©ãç¾å®ä¸çã®ãã®ã¨ãã¦
ã¯ããã« ãã®æ¬ã¯ãªãã¸ã§ã¯ãæåæè¡ãå©ç¨ãã¦ã½ããã¦ã§ã¢éçºãããã¨ãç®æãæè¡è ããã³ç®¡çè ã®ããã«æ¸ãããæ¬ã§ããããã°ã©ã ã®ã³ã¼ããé£ããæ°å¼ãªã©ãæé¤ãã¦ããï¼å³ã¨æç« ã«ãã£ã¦åºæ¬æ¦å¿µãé©ç¨æè¡ãå¹³æã«è§£èª¬ãã¦ãã¾ãããªãã¸ã§ã¯ãæåæè¡ãæ°å¦(å½¢å¼)ã¬ãã§æ¢æ±ãã試ã¿ã¨ãããã§ãããã æ¬æ¥ï¼ãªãã¸ã§ã¯ãæåæè¡ãï¼ç¶ããç¶ã¸æ°´ããããã¬ããã«ï¼æ£ç¢ºã«ä¼ããã«ã¯ï¼æ°å¦(åçè«)ãå¿ è¦ã¨ãã¾ããæ°å¦çå½¢å¼åãè¡ããã¦ããªãã¨ï¼ãªãã¸ã§ã¯ãæåã§è¡¨é¢åããåé¡ã®è°è«ããã¿åãã空転ãããã¨ãå¤ãããã§ãããã®æã¯ããã ã£ã ï¼ãã®æã«ã¯ããã ã£ãã¨çµé¨åã®æ«é²ã«ãªããããªãã®ã§ãããã¯ãä½ãããã®å½¢å¼åã¯å¿ è¦ã§ãããããããï¼æ°å¦çå½¢å¼åã®è¦ãã¿ã¨ããã並大æµã§ã¯ããã¾ãããç¹ã«ï¼å¾è¿°ããã¤ã³ããªã¿ã³ã¹(ç¶æ¿) ã並åãªã©ã絡ãã ããã¤ãã«ã¯æ®é ·ãªã®ã§ããç§ã ãããããã¾ãã
ã½ããã¦ã§ã¢éçºã®è½ãç©´2013-09-01ã½ããéçºã¯ããã°ã©ã ã®ææ³ã ããç¥ã£ã¦ãã¦ããã¾ãããã¾ããã ã½ããã¦ã§ã¢ã®ããéçºã®ä»æ¹ã«ã¤ãã¦èãã¾ãã ã½ããã¦ã§ã¢éçºã¯ãããã©ãã«ã«å·»ãè¾¼ã¾ãã¾ããç´æãããããå»¶ã³ããã ããã°ã©ã ãã¹ãã²ããã£ç¶æ ã«ãªã£ãããé常ã«ä½¿ãã«ãããã®ãåºæ¥ã¦ã ãããããããåé¡ãã©ã解決ãããã«ã¤ãã¦ã¯ä»ã¾ã§ã«å¤ãã®äººãç ç©¶ã㦠ãã¾ãããããã¦ãããã½ããã¦ã§ã¢ãä½ãã«ã¯ãã¨ããæ¹æ³è«ã«ã¤ãã¦ä¸å® ã®ææãä¸ãã£ã¦ããã«ãé¢ãããã½ããã¦ã§ã¢éçºã«æºããå®åè ã«ã¾ã§ã¯ 浸éãã¦ããªãã®ãå®ç¶ã§ãã è¿å¹´ã§ã¯ããã½ããã¦ã§ã¢éçºæ¹æ³è«ããããã¯ãã½ããã¦ã§ã¢å·¥å¦ãã¨ãã ååã§ããããææãæ¬ã«ãããã®ãæ°å¤ãè¦ãããããã«ãªãã¾ããããã ã¯ããã§æã¾ãããã¨ã§ããããããããããæ¬ãèªãã ã ãã§ãã®ç²¾ç¥ãã ãçè§£ããªãã¾ã¾é©ç¨ããã¨ããã£ã¦
ã³ã³ãã³ã 第1ç« åºæ¬çãªç¨èª 第2ç« ãªãã¸ã§ã¯ãæåéçº ç¬¬3ç« è¨è¨ã®åé¡ã 第4ç« ãªãã¸ã§ã¯ãæåè¨è¨ã®åå 第5ç« åä¸è²¬ä»»ã®åå 第6ç« Visitor ãã¿ã¼ã³ 第7ç« LSPãDIPãISP 第8ç« ãã¿ã¼ã³æè¡ 第9ç« ã¦ã¼ã¹ã±ã¼ã¹ 第10ç« å®ä¾ 第1ç« åºæ¬çãªç¨èª 第2ç« ãªãã¸ã§ã¯ãæåéçº ãªãã¸ã§ã¯ãæåéçº ãªãã¸ã§ã¯ãæååæ æ©è½å¤è¦æ± User ã¤ã³ã¿ãã§ã¼ã¹ Student ã¯ã©ã¹ã¨Teacher ã¯ã©ã¹ Student ã¯ã©ã¹ã®ã½ã¼ã¹ã³ã¼ã Teacher ã¯ã©ã¹ã®ã½ã¼ã¹ã³ã¼ã æ¼ç¿2-1 UserLocator ã¯ã©ã¹ã®ã½ã¼ã¹ã³ã¼ã æ¼ç¿2-2 æ¼ç¿2-2 ã®è§£ç Teacher.java UserLocator.class 第3ç« è¨è¨ã®åé¡ æ¼ç¿3-1 æ¼ç¿3-1 ã®è§£ç1ï¼è¿å´å¤ãå©ç¨ããæ¹æ³ï¼ æ¼ç¿3-1 ã®è§£ç2ï¼æ¡ä»¶åå²ã«ããæ¹
Jasst12ä¹å· åè²«è³æï¼ã¢ã·ãã£ã¤ã«ã»Rubyã»ã¯ã©ã¦ãã(ARC)ãæ´»ç¨ããããã·ããã¹ã«ããããã¹ãã®å®è·µ #jasst12Q
åã¯ããªãã¸ã§ã¯ããthisããµãããªçè§£ã§ããªãã£ã ããå¼ç¨ ããã§ãä¸çªããããªãã®ããthisã¨ãselfã«å¯¾ããã¡ãã»ã¼ã¸ã»ããã·ã³ã°ããèªåã«ã¡ãã»ã¼ã¸ãéããã£ã¦ä½ããããï¼ ä»äººãåãããªãã¨ããããèªåãªããµããµã¨ãããããããããã¤ãã¤ãã俺ããè¶é£²ããã¨ããç§ããã¢éãã¾ããããã¨ãã¡ãã»ã¼ã¸ããªãã¨ãããªããããã ãã®åé¡ã§ããã ãªããèªåã«å¯¾ããã¡ãã»ã¼ã¸ãéãå¿ ç¶æ§ãããã®ããã¨ããåãæãã¯ãããæå³ã§ãã£ã¨ãã«æãã¾ããããããå®éã«å¿ ç¶æ§ã®ããã·ã¹ãã ãåå¨ããã®ã§ããã®ä»æ§ããããã¯å®è£ ããã¼ã¹ã«ããã°ããªãå¿ è¦ãªã®ãã説æã§ãã¾ãã ãã®ã·ã¹ãã ã¨ã¯ä½ã? §ããªãã¸ã§ã¯ãéã§ã¡ãã»ã¼ã¸ãããã·ã³ã°ãã¦åä½ããã¢ãã«ãæ¡ç¨ãã¦ããã·ã¹ãã ã¨ããã®ã¯ãå®ã¯ã¿ããªã使ã£ã¦ããWindowsã§ããã»ã¨ãã©ã®ããã°ã©ã è¨èªã§ã¯ãã¡ãã»ã¼ã¸ã»ããã·ã³ã°ã»ã¢ã
ã¢ã©ã³ã»ã±ã¤ã®âã¡ãã»ã¼ã¸ã³ã°ã«ããããã°ã©ãã³ã°âã¨ããçæ³ã«åºã¥ãï¼éåæå¦çãªã©ããããè¶³ãã¦ããªããªãããââï¼æ¯è¼çå¿ å®ã«å®è£ ããã1970年代ã®é常ã«å¤ãSmalltalk-72ã«å®éã«è§¦ãã¦ã¿ãã·ãªã¼ãº 第2å¼¾ã§ãï¼ãªãææ°ã®Smalltalkã«ã¤ãã¦ã¯ Pharo ãªã©ã§ã楽ãã¿ãã ããï¼ï¼ã ä»åã¯è¬è¨èªãSmalltalk-71ãã§æ¸ãããã¹ãã¼ã¹ã¦ã©ã¼ã»ã²ã¼ã ã Smalltalk-72ã«ç§»æ¤ãã¦åãããã¨ãç®æãã¾ããããªãã¨ãå®èµ°ã§ãã¦ããã£ãã§ããåå(2019å¹´)ãå«ãä»ã®è¨äºã¯ãã¡ãããâSmalltalk-72ã§éã¶OOPã®åç¹ | Advent Calendar 2023 - Qiita ã¦ã¼ã¶ã¼å ¥åãåãä»ãã ask ã¨ã²ã¼ã ãã¹ã¿ã¼ãããã start ããããä»ä¸ãã® start ã§ãã ã¾ããSmalltalk-71 ã§ã¯çµã¿è¾¼ã¿ã®ããã·ã¼ã¸ã£
å¿ãã人ã®ããã®ã¾ã¨ã ä¸è¬ã«ããªãã¸ã§ã¯ãæåããã°ã©ãã³ã°ãã¨å¼ã°ããèãæ¹ã«ã¯çºæ¡è ãç°ãªãäºç³»çµ±ããããï¼ãã ãç°¡åã®ãããæ¬¡ã®ãã¡åè ããæ¹å¤çã«æ´¾çãã¦çãããããã¿ã¤ããã¼ã¹ã®ãªãã¸ã§ã¯ãæåã¯ããã«ã¯å«ãã¦ããªãï¼ ã¢ã©ã³ã»ã±ã¤ã«ãããå¤åã«å¼·ãé·æéç¨å¯è½ãªé å»¶çµåã·ã¹ãã ã SIMULA67 ã«ãã£ãããªãã¸ã§ã¯ãããã¡ãã»ã¼ã¸ã®åãæã¨ãããã¨ã§å®ç¾ï¼ãªãã¸ã§ã¯ãã«ã¡ãã»ã¼ã¸éä¿¡ï¼ããã¢ã¤ãã¢ã«åºã¥ããã¡ãã»ã¼ã¸ã³ã°ã®ãªãã¸ã§ã¯ãæåãã¨ã ãã¢ã«ãã»ã¹ãã©ã¦ã¹ãã©ããï¼åå¾ãã¦æ½è±¡ãã¼ã¿åãçºæ¡ãããªã¹ã³ãæ¬äººããªãã¸ã§ã¯ãã¯ã©ã¹ãèãããã¬ã¼ããSIMULAé£å¶ãEiffelã®ã¡ã¤ã¤ã¼ããåæ§ã®çæ³ãå¾ã¦ããï¼ã«ãããã¦ã¼ã¶ã¼å®ç¾©åï¼æ½è±¡ãã¼ã¿åï¼ã SIMULA67 ã«ãã£ããã¯ã©ã¹ãã¨ããè¨èªæ©è½ã使ã£ã¦å®ç¾ï¼ã«ãã»ã«åãç¶æ¿ã夿 æ§ï¼ããã¢ã¤ãã¢ã«åºã¥ããæ½
人çãããããããã æ ãããã æè¿ãã¿ãã¿ãã¦ããã®ãè½ã¡çãã¦ãã¾ãæ ããå§ããèªç©ºä¼ç¤¾ã®ã»ã¼ã«ãå§ã¾ã£ããé£è¡æ©ãæ¼ãããã¨ããã®ãç¹°ãè¿ãã¦ãã è¤æ°äººã§è¡ãæã¯ããããç®ç決ãã¦ã¬ãã£ã¬ãã£é¨ãããéããæ¥½ãããããããã²ã¨ãæ ã®æã¯ãã²ã¨ã¤ã²ã¨ã¤ã®åºæ¥äºã«ãâ¦
ãããã³ã«ã¨ã¤ã³ã¿ã¼ãã§ã¼ã¹ã®æ¯è¼ http://d.hatena.ne.jp/carver/20071202#p1 ãã£ã±ã両æ¹ã使ã£ã¦ããäººã®æè¦ã¯åèã«ãªãã ãã ãããã§ææããã¦ãããinterfaceã¨protocolã®éããã¯ãæ£ç¢ºã«ã¯ãJavaã¨Objective-Cã®éããã§ã¯ãªãã ããããã¾ãææããã¦ããéãã¯ããinterfaceã¨protocolã®æ¬è³ªçãªéããã¨è¨ããã ãããã 以ä¸ã詳細ã å®ç¾©ã§ããè¦ç´ ã»ã¤ã³ã¿ã¼ãã§ã¼ã¹ 宿°ãã¡ã½ããããã¹ãããã¯ã©ã¹ã¨ã¤ã³ã¿ã¼ãã§ã¼ã¹ ã»ãããã³ã« ã¡ã½ãã ã¤ã³ã¿ã¼ãã§ã¼ã¹ã¯ã¯ã©ã¹-2ï¼ã¤ã³ã¹ã¿ã³ã¹ãçæã§ããªããã¡ã½ãããå®è£ ã§ããªãï¼ã®æ©è½ãæã¤ãã¤ã³ã¿ã¼ãã§ã¼ã¹ã¨å¼·ãé¢é£ããã¯ã©ã¹ãã¤ã³ã¿ã¼ãã§ã¼ã¹ãããã¹ããããã¨ã§å®ç¾©ã§ããã 䏿¹ãããã³ã«ã¯ã¡ã½ããããå®ç¾©ã§ããªããJavaã¨ç°ãªããObjCã®ã¯ã©ã¹ã¨ã
åãµãã¯ãåâ代æ°ââ¦ããããï¼åçè«å ¥éï¼ã®ååï¼ãã«ããã¾ããããã¯æ¬ç·¨ï¼å¾åï¼ã1åèªã¿åãï¼é·ããã©ï¼ã§ãæ¯è¼çæ°ãã*1åçè«ãç´¹ä»ãã¾ãããå ¥éï¼éã«å ¥ãï¼ãã¨ããããã¯éã®å¤ããä¸ãè¦ãã¦ã¿ãç¨åº¦ã 説æç¨ã³ã¼ãã¯Javaã®æ§æã使ãã¾ãããã ããããã±ã¼ã¸å®£è¨ã¯æ¸ããªãããpublicã¯ãªãã¹ãçç¥ã å å®¹ï¼ ã¤ã³ã¿ã¼ãã§ã¼ã¹ãªãã¦ãæè©®ãããªãã® å¿çç广ã¨ãã人é-人éã³ãã¥ãã±ã¼ã·ã§ã³ã¨ãã¯ãå¥åé¡ ããããããã¤ã³ã¿ã¼ãã§ã¼ã¹ã«å¶ç´ãä»å ãã ãã£ã¨å¶ç´ãè¶³ãã¦ã¿ã è¬ã®ã¤ã³ã¿ã¼ãã§ã¼ã¹ã«æå³ããããã® ã§ããããåçè«ã«ã©ãã¤ãªããã®ï¼ ã¤ã³ã¿ã¼ãã§ã¼ã¹ãªãã¦ãæè©®ãããªãã® ã¾ããæ¬¡ã®ã¤ã³ã¿ã¼ãã§ã¼ã¹ãè¦ã¦ãã ããã interface AB { int a(); void b(); } ããã¹ã´ã¤ã§ãããä½ãã¹ã´ã¤ã£ã¦ããããè¦ã¦ããªãã®ãã¨ãããµãããªãã
(thanks to id:koyachiãdel.icio.us/rtk2106) OOPã¨FPã¨ã颿°ããªãã¸ã§ã¯ããã¯ãã¼ã¸ã£ã®ä½¿ãåãã«ã¤ãã¦èãã¾ãã 颿°åãè¯ãã®ãããªãã¸ã§ã¯ãæåãè¯ãã®ããç¥ãããã¨æã£ã¦ãã¾ãããè²ã ãªãã¼ã¸ãèªã¿ãç¾æç¹ã§ä¸å¿ã®çããå¾ã¾ããã ã«ã¦ã³ã¿ãä¾ã«ãã¦ã颿°ãã¹ã³ã¼ãããªãã¸ã§ã¯ããã¯ãã¼ã¸ã£ã®é ã«è¦ã¦è¡ãã¾ãã颿°é¢æ°ã¯å¦çã§ããå ¥åã¨åºåãããã¾ãã颿°åããã°ã©ãã³ã°ã§ã¯ã颿°å士ã®å ¥åã¨åºåãé£çµãããã°ã©ã ãæ§æããã¾ãã var current = 0; function next(v){ return v + 1 } function previous(v){ return v - 1 } ok( 1 == ( current = next(current) ) ); ok( 2 == ( current = next(cu
ãµã¼ãã¹çµäºã®ãç¥ãã ãã¤ãYahoo! JAPANã®ãµã¼ãã¹ããå©ç¨ããã ãèª ã«ãããã¨ããããã¾ãã ã客æ§ãã¢ã¯ã»ã¹ããããµã¼ãã¹ã¯æ¬æ¥ã¾ã§ã«ãµã¼ãã¹ãçµäºãããã¾ããã ä»å¾ã¨ãYahoo! JAPANã®ãµã¼ãã¹ããæé¡§ãã ããã¾ãããããããããé¡ããããã¾ãã
ã©ã³ãã³ã°
ãç¥ãã
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}