æ¸è©:ããã°ã©ãã³ã°Scala - The Python Paradox is now the Scala Paradox
ãªã©ã¤ãªã¼ã¸ã£ãã³æ§ããç®æ¬é ãã¾ãããèªäºããã®ã§ãææ³ãªã©æ¸ãã¦ã¿ããã¨æãã¾ãã
The Python Paradox is now the Scala Paradox
ãªãã§ãããæ¬ã®ç´¹ä»ã«å ¥ãåã«ãã¨ããè¨äºã®ç´¹ä»ããããã¨æãã¾ãã
The Python Paradox is now the Scala Paradox — Martin Kleppmann‘s blog
In his 2004 short essay The Python Paradox, PG argues (perhaps controversially) that a company can hire smarter programmers if it chooses to write its code in a âcomparatively esotericâ programming language. At the time, Python was probably considered by most people to be esoteric in comparison to Java – in the sense that not many people would learn it at university or for career purposes. Therefore, the programmers who knew Python were people who learnt it for fun; and learning languages for fun is an activity which typically only the bright and motivated people engage in. Which makes the language a good âquality filterâ for people.
2004å¹´ã®ãã¼ã«ã»ã°ã¬ã¢ã ã®ã¨ãã»ã¤"The Python Paradox"ã§ã¯ããã伿¥ããæ¯è¼çé£è§£ãªãããã°ã©ãã³ã°è¨èªã§ã³ã¼ããæ¸ããã¨ã鏿ãããªããããè³¢ã(Smartãª)ããã°ã©ããéããã¨ãã§ãããã¨è¨ã£ã¦ãã¾ãã
彿ãPythonã¯Javaããé£è§£ã§ãããã¨èããã¦ãã¾ãã(大å¦ããã£ãªã¢ç®çã§Pythonãå¦ã¶ãã¨ããããªãã®ã§)ã
ãããã£ã¦ãPythonãç¥ã£ã¦ããããã°ã©ãã¯ãç´ç²ãªèå³ã§Pythonãå¦ãã 人ã ã§ãããããã¦ãèå³ãæã£ã¦ããã°ã©ãã³ã°è¨èªãå¦ã¶äººã ã¯ãæ´»åçã§æãããããæ°ã®ããããã°ã©ãã§ãã
ããã°ã©ãã³ã°è¨èªã¯ãããããã°ã©ããè¦åãããä¸è³ªã®ãã£ã«ã¿ããªã®ã§ãã
http://martin.kleppmann.com/2009/09/18/the-python-paradox-is-now-the-scala-paradox.html
å¼ç¨ããã¦ãã"The Python Paradox"ããçãã¦ç°¡åãªè±æãªã®ã§ãæ¯éèªãã§ã¿ã¦ãã ããã
ãã¦ãThe Python Paradox is now the Scala Paradox — Martin Kleppmann‘s blogã§ã¯ã" Scala in 2009 has the place which Python had in 2004.(2009å¹´ã®Scalaã¯2004å¹´ã®Pythonã¨åãä½ç½®ã¥ãã§ãã)"ã¨è¨ã£ã¦ãã¾ããããªãã¡ããã¾ã使ããã¦ãªãã¦ããã£ã¦ã人ã¯ã»ã¨ãã©è峿¬ä½ã§åå¼·ãã¯ããã¦ãã¨è¨ãããã§ããããã¦ããã¼ã«ã»ã°ã¬ã¢ã ã®ã¨ãã»ã¤ã®ä¸ã§ã"誰ããåãã¦ã¿ãã伿¥"ã¨ãã¦Googleãããããã¦ãããå®ã¯Googleã¯Pythonã®çµé¨ã®ããããã°ã©ããæ±ãã¦ãããã ãã¨ããã¾ãããGoogleãTwitterãLinkedlnãªã©Scalaãããã¼ã«æ¡ç¨ãã¦ãã伿¥ã«ç½®ãæãã¦ã¿ããã©ãã§ãããã?
ãé人ããã°ã©ããã«ã¯ãæ¯å¹´ãæ°ããªããã°ã©ãã³ã°è¨èªãï¼ã¤ã¯å¦ã¶ãã¨ãã¨ããã®ãããã¾ããä»å¹´å¦ã¶è¨èªã¨ãã¦ãScalaã¯ãããã§ããã?ããä»äºãè¦ã¤ããããç¥ãã¾ããã?
ããã°ã©ãã³ã°Scalaã«ã¤ãã¦
ãããããæ¬é¡ã®ãããã°ã©ãã³ã°Scalaãã«ã¤ãã¦ã®æ¸è©ã§ãã
çµè«ããè¨ãã¨ãè¯æ¸ã§ãããã¨ã¯ééãããã¾ãããScalaãå¦ã¶ãªããæ¬æ¸ã¨ãScalaã¹ã±ã¼ã©ãã«ããã°ã©ãã³ã°[ã³ã³ã»ãã&ã³ã¼ãã£ã³ã°] (Programming in Scala)(éç§°ã³ããæ¬) ããäºåã»ããã§ç¨æãã¹ãã§ãã
æ¬æ¸ã¯ãScalaã®æ©è½ãè¨èªä»æ§ã«ã¤ãã¦è©³ç´°ã«ãæã«ã¯å¦çç³»ã®å é¨ã«è¸ã¿è¾¼ãã§è§£èª¬ããã¦ãã¾ããã¾ããèè ã®ä¸äººã§ããAlex Payneã¯å Twitterã§ãããã¯ãã³ã¼ãã«Scalaãæå ¥ãã¦ãããããã°æ´æ¦ã®å士ã§ãããéæã«ç»å ´ããå®è·µçãªTipsãé常ã«åèã«ãªãã¾ãã
"6ç« Scalaã«ããä¸ç´ãªãã¸ã§ã¯ãæåããã°ã©ãã³ã°"ã§ã¯ããã¬ã¤ããã³ã³ãããªã³ãªãã¸ã§ã¯ããªã©ãScalaã®ç¹å¾´çãªãªãã¸ã§ã¯ãæåãµãã¼ããããããè¨è¨ã§æ±ãããã®å®è·µçãªå 容ãè¿°ã¹ããã¦ãããæ¯é徿¥ã®ãªãã¸ã§ã¯ãæåããã°ã©ãã³ã°ã«é¦´æãã 人ã«èªãã§ãããããã§ããå¿ ãæ°ããçºè¦ãããã¾ãã
"8ç« Scalaã«ãã颿°åããã°ã©ãã³ã°"ã«ããã¦ã¯ã颿°åããã°ã©ãã³ã°ã¨ã¯ã©ã®ãããªææ³ãªã®ããå®ä¾ã®ã³ã¼ãããã¨ã«ãããããã解説ãã¦ããã¾ããç¹ã«ã颿°åããã°ã©ãã³ã°ã¨ã¯åã£ã¦ãåããªãé¢ä¿ã§ããListãOptionãªã©ã®ãã¼ã¿æ§é ã«ã¤ãã¦ãè¿°ã¹ããã¦ãã¾ããåæ§ã®ãã¨ã¯ã³ããæ¬ã«ãæ¸ãã¦ããã¾ããããããéã£ãã¢ããã¼ãã§è§£èª¬ããã¦ãã¾ããJavaããã°ã©ãã®æ¹ã¯ãJava SE 8ã§å°å ¥äºå®ã®ã©ã ãå¼ã«å é§ãã¦ãScalaã§é¢æ°åããã°ã©ãã³ã°ãä½é¨ãã¦ããã¦ã¯ã©ãã§ããããã
ä»ã«ã"9ç« ã¢ã¯ã¿ã¼ã«ããå ç¢ã§ã¹ã±ã¼ã©ãã«ãªä¸¦è¡å¦ç", "11ç« ãã¡ã¤ã³åºæè¨èª", "12ç« Scalaã®åã·ã¹ãã ", "13ç« ã¢ããªã±ã¼ã·ã§ã³ã®è¨è¨"ã¨ãã©ã®ç« ãèªã¿å¿ããããã¾ããåèã¯Scala2.7ã®é ã«åçãçºè¡ãããã®ã§ããã翻訳çã§ããæ¬æ¸ã¯éæã«è注ã§2.8ã«ã¤ãã¦ãè£è¶³ããã¦ãã¾ãã
æ¬æ¸ã«ã¤ãã¦ãããã¦è¦è¨ãè¿°ã¹ãã¨ãããããéåããããã¨ããç¹ã§ãããã?Scalaã¯è±å¯ãªæ©è½ãæã¤è¨èªã§ãã®ã§ãããããã®æ©è½ãç´°ããã«è§£èª¬ãã¦ããã¨ãã©ããã¦ãåéãå¤ããªããã¡ã§ãããããåãã¦Scalaã«è§¦ããæ¹ãªãã°ãæ¬æ¸ããã£ããã¨èªã¿é²ãã¦ãããã®ã§ãããå ã«ã³ããæ¬ãèªã¿ã¤ã¤ãæ°ã«ãªã£ããããã¯ãæ¬æ¸ã§ããã«æ·±ãçè§£ãããã¨ããé²ãæ¹ãããã§ããããåé ã§ãäºåã»ããã§æããã¹ããã¨è¨ã£ãã®ã¯ããããã£ãçç±ã§ãã
ã¨ããããå 容ã¯ç´ æ´ãããã®ã§ãScalaããã°ã©ãå¿ æºã®ä¸åã§ãããã¨ã¯ãééããªãã§ãããã