BPStudy#49 : ATND ã§çºè¡¨ããè³æã§ãã 20110930_BPStudy49
åæ¸ã Scalaã¨ããè¨èªããåç¥ã§ããï¼ Javaã¨åããã³ã³ãã¤ã«ããã¨classãã¡ã¤ã«ã«ãªããåºæ¥ä¸ãã£ãclassãã¡ã¤ã«ãJadãªã©ã§éã³ã³ãã¤ã«ããã¨Javaã®ã½ã¼ã¹ãçæã§ãã¦ãã¾ãã¨ãããããªãJavaã«è¿ãããã°ã©ãã³ã°è¨èªã§ãã JDKã®æ©è½ãJavaã®ã©ã¤ãã©ãªããã®ã¾ã¾å©ç¨ãããã¨ãã§ããã®ã§ãJavaããã°ã©ããæ¢åã®ç¥èãæ´»ç¨ã§ããè¨èªã§ãããã¾ãã ä»åã¯Javaãå©ç¨ãã¦ããéã«çºçããã¡ãªæ§ã ãªçä¾ãé¡æã¨ãã¦ãScalaãå©ç¨ããéã«å¾ãããã¡ãªãããç´¹ä»ãã¦ããããã¨æãã¾ãã èå³ã®ããæ¹ã¯ãã®1ãä½µãã¦ã覧ãã ããã CPUã®éãã§ããã³ã¢ãæ»ã¬ã»ã©åããã¦ã¿ããããªãã« æè¿ã®ãã½ã³ã³ã¯CPUã®ã³ã¢æ°ãå¢ãã¦ãã¦ã4ã³ã¢ã¨ã6ã³ã¢ã®ãã·ã³ãå²ã¨æé ãªä¾¡æ ¼ã§æã«å ¥ãããã«ãªã£ã¦ãã¾ããã ã§ãããããã£ããã·ã³ã®CPU使ç¨çãè¦ã¦ã¿ãã¨ãããã¦
ãªããã極ããã¨ãã»ãã»ããã ãã§ä¼è©±ã§ããã¿ããã§ãã? 俺ã¯ã¾ã ããã¾ã§ã®åã«ã¯è³ã£ã¦ãªããã§ããããã»ãã»ããã ãã§ããã°ã©ãã³ã°ã§ãããã¹ããã§ããã? ããã§ãã¡ãã£ã¨èæ¤ãã¨ãã¾ããåè¨èª Grassãå ã«ãã¦ä»¥åä½ã£ãããã°ã©ãã³ã°è¨èªã天使ã¡ãããã¸å¤©ä½¿ãã¨ã ãããã¼ã©ãããã¼ã¹ã«ã ã¾ãã¾ããã¿è¨èªãä½ãã¾ããã Grassã®ææ³ã¨ç°ãªãç¹ã¯ä»¥ä¸ã®ã¨ããã wãã»ã ã¹ãã¼ã¹ã»ã¿ãã«ã¯ãã¾ãã"ã»ã"ãW vã¯æ¹è¡ wãåºåããããã°ã©ã : ã»ã ã»ãã»ã ã»ãã»ãã»ãã»ã xãåºåããããã°ã©ã : ã»ã ã»ãã»ãã»ã ã»ãã»ãã»ãã»ã ã»ãã»ãã»ã ã»ã "Hello, world!"ãåºåããããã°ã©ã ã»ã ã»ã ã»ã ã»ãã»ãã»ãã»ã ã»ã ã»ãã»ãã»ãã»ãã»ãã»ã ã»ãã»ãã»ãã»ãã»ã ã»ã ã»ãã»ãã»ãã»ãã»ã ã»ãã»ãã»ãã»ã ã»ãã»ãã»ãã»ã ã»ãã»ãã»
ExcelHouganã¯Scalaã使ã£ã¦Excelãã¡ã¤ã«ãæä½ãä½æããã½ããã¦ã§ã¢ã ExcelHouganã¯Scala製ã®ããªã¼ã¦ã§ã¢ï¼ã½ã¼ã¹ã³ã¼ãã¯å ¬éããã¦ããï¼ãä¸ã®ä¸ãçãã¦ããã«ã¯å¦¥åãå¿ è¦ã ãçæ³ã®ä¸çãªã©ããã¯ããªããã¿ããªã©ããã§è¦å´ããããèªåã®å¿ãæ²ãã¦ç¾ç¶ã«çããããã¨ãããã¯ãã ã çæãããExcelã®ãµã³ãã« ä»ã«ãã£ã¨è¯ã解決æ¹æ³ãããä¸ãç¡çã«èªåã®å¥½ããªææ³ã«ãã ããã®ã¯æã®éª¨é ãããããªããã ããããè¯ãããããããããã°ã©ãã¼ã ããããªé¢ç½ããæãããã¦ãããã®ãExcelHouganã ã ExcelHouganã®æ©è½ã¯ã·ã³ãã«ã ãè¨å®ãã¡ã¤ã«ã«è¨è¿°ãããç»åãã¡ã¤ã«ãExcelã®ã·ã¼ãä¸æãã¨ã«ç»åä¸ã¤ãè²¼ä»ãã¦ãããæçµçã«è¨å®ãã¡ã¤ã«ã§æå®ããããã¡ã¤ã«åã§Excelãã¡ã¤ã«ãä½æããã ã·ã¼ããã¨ã«ä¸æã®ç»å é¢ç½ãã®ã¯æ¢ãã¦Scala
åæ¸ã Scalaã¨ããè¨èªããåç¥ã§ããï¼ Javaã¨åããã³ã³ãã¤ã«ãããã¨classãã¡ã¤ã«ã«ãªããå®è¡æã¯JVMä¸ã§åä½ããããªãã¸ã§ã¯ãæåï¼é¢æ°åã®ããã°ã©ãã³ã°è¨èªã§ãã Scalaãéçºããã®ã¯Javaã®genericsã®è¨è¨ãæãããããjavacã®éçºããã¦ããçµæ´ãæã¤Martin Oderskyæ°ã Scalaã¯å¾çºã®è¨èªã¨ãããã¨ããã£ã¦ãJavaãæ¸ãã¦ããæã«æããåé·ãã«å¯¾ããæ§ã ãªè§£ãç¨æããã¦ãã¾ãã æ¬è¨äºã§ã¯ãScalaã¨Javaã®ã³ã¼ããæ¯è¼ããªãããJavaã¦ã¼ã¶ãScalaã«ç§»ã£ãéã«å¾ãããã¡ãªãããæ示ãã¦ããã¾ãã å°ãåºç¤ã®ãµã³ãã«ã³ã¼ãã¯Javaã¦ã¼ã¶ã«ä¼ãããããããã«ãreturnãæè¨ããããã¡ã½ããã¯å¿ ã{ }ã§å²ããªã©ã極åJavaã£ã½ãè¨è¿°ããã¦ãã¾ãã ã ãããJavaã¨åããããªæ¸ãæ¹ãã§ãã¾ã Scalaã¯Javaã®
1éåä»ï¼ã¤ã³ã¹ãã¼ã«ç / 1éæ¡å çï¼ã³ãã³ã / 2éï¼æ¸ãæ¹ / 3éï¼æã¨å¼ / 4éï¼é¢æ° / 5éï¼ãªãã¸ã§ã¯ãæå / 6éï¼å / 7éï¼æ³¨éç / å±ä¸ï¼è¨èªä»æ§è¦ç´ / é²ï¼scalaããã±ã¼ã¸æ¦è¦³ / é空ï¼ãã®ä»ã®ä»å±ããã±ã¼ã¸æ¦è¦³ ãªãã以ä¸ã®è§£èª¬ã¯Javaã®ææ³ã¨ã³ãã³ããæ¨æºã©ã¤ãã©ãªçãä¸å¿ç¥ã£ã¦ãããã¨ãåæï¼ç¾è¡ã®Scalaã¯ãªãJavaã©ã¤ãã©ãªã¸ã®ä¾å度ãé«ãScalaã ãã§å®çµã§ããç¶æ ã§ã¯ç¡ãããªããScalaã®ã³ã³ãã¤ã©èªä½ã¯Java1.4ç¨ã®ã³ã¼ããåããããæ¨æºã©ã¤ãã©ãªãå¤ã1.5ãåæã¨ãã¦ããï¼ã¨ãããã®éãã ããã¨ããããã¯æ¸ãçãããã®ã§ããããã£ã±ãææ³ãã©ã¤ãã©ãªåç §ç¨ã§ãããã¨ãç®æãã¦ããã®ã§ãä¾ãç¹é·çã¯æ¬¡ã®ãªã³ã¯ãåç §ããããï¼ãªããã ããåèè ãã¡ã®é æ ®ã«ããããããããããã®ä¾ã¯é¢æ°åè¨èªã«é¢ããäºåã®æ¦è¦çææ¡
Javaãªäººããè¦ãã¨ããScalaã£ã¦é£ãããã£ã¦ã¤ã¡ã¼ã¸ãããã¾ããã俺ãæåã¯ããæã£ã¦ã¾ãããä»ãã§ããã©ã ã§ãèãã¦ã¿ããã§ãããä½ãé£ããã£ã¦èãæ¹ã»ã¤ãã£ãªã ã«ãªãã¿ããªãã®ãåå ãã¨æã£ããã§ãã ããã§ã¯ã俺ãä»ã¾ã§Scalaããã£ã¦ãã¦å¾ãèãæ¹ãç´¹ä»ãã¾ãããScalaãã¡ãã£ã¨ãã£ã¦ã¿ããã ãã©ãã¨ã£ã¤ãã«ããã¦â¦ãã¨æããã¦ããæ¹ã¯ããã²ãä¸èªãã ããã åèè³æ: Scalaå ¥é - Scalaã§æ¸ãã¯ãããJava使ãåã - Scalaåå¼·ä¼ï¼ æ±å Dropbox - 404 ç¥ã¯è¨ããããããªã¹ããããã Lisperã¯ããªã¹ããã©ãä½ãããã¾ãèãããããã§ããé©åãªãªã¹ããåºæ¥ãããããã°ã©ã ã¯ããã§ãããåç¶ã ã¨ãåãèãæ¹ã¯ãScalaã§ãéç¨ããã¨æãã¾ãã 大ã¾ãã«ããããªæµãã§èãã¦ã¾ãã(ãªã¹ãã¯æåããä¸ãããããã¨ãããã§ããã) ã
â [Scala] RubyããScalaã«ä¹ãæãã15ãããã®çç± [注æ] ãã®æç« ãèªãã¨ãæ¢åã®Rubyã³ã¼ããScalaã§rewriteããããªãã Rubyã³ã¼ãã§åãã§ãã¯ãããã®ã鬱ã«ãªããRubyæ¡ä»¶ã§ããæ°ãåºãªããªãã ãªã©ã®å¹»è¦ãç°å¸¸è¡åãå ±åããã¦ãã¾ãã ç¾å¨é¢ãã£ã¦ããããã¸ã§ã¯ãã家æã®ãã¨ã常ã«æèãã æ°ãå¼·ãæã£ã¦å·éã«èªãã¨ããã§ãããã ãScalaããã°ã©ãã³ã°å ¥éããèªã¿ã¯ããã¦ããããªã大ããé ·ãã¦ãã¾ã£ãã "ã³ã¼ãã£ã³ã°æéã®ååããã¹ãä½æã«è²»ãããªããã°ãªããªãã£ã"(p.3) "Railsã«ãã£ã¦å¾ãããçç£æ§ã®åä¸ã¯ããã¹ãä½æã®ä½æ¥ã«å¤±ããã¦ãã¾ãã¾ãã"(p.3) ã¾ãã«ããæ°å¹´ç§ãæ±ãã¦ãæ¼ ç¶ã¨ããã¹ãã¬ã¹ã®æ£ä½ããç確ã«æç« ã¨ãªã£ã¦ããããã ãããã¦ã»ã©ãªããããããã®æ©è½ãRubyã«æ¬²ããã£ãï¼ãã¨ããé©ãã¨å ±ã« Sc
Scalaã¨ã¯ Scalaã¯ã2003å¹´ã«Javacï¼ã³ã³ãã¤ã©ï¼ãJavaã®Genericsã®è¨è¨ï¼éçºè²¢ç®è ã§ããMartin Oderskyæ°ï¼ã¹ã¤ã¹ã»ãã¼ã¶ã³ãå·¥ç§å¤§å¦ææï¼ã«ãã£ã¦ãéçºãéå§ãããæ¯è¼çæ°ããããã°ã©ãã³ã°è¨èªã§ããJavaã¯å®ç¨è¨èªã¨ãã¦å¹ åºãã·ã¹ãã ã§ä½¿ç¨ããã¦ãã¾ããããä¸ä½äºææ§ãä¿ã¤ã¨ããè¦è«ã®ä¸ãè¨èªã¨ãã¦ã®æ©è½å¼·åããªããªãé²ã¾ãªãã¨ãã£ãéçãè¦ãã¦ãã¦ãã¾ãããã®ãããªç¾ç¶ããããã¨ãããScalaã¯Javaã®å¾ç¶ã¨ãã¦å®ç¨çãªè¨èªãç®æãã¦éçºããã¦ãã¾ãã Scalaæ大ã®ç¹å¾´ã¯ãJavaã®è¯ããæ大éç¶æ¿ãã¤ã¤ãã¹ã¯ãªããè¨èªãé¢æ°åè¨èªã®è¯ãã¨ãããå¸åããå é²çãªæ©è½ï¼ææ³ãåãå ¥ãã¦ããç¹ã§ããã¾ããä»å¾ã®ãã¼ãã¦ã§ã¢ã®ãã«ãã³ã¢åãè¦æ®ããç°¡æã«ä¸¦åå¦çããã°ã©ãã³ã°ãè¡ããã¨ãã§ããã©ã¤ãã©ãªãä»å±ãã¦ãã¾ãã Scalaã®ã¡ãª
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}