Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

ç§ã¯æ°ããªè¨èªãå¦ã¶ã®ã好ããªã®ã§ããããã°ãã使ãã¨ã©ããã¦ããã®è¨èªã®é åã¯è²ããã¦ãã¦ãã¾ãã¾ããããã¦çµå±ã¯ããã¼ã«ããã¯ã¹ã®ä¸ã®ãããµããè¨èªã®1ã¤ã«ãªã£ã¦ãã¾ãã®ã§ãã ãããClojureã¯ä¾å¤ã§ãããç§ã¯ä»ã§ããæåã«å¦ãã æã¨å¤ããããã®è¨èªã使ãã®ã好ãã§ãããã®çç±ã¯ããã®è¨èªã®æã¤è½åã¨ã·ã³ãã«ãã®çµ¶å¦ãªãã©ã³ã¹ã«ããã¾ãã è½åã®ãã©ã³ã¹ ä¸é¨ã®è¨èªã¯ã·ã³ãã«ã§ãã£ã¦ãåæã«åé·ã ã£ãããã¾ããåé·ãã¯å¤§ããåé¡ã§ã¯ãªãã¨è¨ã人ããä¸ã«ã¯ãã¾ãããããã人ãã¡ã¯ãå ¨ã¦ã®è¨èªããã¥ã¼ãªã³ã°å®å ¨ã§ããã¨ããç¹å®ã®è¨èªã§ã¯å°ãå¤ãã³ã¼ããæ¸ãå¿ è¦ãããã ãã ã¨ãå説ããã§ãããã ã§ãããã¯çå¤ãã ã¨æãã¾ããåçä¸ä½ãã表ç¾ã§ãããã¨ãããã¨ã大äºãªã®ã§ã¯ããã¾ããã解ããã¨ãã¦ããåé¡ã«ã©ãã ããã¾ãè¨èªã対å¿ã¥ãããããã¨ãããã¨ã§ããããªãã®åé¡é åã®è¦³ç¹ããè
ããã°ã©ãã³ã°è¨èªClojureã®ä½è Rich Hickeyæ°çããClojure Hackerã®ãã¼ã ãDatomic(ãã¼ãããã¯ã¨çºé³ããããã)ã¨ãããã¼ã¿ãã¼ã¹ããªãªã¼ã¹ãã¾ããããããä½ããã¨ã¦ã¤ããªãã§ãã10å¹´å ãè¡ã£ã¦ãæè¡ãããªãã§ããããã ã¾ã æ¬çªãµã¼ãã¹ã¯å§ã¾ã£ã¦ãã¾ãããéçºç°å¢ç¨ã®ã©ã¤ãã©ãªãé å¸ããã¦ãã¾ãã Datomicã¯æ¬æ°ãªã¢ã¼ããã¯ãã£ãªã®ã§ä¸è¨ã§èª¬æããã®ã¯ã¨ã¦ãé£ããã§ãã ç§ãç解ã§ãããã¨ãç°¡åã«èª¬æãã¾ãã 2014/1/20è¿½è¨ ã©ã¤ã»ã³ã¹ã¢ãã«ããµãã¼ãã¹ãã¬ã¼ã¸ããµã¼ãã¹ã¨ãã¦ã§ã¯ãªãç¬ç«ãã¦ä½¿ç¨ããå½¢ã«ãªããªã©è¨äºä½ææã®å 容ããè²ã å¤æ´ãåã£ãé¨åãæ´æ°ãã¾ããã å¤æ´ä¸å¯ãªAppend-onlyãã¼ã¿ãã¼ã¹ å¾æ¥ã®ãã¼ã¿ãã¼ã¹ã§ãããã¬ã³ã¼ããå¤æ´ããã¨ããã®ã¯ãã®ã¬ã³ã¼ãã«å¯¾å¿ããå ´æããããããã®ãã¼ã¿ãæ¸ãæããã¨ããã
ååã® Java ã¨æ¯ã¹ã¦ Clojure ã 3 å以ä¸é ãã¨ããã®ã¯ä½ãã®ééãã§ã¯ãªããã¨æã£ã¦ç¢ºããããï¼ãã£ã±ãééãã ã£ã件 ã®ç¶ãã§ãï¼ ä»åã¯ï¼ååæ®éã«æ¸ãã並ååãªã Clojure ããã°ã©ã ã並ååããã¾ãï¼ æ®éã«æ¸ãã並ååãªã Clojure ããã°ã©ã ã®ã³ã¼ãã¯åã®è¨äºãåç §ãã¦ãã ããï¼ ãæ®éã«æ¸ãã Clojure ããã°ã©ã ãã®ä¸¦ååãã®è¨äºã§ã¯ï¼ pmapReducersã® 2 ã¤ã®æ¹æ³ã使ã£ã¦ãæ®éã«æ¸ãã Clojure ããã°ã©ã ãã並ååãï¼ ä¸¦åååã¨ä¸¦ååå¾ã®å®è¡æéãæ¯è¼ãï¼ã©ã¡ããéããã確èªãã¾ãï¼ ã¾ãï¼ã³ã¼ãã®å¤æ´ç¹ã確èªãããã¨ã§ï¼ä¸¦ååã«ããã©ãã ãã³ã¼ããè¤éåããããè°è«ãã¾ãï¼ pmap ã«ãã並ååãæ®éã«æ¸ãã Clojure ããã°ã©ã ãããã®å¤æ´ç¹ã¯æ¬¡ã® 2 ã¤ã§ã: map ã pmap ã«ç½®ãæããï¼1
ãã«ãã³ã¢ããã°ã©ãã³ã°ã®æ¦å¿µã¨ Java 8/Scala/Clojure ã§ã®æ¸ãæ¹ï¼ããã³ï¼åããã°ã©ãã³ã°è¨èªéã§ã®æ¯è¼è¨äºãã¯ã¦ãªããã¯ãã¼ã¯ã§ 93 ãã¯ãï¼å·çæç¹ï¼ãéãã¦ããï¼äººæ°ã¨ãªã£ã¦ãã¾ãï¼ ãã«ãã³ã¢æ代ã®ããã°ã©ãã¯é¢æ°è³ã«ãªãããScalaã»Clojureã - Tech-Sketch è¨äºãèªãã§ã¿ãã¨ãªãã»ã©åãããããï¼åããã°ã©ãã³ã°è¨èªã®éããæ¯è¼çãã£ã¨é ã«å ¥ã£ã¦ããè¯ãè¨äºã§ããï¼ãã®è¨äºãæ¸ããä½è ã«æ¬æã表ãã¾ãï¼ ãããï¼ã¾ã¨ãã®ã¨ããã«æ¸ããã¦ããå®è¡æéæ¯è¼ãè¦ã¦ã¿ãã¨ï¼ä½ããããããã®ã§ãï¼ ï¼å è¨äºï¼ã¾ã¨ãã®è¡¨ããã®å¼ç¨ï¼ Java7 Java8 Scala Clojure é並åå¦çå®æé 0m32.304s 0m32.511s 0m50.478s 1m38.138s CPUæé 0m33.730s 0m35.842s 2m12.2
åå ã®è¨äºã§ã¯ãé¢æ°åããã°ã©ãã³ã°ã®æ¦å¿µã¨Java8ã«ããå®è£ ä¾ã示ãã¾ããããããJava8ã®ãªãªã¼ã¹ã¯æ¥å¹´ã¾ã§å»¶æããã¦ãã¾ã£ããããä»ãã試ãã¦ã¿ãã«ã¯å°ããã¼ãã«ãé«ãããããã¾ããã ããã§ä»åã¯ãJava7ã®JVMä¸ã§åä½ãã代表çãªé¢æ°åããã°ã©ãã³ã°è¨èªã Scala 㨠Clojure ãç´¹ä»ãã¾ãã Scalaã¨ã¯ ã§ã¯ã Scala ããç´¹ä»ãã¾ãããã Scalaã¯JVMä¸ã§åä½ããããã°ã©ãã³ã°è¨èªã§ãé¢æ°åã®ç¹å¾´ã¨ãªãã¸ã§ã¯ãæåã®ç¹å¾´ãåããæã£ãã欲張ããªè¨èªã§ãã JVMä¸ã§åä½ãããããæ¢åã®è¨å¤§ãªJavaã©ã¤ãã©ãªããã®ã¾ã¾æµç¨ã§ããJVMã®ããã©ã¼ãã³ã¹ãã¥ã¼ãã³ã°ãã¦ãã¦ãæ大éæ´»ç¨ãããã¨ãã§ãã¾ããã¾ãJavaãããè±å¯ãªè¨è¿°å½¢å¼ãæã¡ãªãããJavaãªãã¸ã§ã¯ãããã®ã¾ã¾æ±ããå¼·åãªåæ¨è«ãæã£ãéçåä»ãè¨èªã§ããããããå®åçã§å
@halcat0x15a ãæ¸ãã Clojure ã¸ã®ä¸æºã¨ã ã¨ããã¨ã³ããªãèªã¿ã¾ããï¼ ãã®æã®ä¸æºã¯åãªãæç´ã«çµãã£ã¦ãã¾ããã¨ãå¤ãã®ã§ããï¼ Haskell/Scala ããã°ã©ãããè¦ã Clojure ã¨ããæ確ãªè¦ç¹ããããããã§ï¼ åãªãæç´ãè¶ãã¦ããã°ã©ãã³ã°è¨èªéã®æ¯è¼ããããã£ããã«ãªã£ã¦ãã¾ãï¼ ç§ãèªãã§ãã¦ï¼Scala ã®ããã« Clojure ãæ¸ãããã¨èãããï¼ åããã¨ãæã£ã¦ãã¾ãã ãããªã¨ï¼ãªãã»ã©ã¨èãæã£ã¦ãã¾ãã¾ããï¼ ã¨ããã§ï¼ 人ãæ±ãä¸æºã¨ããã®ã¯ç¾äººããã°ç¾éãéãããã§ï¼ Haskell/Scala ããã°ã©ãã¨ããèæ¯ãå¤ããã°ä¸æºãå¤ãã£ã¦ããããã§ãï¼ ãæ¹åããã Javaãã¨ã㦠Clojure ã使ã£ã¦ããç§ãèªãã¨ï¼ Scala ããã°ã©ãã®ä¸æºãå¥ã®æå³ããã£ã¦ãã¾ãï¼ ããã§ï¼ãã®ã¨ã³ããªã§ã¯ï¼@halca
å®éã®å ¬éããã¡ãã£ã¨é空ãã¦ãã¾ãã¾ãããã misakiã®ãã¼ã¿çãå ¬éãã¾ããã misakiã¨ã¯?â rubyã®Jekyllãåèã«Clojureã§ä½ã£ãéçãµã¤ãã¸ã§ãã¬ã¼ã¿ã§ããå½ããã°ãmisakiã§çæãã¦ãã¦ã misakièªä½ã®ããã¥ã¡ã³ããmisakiã§ç®¡çã»çæãã¦ãã¾ãã ä½ãæ°ããã®?â ãã¼ã¿çã§è¿½å ãã主ãªæ©è½ã¯ä»¥ä¸ã®éãã§ãã Clojurescriptã¸ã®å¯¾å¿åºåã®ã«ã¹ã¿ãã¤ãºãã«ãã¤ã³é¢æ°ã®æ¡å ã¹ãã対å¿Clojurescript対å¿â è¨å®ãã¡ã¤ã«ã«å®ç¾©ã追å ãããã¨ã§Clojurescriptããã«ããããã¨ãã§ããããã«ãªãã¾ããã ä»ã¾ã§ã¯ãã³ãã¬ã¼ããSå¼ã§æ¸ãã ãã§ããããããã§JSãSå¼ã§æ¸ããããã«ãªã£ãã®ã§ ã¾ãä¸æ©ãå ¨é¨Clojureã®ã¿ã¼ã³ã«è¿ã¥ããæãã§ãã ;; clojurescript compile options ;; sr
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}