【Lisp】プログラミング言語 Clojure #4【JVM】 [無断転載禁止]©2ch.net (89レス)
上下前次1-新
1: 2017/01/04(水)12:00 ID:uHeuKaUg(1/5) AAS
JVM上で動作するLisp方言「Clojure」のスレ。
Clojure - home
外部リンク:clojure.org
外部リンク:www.try-clojure.org
前スレ:
【Lisp】プログラミング言語 Clojure #3【JVM】
2chスレ:tech
【Lisp】プログラミング言語 Clojure #2【JVM】
2chスレ:tech
【Lisp】プログラミング言語 Clojure【JVM】
省1
2: 2017/01/04(水)12:03 ID:uHeuKaUg(2/5) AAS
【リファレンス】
API Overview - Clojure v1.8 (stable)
外部リンク:clojure.github.io
Clojure Libraries - Clojure Contrib, Leiningen, ...
外部リンク:clojure.org
grimoire - community combined cheatsheet + examples
外部リンク:grimoire.arrdem.com
ClojureDocs - community provided example repositoryttp://clojuredocs.org/
CrossClj - library cross-referencettp://crossclj.info/
【ブログ・ML・質問箱】
省14
3: 2017/01/04(水)12:04 ID:uHeuKaUg(3/5) AAS
【チュートリアル】
Clojure Koans
外部リンク:clojurekoans.com
外部リンク:clojurescriptkoans.com
labrepl
外部リンク:github.com
4Clojure
外部リンク:www.4clojure.com
Clojure の日本語ガイド
外部リンク:ayato-p.github.io
省5
4: 2017/01/04(水)12:08 ID:uHeuKaUg(4/5) AAS
【本】
外部リンク:www.amazon.co.jp
Programming Clojure (2nd edition)
外部リンク:blog.practical-scheme.net (日本語版)
英語の本
外部リンク:clojure.org
【動画】
外部リンク:youtube.com
【その他】
Clojureをつくったわけ
省11
5: 2017/01/04(水)12:10 ID:uHeuKaUg(5/5) AAS
【テンプレ終了】
テンプレ収集場所
外部リンク:wiki.fdiary.net
(ID:guest Pass:cl)
6: 2017/01/04(水)18:38 ID:yy/SdLnw(1) AAS
1.9っていつ出るの?
7: 2017/01/04(水)23:14 ID:VMJ7nozd(1) AAS
re-frameの勢力増えている気がして嬉しい
8: 2017/01/05(木)18:05 ID:FiQZD0WY(1) AAS
乙
エラーもっと見やすくなりますように
9: 2017/01/13(金)17:24 ID:R3VNpyWj(1) AAS
外部リンク:www.rightrelevance.com
ざっとみてたら、reagentのちょっとした記事があった。
Reagent deep dive part 1
外部リンク[html]:timothypratley.blogspot.jp
10: 2017/01/13(金)23:31 ID:X2ezHFUW(1) AAS
まさにHTMLというでかいデータ構造をReact/JSXで書くという点に不満を抱いている人はおおいね
Clojureはデータ構造をベターっと書くのが得意だからうまく処理できる
11: 2017/01/16(月)01:48 ID:u1r5PPit(1) AAS
re-frameすげぇびっくり
HTMLをemacs+clojure単体でhiccupで書くだけでも楽だったのだけどSPAでものすごいお気楽に書けるのでびっくり
おいらは社内で猛プッシュ中なのだけどclojureがlisp系なので忌避されて泣きそう
12: 関連サイト 2017/01/16(月)05:52 ID:snnb/Fhd(1) AAS
JVM上で動くということはAndroidアプリも作れるということですか?
13: 2017/01/16(月)16:58 ID:zFZr9yOS(1) AAS
clojureで動いてるアプリもあるけど、まずはjavaでandroidの仕組みを理解するのが先かな、
外部リンク:github.com
他にcljsとreactnativeで動かすやつもある。
外部リンク:github.com
14: 2017/01/16(月)17:23 ID:cwyxJ1cI(1) AAS
ありがとうございます
15: 2017/01/19(木)22:33 ID:aY4YJCCh(1) AAS
Clojure - Frequently Asked Questions
外部リンク:clojure.org
公式にFAQページなんてあったっけ?ツイートで見かけたけど最近できたのかな?
16: 2017/01/21(土)13:50 ID:aqW7hRmv(1/2) AAS
各ライブラリのcomponent設定セット
外部リンク:github.com
使い方のサンプルも。
外部リンク:github.com
外部リンク:github.com
17: 2017/01/21(土)13:52 ID:aqW7hRmv(2/2) AAS
sampleで思い出したのだけど、lein newとboot -d boot/new newで作れる雛形を検索できるサイトってあったっけ?
こういう感じのやつ(yo)
外部リンク:yeoman.io
18: 2017/01/21(土)14:11 ID:z9Zi6HmD(1) AAS
boot-newが公式リポジトリに移動してた
外部リンク:seancorfield.github.io
19: 2017/01/21(土)22:59 ID:C0k8sCvn(1) AAS
初心者向けwebスタック作るっていってたやつのアルファ版らしい。
外部リンク:arachne-framework.org
目標がよく分かってないけど、phpのlaravelみたいに使いづらいところが無くなるようにフレームワークで全体をならすようなつもりだったのかね。
20: 2017/01/21(土)23:27 ID:EPTmlCuB(1) AAS
この前クラウドファンディングしてたやつか
21: 2017/01/26(木)11:35 ID:BY+td22O(1) AAS
好きなclojureのcore関数は?
Twitterリンク:fogus
22: 2017/01/28(土)11:31 ID:BGFfcx+H(1) AAS
lux 0.5.0
It's meant to be a functional, statically-typed Lisp that will run on several platforms, such as the Java Virtual Machine and JavaScript interpreters.
外部リンク:github.com
外部リンク:luxlang.gitbooks.io
23: 2017/02/11(土)23:59 ID:2J4sjkSp(1) AAS
なんぞ
外部リンク:groups.google.com
JavaScript Modules (Alpha) | ClojureScript
外部リンク:clojurescript.org
24: 2017/02/12(日)00:24 ID:1laRC1Ic(1) AAS
ClosureCompiler用の外部JS宣言を推論してくれるらしい。
Externs (Alpha)
外部リンク:clojurescript.org
25(1): 2017/02/26(日)17:24 ID:WP4rX3RZ(1) AAS
javaのmutableなコレクションをうまく扱えるようなライブラリってないかな
具体的にはdouble型からなるmutableな型をdeftypeで宣言して、
array かjava.util.ArrayListに投げてmutableなmap!とかを実装してる奴
自分で書いて試してみろって?そりゃそうなんだけど
clojureの設計思想から真っ向から反しているのはわかってるけど
こういうニーズも満たせればclojureって最強言語なんじゃねと思うんだけど
26: 2017/03/02(木)00:51 ID:5Cm7dTQ2(1/2) AAS
javaと変換を扱うライブラリあるけど、可変にするものではなさそう。
外部リンク[data]:github.com
外部リンク:github.com
外部リンク:github.com
行列みたいな計算向けは可変あるけど、一般的なjavaのって話ではないか。
これも操作を完結する感じなので、java関係なさそう。
外部リンク:github.com
abclもlispobjectとあるので、直接は扱えないのかな?
外部リンク:abcl.org
27: 2017/03/02(木)00:56 ID:5Cm7dTQ2(2/2) AAS
そういえば、こんなのあったね。
外部リンク:github.com
外部リンク[html]:docs.caudate.me
28: 2017/03/02(木)22:07 ID:7sf+xG/k(1/2) AAS
あらためて調べて考えたんだけど
javaでは、ヴァルハラがくるまで、ジェネリクスパラメータにプリミティブが使えないんだよね
じゃあ例えばリストを使う場合に特定の参照型、例えばboxed Doubleのような参照型が要素になり、結局mutableのメリットがなくなるってことなのかな
javaはあまり詳しくないけど、プリミティブはメモリを直接上書きするから、高速
オブジェクトは変更されると、
動的に新しい値がメモリに割り当てられ、古いデータはGCに回収されるとする
そうするとミュータブルクラスはパーシステントクラスを使ってるのと決定的な差がなくなってくるという考えに行き着くんだけど
29: 2017/03/02(木)22:17 ID:dlTbMJUn(1) AAS
javaだとgc避けるために、off-heepのスタック領域などにリングバッファ作って処理する話が出てくるね。
30: 2017/03/02(木)22:58 ID:7sf+xG/k(2/2) AAS
lmaxのdisruptorとか?
てかいまのやりとりでようやく固定長のキューではなくリングバッファ使っている理由がなんとなくわかった気がするわ
31: 2017/03/06(月)14:04 ID:R0WeGFec(1) AAS
>>25
それ必要かな?
メモリセンシティブな用途以外出番なくね?
32(1): 2017/03/06(月)23:40 ID:MJoZTqPl(1) AAS
clojureでbigdataな処理をやりたいとかね
sparkとかつかえよっていう話かもしれないが
とりあえずletをうまくつかったら40分の計算が9秒になったわ
だがrepl出力にアウトプットをそのまま垂れ流そうとすると標準i/o出力に40分かかってしまう
ちなみに9秒になったのはlazyで計算されてないわけではなく計算値のlastは普通に12(9+3)秒程度で取得できる
大型なデータのrepl出力を手軽に高速化する方法ってないのかな
なんか挙動見てる限りchunk seqをちまちま出力しているように見える、計算結果はinto []してるんだけどな
33: 2017/03/07(火)01:35 ID:72cHV2nQ(1) AAS
>>32
replの出力鈍いからなぁ
ものすげぇ長い戻り値って端からわかってるならファイルに書いちゃうのが吉
いつもemacs+ciderでうぼあーってなる自分が言うのもなんだけど
34: 2017/03/07(火)02:02 ID:TRrf8/Mo(1) AAS
あれから少し調べたけど
system/outがそもそも遅いみたいね
普通にreplの挙動を考えると1ラインで1システムコールだもんな
OSコールと描画のオーバーヘッドは無視できない
とりあえずbufferedwriterでsystem/outを包んでやるか、素直にfileに出すのが良さそうね
だからみんなtimbreとかlog4jとか使ってるわけだ
35: 2017/03/07(火)23:38 ID:4Kmn9smG(1) AAS
unixならtail -fなりでいいしね。winで調べたらpowershellか。
36: 2017/03/09(木)13:15 ID:fDJtN/vS(1) AAS
いろいろ調べたけどそもそも計算できてなかったわ
lazy-seqのvectorになってただけだった
37: 2017/05/05(金)13:48 ID:H2WcmmXo(1/2) AAS
facebook傘下のwitaiが基盤実装をclojureからc++かhaskellに移行する予定だったらしく、haskellにしたとのこと。
移行したら読みやすいみたいな話もちょっとだけ。
clojureの場合、ライブラリは一度作るまでいろいろいじって、一回出来るとあまりいじらないイメージもあるけど、実装を多人数でよくいじるみたいなのだと、難しいのかな?
IDE上手く使えばそういう開発もできるのだけど、最初からなんでも決まってるほうがいいってのはgo見るとわかる気もする。
外部リンク:wit.ai
38: 2017/05/05(金)13:57 ID:H2WcmmXo(2/2) AAS
外部リンク:postd.cc
外部リンク:postd.cc
gc関連の話題に触れると、基盤系はgcチューニングに結構リソース割いてるgoやそもそもgc回避できるrustが来そうってのはあるが、
javaはどうなってくんだろうね。
JVM言語向けのvmやpauseless vmを開発してる話は聞くんだけど、あまりリソースが割けてなさそう。
39: 2017/05/05(金)21:49 ID:MDgrGB6E(1) AAS
spec方面でエコシステムが育って来てるようだけど、どれぐらいで落ち着いて参入しやすくなるかな?
外部リンク:www.slideshare.net
40: 2017/05/30(火)19:28 ID:5LsaYMbU(1) AAS
threading macroを使ったSeqの途中で一時変数(let)を使いたいんだけど、どうすれば良いの??
41: 2017/08/13(日)19:51 ID:KJ+m5GEj(1) AAS
(A 1 2 3 B 1 2 C 1 2 3 4)
から
((A 1 2 3) (B 1 2) (C 1 2 3 4))
を得たいのですが、loop、recur以外のよい方法はあるでしょうか?
42: 2017/10/31(火)07:56 ID:XAFRApiv(1) AAS
reduce
43: 2017/10/31(火)14:28 ID:ks1WQGP1(1/2) AAS
Clojure知らんのだけど、CLならこんな書き方も
(defun ochinchin (xs)
(mapcon (lambda (xs &aux (head (first xs)) (tail (rest xs)))
(when (symbolp head)
(list (subseq xs 0 (position-if (lambda (x) (not (numberp x))) tail)))))
xs))
(ochinchin '(A 1 2 3 B 1 2 C 1 2 3 4))
==> ((A 1 2) (B 1) (C 1 2 3 4))
44: 2017/10/31(火)14:31 ID:ks1WQGP1(2/2) AAS
失敬、バグってたw
45: 2017/11/05(日)14:30 ID:aeYzbOC4(1) AAS
バグってないコードもかいておくれ
46: 2017/11/05(日)18:22 ID:Ejsp/QIe(1) AAS
(position-if (lambda (x) (not (numberp x))) tail)
の部分を、↓
(let ((n (position-if (lambda (x) (not (numberp x))) tail)))
(when (numberp n) (1+ n)))
もしくは、アナフォリックマクロライブラリが使えるなら
(awhen (position-if (lambda (x) (not (numberp x))) tail)
(1+ it))
ですね。 ◎
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
47: 2017/11/07(火)09:53 ID:QNcerxGs(1) AAS
Clojureということでシーケンスを使って、以下はどうでしょうか?
(defn foo
[xs]
(->> xs
(partition-by char?)
(partition-all 2)
(map (partial apply concat))))
> (foo [\a 1 2 3 \b 4 5 \c 6 7 8])
((\a 1 2 3) (\b 4 5) (\c 6 7 8))
48: 2018/01/08(月)22:31 ID:7CLJqQI5(1) AAS
lein run では問題無く動作するけど
lein uberjar を行おうとすると失敗して困っています
Uberjar aborting because jar failed: Invalid argument というメッセージが表示されています
何方か解決方法を教えていただけると助かります
問題が発生してるコードはこれです
外部リンク:github.com
49(1): 2018/01/09(火)06:37 ID:lIn3WuFp(1) AAS
動かない原因は、:resource-paths ["resources" "lib/jme3/*"]
lein2になってからワイルドカード使ってjarをまるごと解決ってのが出来なくなってlein runすら動かないと思うし、直接lib/jme3/hoge.jarみたいに指定しても、uberjar時にjar内にjarが出来てそのままではうまくいかない
簡単な解決方法としては、Mavenレポジトリを使った方法で、以下変更点によってlein uberjarがうまくいく
念のためleinのアップデートもね
; project.clj
(defproject tiny-game "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.8.0"]
[org.jmonkeyengine/jme3-core "3.2.0-stable"]
[org.jmonkeyengine/jme3-desktop "3.2.0-stable"]
[org.jmonkeyengine/jme3-plugins "3.2.0-stable"]
省11
50: 2018/01/09(火)08:36 ID:IAv+4//d(1) AAS
>>49
解決出来ました!!
本当に助かりました!ありがとうございます!!
51: 2018/01/18(木)20:11 ID:vOZSq9tB(1) AAS
この言語って何に使うの?まさか仕事?
52: 2018/01/19(金)19:58 ID:1WY9ihKS(1) AAS
5ちゃんで使われてるらしいよ
53: 2018/04/08(日)19:11 ID:bJUCDaUD(1) AAS
LINE Game Cloudの例に見る関数型言語の特徴
外部リンク:engineering.linecorp.com
54: 2018/05/23(水)20:42 ID:Au5e7VGg(1) AAS
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
SAB28
55: 2018/07/05(木)01:10 ID:RfoszcD2(1) AAS
ZO6
56: 2018/08/07(火)00:00 ID:ahdeFvKS(1) AAS
関数型言語で画像処理のプログラムが書きたいんだけど
Common Lispで言う
(setf (aref ary img y x) num)
みたいなn次元配列をmutableでごりごり書き換えるのって
Clojureでできる?
オライリーのCLOJURE PROGRAMMINGとshiro kawai訳のプログラミングClojureの
最初の方は読んだ
57: 2018/08/08(水)23:16 ID:o1dMGl8v(1) AAS
行列計算をごりごり使うってのは向いてないかなと。
javaなどでごりごり書いて、clojureから使ってるってひとはいるかもしれないが。
いちおうそのためのライブラリはある。
外部リンク[html]:neanderthal.uncomplicate.org
58(1): 2020/03/16(月)03:39 ID:r6kvZN2B(1) AAS
bashでパイプから流されてくるプログラムコードの文字列をprity printして綺麗に改行とかインテンドされたコードに変換して保存したい
どうすれば出来ますでしょうか
59: 2020/03/16(月)09:09 ID:BYpTFeXn(1) AAS
VSCode みたいな、各言語の言語サーバーを使えば?
60: 2020/03/17(火)10:10 ID:hrhIzOSk(1) AAS
>>58
pprint
61: 2021/02/18(木)12:40 ID:wW4uIUgX(1) AAS
Clojure面白いけど日本だといまいち人気ないよね
Leiningenのサイトに行くと変なオッサンが現れるのが原因だと思うんだけど
62: 2021/02/20(土)22:51 ID:kotKgp7H(1) AAS
最近始めたんだけど、leiningen使えば良いのかdeps.edn使えば良いか混乱した。boot?とかもあるし
63: 2021/02/27(土)12:17 ID:IWlmpzlB(1) AAS
パッケージシステムってだいたい混沌としてる気がする
64(1): 2021/03/16(火)12:27 ID:tUVUKdZi(1) AAS
Ruby on Rails 6 の本を出している人の、入門書が出た
Elixir実践ガイド、黒田努、2021/2/5
Ubuntu 20.04, Docker CE 19.03, Elixir 1.11
65: 2021/03/18(木)18:18 ID:+052LPUC(1) AAS
clojure使う人ってjavaにも精通してるの?
ごりごりjavaなのをclojureに書き直すプロジェクトとかあるのかな
66: 2021/03/18(木)20:39 ID:7a+X5xG9(1) AAS
勝手なイメージだかど、Javaの資産やライブラリを使う前提がありそうだから、それなりに知識が必要になりそう
67: 2021/03/18(木)21:50 ID:1sWV2MVC(1) AAS
>>64
あわしろ氏が総監修のやつか。
68(1): 2021/05/10(月)23:29 ID:zV1+0nw0(1) AAS
Clojure 二日目です
(ns example.trumps.card)
(def spades 4)
(def hearts 3)
(def diamonds 2)
(def clubs 1)
(def suit '(spades hearts diamonds clubs))
って定義して
user=> (use 'example.trumps.card)
nil
省13
69(1): 2021/05/11(火)00:27 ID:5VzwiW7v(1/3) AAS
>>68
丁度 Clojure 三日目になりました
(ns example.trumps.card)
(def spades 4)
(def hearts 3)
(def diamonds 2)
(def clubs 1)
;(def suit '(spades hearts diamonds clubs))
(def suit (conj '() clubs diamonds hearts spades))
って直したらイケました
省14
70: 2021/05/11(火)00:56 ID:5VzwiW7v(2/3) AAS
>>69
んで、こうなりました…
(ns example.trumps.card)
(def spades 4)
(def hearts 3)
(def diamonds 2)
(def clubs 1)
;(def suit '(spades hearts diamonds clubs))
;(def suit (conj '() clubs diamonds hearts spades))
(def suit [spades hearts diamonds clubs])
省17
71(1): 2021/05/11(火)10:31 ID:zfkVf3yY(1) AAS
これを (def suit '(spades hearts diamonds clubs))
こうすれば (def suit (list spades hearts diamonds clubs)) 中身を評価したリストが作れる
クォートでやりたいならこれでもいい (def suit `(~spades ~hearts ~diamonds ~clubs)) バッククォートの中はチルダをつけた式だけ評価してくれる
72: 2021/05/11(火)20:06 ID:5VzwiW7v(3/3) AAS
>>71
アドバイスありがとうございます!
普通に list 関数でリストを作ればよかっただけだったんですね…
73: 2021/07/07(水)05:19 ID:Jk8/Aq6G(1) AAS
なんでclojureが流行ってるのかわからない
74: 2021/07/07(水)15:09 ID:49748z4f(1) AAS
なんでubyが流行ってるのかわからない
↓
ubyは流行ってない
75: 2021/07/07(水)18:20 ID:ustzb7y5(1) AAS
どこで流行っているのか詳しく...
76: 2021/07/15(木)01:31 ID:UxRGUXYq(1) AAS
今年からClojure始めて遊んでるけど、はやってるのか?
日本語の記事見ると2013年頃のやつが多い気がするから、一度流行ってみんなどこかに行っちゃったのか?
77: 2021/07/17(土)17:47 ID:Q2NmMT6S(1) AAS
そのくらいに関数型言語やらscalaとかclojureみたいな次期Java互換言語みたいのが流行った気がする。
あれはなんだったんだろう。
78(3): 2021/07/17(土)21:49 ID:xmQE+uIu(1/2) AAS
Elixir の本なら出た
Elixir実践ガイド、黒田努、2021/2
Ubuntu 20.04, Docker CE 19.03, Elixir 1.11
Scala は、YouTube で有名な、雑食系エンジニア・KENTA が、オワコン認定した!
新規参入が無いから、
コミュニティーに偏屈なベテが居座って、新人にマウントを取ってくる
それで寂れた
79: 2021/07/17(土)22:37 ID:niIhu6/Y(1/2) AAS
雑食系エンジニア・KENTAってだれやねん(´・ω・`)
80: 78 2021/07/17(土)23:10 ID:xmQE+uIu(2/2) AAS
KENTA のサロンは異例、日本6位の2千人入っている
未経験者の自社開発ウェブ系への転職、
Ruby on Rails の虎の穴
81: 2021/07/17(土)23:46 ID:niIhu6/Y(2/2) AAS
(´・ω・`) うわぁ
82: 78 2021/07/18(日)00:06 ID:H/NN8O82(1) AAS
KENTA は、Java 土方・SES とか、
高額学校とか、マナブの情報商材などを批判するから、
あちこちの経営者から攻撃されている
今も、200万円の学校をぼったくりと言ったので、訴えられたw
こういう手順で勉強すれば、お金が掛からないとか、
安上がりな方法を教えるから、多くの経営者から嫌われている
83: 2021/08/30(月)16:00 ID:sXvjxAc3(1) AAS
libpython-clj を clojurescript から使うのは無理なのでしょうか?
84: 2021/09/23(木)05:05 ID:M6IEENDA(1) AAS
lispやhaskellも日本ではちょっと前のほうが流行ってたな
みんなどうしてしまったのだろう
85: 2021/09/30(木)17:21 ID:n/Set1um(1) AAS
pythonのpythonpathに相当するものないのでしょうか
自分で作ったコードで良く使い回しするもの集めたディレクトリにbashrcでパスを通しておくのpython でよくやってたので
clojureでも同じことできると嬉しい
86: 2023/08/03(木)18:53 ID:Ee057Aaj(1) AAS
native imageって使えてる?
87: 2023/12/20(水)22:34 ID:/45PPSXv(1) AAS
>>78
Scalaが負けたのは単にベターJavaのポジションをKotlinが確保したってのが一番デカいと思うがな
JavaScriptがクソ言語だからってトランスパイルして動かすAltJSが乱立してたけど
CoffeeやPureScript、Elm、Flowとか優秀な言語は沢山あったけど
マイクロソフトがゴリ押ししたTypeScript一強で終わったし
88(1): 2024/01/31(水)01:32 ID:+kvetBHm(1) AAS
Clojureの本スレだと思うけど、何でこんなに過疎ってんの?
89: 2024/04/11(木)17:52 ID:jfKO/2Xn(1) AAS
>>88
他のプログラミング板も過疎ってるし
こんなもんじゃね?
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.519s*