2018-01-01ãã1ã¶æéã®è¨äºä¸è¦§
æã®é£åã®ç¨æã¯å¿ããããã³ãç¼ãã¦ãã5åéã®éã«ãã³ã¼ãã¼ã沸ããã1ï½2åã®ãããã調çããªããã°ãªããªããé åºã ã¦ã¦ãæéã®ããå¦çãå¿ è¦ã ããã®ãããªè¦æ±ã«å¿ãã¦ãããã®ã¯ãã¹ã¯ã©ã³ãã«ã¨ãã°ã ãæéæããããªãã§ãã楽ããã§ãããâ¦
ï¼ï¼ï¼ \(Reader\)ã¨æ¥µé ããã¾ã§ã®è¨äºã§ã\(Reader\)ã®ä½¿ãæ¹ã¨å®ç¾©ã«ã¤ãã¦è©³ãã説æããããã®è¨äºã§ã¯ãããã«ç解ãé²ããããã«ãåè«ã§ã®æ¥µéã¨ã®ããããã«ã¤ãã¦èª¬æããããåè«ã¯ãæ§ã ãªæ°å¦ã®åéã§å ±éã«æãç«ã£ã¦ããæ§è³ªã«ã¤ãã¦è«ããâ¦
ï¼ï¼ï¼ \(Reader\)ãå®ç¾©ãã Haskellã§ã¯\(Reader\)ãç¨æãã¦ãããControl.Monad.Readerã¨ããã¢ã¸ã¥ã¼ã«ãèªã¿è¾¼ãã°ã使ããããã«ãªã£ã¦ããããããããã®ã¢ã¸ã¥ã¼ã«ãç解ãããã¨ããã¨ãå¿èåãå¿ è¦ã¨ãããæ±ç¨æ§ãé«ããããã«ã\(Reader\)ããâ¦
ãæ£æã®æçã«ã飽ããæ£æ8æ¥ã«ãä¾ã«ãã£ã¦è¿ãã®è¶ å®å£²ãã¹ã¼ãã¼ã«åºããããæã家ã¯ãæ±äº¬é½ã«å±ãã¦ããã®ã ããé ããªãã¨ããã«ããå¢å·ãè¶ããã¨ç¥å¥å·çã«ãªããé£çå´ã¯è£½é é¢é£ã®ä¼æ¥ãå¤ããã¨ã§ç¥ããã¦ããå°åã ããã¤ã¦ã¯ãè»ä¸¦ã¿å¤§ããªâ¦
ï¼ï¼Haskellã§ã®æ¥µéã¨ä½æ¥µé ããã¾ã§ã®è¨äºã§ã極éã¨ä½æ¥µéã®èª¬æããã¦ãããæ°å¦çãªè¨è¿°ã主ã§ãHaskellãå¦ã¼ãã¨ãã¦ãã人ã¯ãå½¹ã«ç«ããªããªã¨æãããã¨ã ãããåè«ã§ã®ç©ãä½ç©ã¯ãä¹ç®ãå ç®ããããã¯ãè«çç©ãè«çåã¨é¢ä¿ããããã¨ã¯ãç´â¦
ï¼ï¼ï¼ ä½æ¥µéã®æ½è±¡å ååã¨åãããã«ãä½æ¥µéãæ½è±¡åãã¦ã¿ãããããã§ã¯ãä¸å³ã®ããã«ãä¸ã¤ã®åãç¨æãããæåã®å\(\mathcal{C_0}\)ã¯ãä½éã®é ç¹ãããªãåã ã次ã®å\(\mathcal{C}\)ã¯ä½éã§æ§æãããåã ãæå¾ã®å\([\mathcal{I,C}]\)ã¯ã¤â¦
ï¼ï¼ä½æ¥µé 極éã¨å対ã®é¢ä¿ã«ããã®ããä½æ¥µéã§ããã ï¼ï¼ï¼ ä½éã¨ä½æ¥µéã®å®ç¾© ååã¾ã§ã®è¨äºã§ã極éã«ã¤ãã¦èª¬æãã¦ããã極éã¯é(cone)ãç¨ãããã¨ã§å®ç¾©ãããå³ã¡ãããåã®ä¸ã§éãå®ç¾©ã§ããã¨ããããã®ãããªéã¯ãè¤æ°ãã£ã¦ãä¸ã¤ã§ãâ¦