【Lisp】プログラミング言語 Clojure #3【JVM】
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2013/09/28(土) 11:03:28.38Clojure - home
http://clojure.org/
http://www.try-clojure.org/
前スレ:
【Lisp】プログラミング言語 Clojure #2【JVM】
http://toro.2ch.net/test/read.cgi/tech/1318498898/
【Lisp】プログラミング言語 Clojure【JVM】
http://hibari.2ch.net/test/read.cgi/tech/1255533519/
0952デフォルトの名無しさん
2016/02/07(日) 04:43:54.31ID:afxS0p+G主にCocos2D-html5を使ってブラウザ上で開発をし、リリースの際には、Cocos2D-x JSBを使ってハイブリッド化。
0953デフォルトの名無しさん
2016/02/07(日) 20:32:38.50ID:8pvMtac5robovmでiOS9,xcode7への対応と諸々が秋頃にあったので、それ以降に作者さんがメンテしてないか、対応出来なかったかのどちらかも。
0954デフォルトの名無しさん
2016/02/07(日) 20:34:13.83ID:8pvMtac50955デフォルトの名無しさん
2016/02/07(日) 20:43:24.24ID:8pvMtac5javafxportsの方は年初にメンテしてて動くようになってました。
https://bitbucket.org/javafxports/javafxmobile-plugin
https://bitbucket.org/javafxports/samples
https://bitbucket.org/javafxports/javafxmobile-plugin-ensemble
試した感じだとiosのアプリ証明書まわりの動きが、RoboVM直と違いちょっとおかしそうでしたが。
0956デフォルトの名無しさん
2016/02/07(日) 22:51:41.81ID:8pvMtac5試してないので、動くか分からないですが。
https://github.com/oakes/lein-fruit/commits/robovm-studio
11/19にコミットが有りますね。
https://github.com/oakes/lein-fruit/commit/1490e38649b5a71a92d1e924a2cf1a2b2beb0376
構成が変わっただけなら、これだけでいいのかな。
lein-fruit 0.2.4って書いてありますが、clojarsには0.2.3までしかあげてないので、
試すには、本家とはべつにローカルか別名のリポジトリ作成してやる必要がありますね。
0957デフォルトの名無しさん
2016/02/08(月) 15:20:13.39ID:fZyGkNbqJavaFXPorts追ってなかったので見てみましたが、iOS用にはRoboVMを使っているんですね。また、Clojureがそのまま動くのか気になるところです。
ちなみにですが、Clojure1.8のダイレクトリンキングによる起動時間とJARファイルサイズへの影響を手元のMac上で簡易的に調べてみたところ、Clojure 1.7.0 -> 1.8.0では、
・起動時間が約0.3s短縮
・JARファイルサイズが約230KB小さく
とかなので、モバイル端末実機でも効果を期待できそうです。
あと、Clojureと生libGDXで作られたというゲームをAndroidタブレットの実機で遊んでみましたが、
ダイレクトリンキング以前の状態でも、起動時間は許容範囲で、ロゴを表示することで、大して気にならない感じです。
また、その他ゲームプレイもClojureを一切感じず軽快でした。
ゲームが開発された当時は、libGDXとRoboVMの連携が無く、無料で簡単にiOS版をリリースする方法が無かったので、Android版だけのようです。
「Bounce Away」
https://play.google.com/store/apps/details?id=com.friendlyvillagers.ballz&hl=en
0958デフォルトの名無しさん
2016/02/19(金) 17:16:41.79ID:/EKT/6se・調べたところ結構方言が強いみたいだけどみんな違和感無いのかな?better lispになってるかな?
・Emacsでの編集は快適かな?
まだ使ってないからこの辺りが知りたいところだけど、手の空いた時にでも
教えてもらえると助かります。
0959デフォルトの名無しさん
2016/02/19(金) 21:29:40.96ID:0R2jEsLyemacs+ciderで幸せ
break pointはよ(昔はswank-clojureでできたのに)
0960デフォルトの名無しさん
2016/02/20(土) 15:11:04.21ID:NsOi1z3QClojureは良くも悪くも、より抽象化されたLispという印象かな。
State of Clojure 2015によると、Clojure界で一番人気あるのがEmacs+CIDER(約45%)で、次がIntelliJ+Cursive(約25%)。
どちらも業務に使えるし、快適ですね。
0961デフォルトの名無しさん
2016/02/20(土) 17:24:53.45ID:JX9OE3S7え?マジか、defaultのkeyboard bind何になってる?(キーバインド無し?)
swank-clojure -> ritz でお世話になった後ciderになってbreak関係無くなってションボリしてるんでどのバージョンから使えるかもプリーズ
updateとかの後に.elファイルまで読まないから全然気がつけてないんでマジでお願い。
0962デフォルトの名無しさん
2016/02/20(土) 20:08:32.16ID:SJ1YLAR4ciderかは忘れたけど、ns変えてやらないとブレークしないという話を聞いたことがある。
0963電波いっぱい
2016/02/20(土) 23:37:36.42ID:bGD6QKVkCommonLispが好きでずっと使ってたのにClojure鞍替えした者ですが、Clojureは全てのひとにとってのbetter lispではありません。見方によっては全く違う言語とも言えます。
ですが、LISPというのは懐の広い言語ですので、ClojureもLISPです。関数型に振られていて、javaの資産が使えて、活発なコミュニティーがあるというのが特徴かな。
僕にとってはまさにbetter lispだったので、メインの言語として使ってます。
0964デフォルトの名無しさん
2016/02/21(日) 01:08:40.47ID:/soU/W5Whttps://sites.google.com/site/clojurejapanesedocumentation/home/reference/lisps
http://www.geidai.ac.jp/~marui/clojure/rationale/
上の日本語訳は結構前かな。よく使われる機能は変わってる場合もある。
0965958
2016/02/22(月) 17:10:14.60ID:OQxBKkBP遅レスですまんが、みんなciderとか色々教えてくれてどうもありがとう
その辺りから色々調べてみると、意外と業務で使ってるところがあってびっくりした
JDK使ってるってのが大きいと思うけど、この時代にLispが選択されるというのも凄い事だ
0966デフォルトの名無しさん
2016/03/01(火) 13:00:53.78ID:Ni2JKZi60967デフォルトの名無しさん
2016/04/05(火) 22:03:06.43ID:8SgHWKfM救いと癒しが欲しいのでclojureを学ぼうと思います
よろしくお願いいたします
0968デフォルトの名無しさん
2016/04/07(木) 03:34:57.11ID:69hNyYMv新田恵海と高部あいでclojureというユニットはどうか?
0969デフォルトの名無しさん
2016/04/07(木) 23:26:24.63ID:TikNVi9d0970デフォルトの名無しさん
2016/04/10(日) 19:20:05.21ID:/2z8tz0e(def coll (range 100) )
(loop [x coll r [] ] (if (not= x nil) (recur (next x) (cons (first x) r) ) r))
としたときにxはシーケンスcollを走査しますが、
xが以前操作した任意の数n個のデータにアクセスしたいというとき
具体的には xが55を指しているときにそれ以前の54,53,52,51 ... 45 (ここではn=10とした)
にアクセスしたいのですが、エレガントな方法ってあるでしょうか。
自分が思いついた方法
1.partitionにシーケンスを食わせてからloopに突っ込む
しかしできればloop recur内で生成したい。
2.drop take を使ってcollをloop内で刻む
partitionを使わないとなるとこれしかないのかな
0971デフォルトの名無しさん
2016/04/11(月) 00:55:34.88ID:suuESVM3頭にnilがn個続くシーケンスをお供に連れて行くとか?
(into (range 5) (repeat 3 nil)) -> (nil,nil,nil,0,1,2,3,4)
0972デフォルトの名無しさん
2016/04/11(月) 02:01:38.74ID:+C690be2(let [operate (fn [idx target coll]
(if (= 55 target) (println "捜査" target "Hit!! 履歴も見るよ" (take 10 (reverse (take idx coll))))
(println "捜査" target)))
col-len (count coll)]
(loop [idx 0]
(when (> col-len idx)
(operate idx (nth coll idx) coll)
(recur (inc idx))
))
)
0973デフォルトの名無しさん
2016/04/13(水) 07:01:24.27ID:CWmrvo3nwebアプリ+サーバを作成するためのleiningenのテンプレートは
見つかるんですが、単純にnode.js上のスクリプトとして動作させる用の
leinigenの設定をしたテンプレートがmies-nodeくらいで
それも既にメンテされてないようです。
こういう用途で使えるテンプレートを知ってる方いますか?
0974デフォルトの名無しさん
2016/04/15(金) 01:18:05.19ID:OuJbyPufhttps://github.com/bhauman/lein-figwheel/wiki/Node.js-development-with-figwheel
aws lambda cljs
https://github.com/nervous-systems/cljs-lambda
GUI系は基本chromiumターゲットなので、ブラウザ向けに近い
electron向け(chromium+node)
https://github.com/karad/lein_template_descjop/
react native
https://github.com/dmotz/natal
0975デフォルトの名無しさん
2016/04/15(金) 01:21:20.28ID:OuJbyPuf0976デフォルトの名無しさん
2016/04/15(金) 01:40:05.59ID:OuJbyPufhttp://planck-repl.org
0977デフォルトの名無しさん
2016/04/15(金) 13:25:13.39ID:uVkdPs+4前にnodeを少しいじったんでclojurescriptだとどうなるかと思ったんだが…
しかし、clojure自体初心者の自分ではハマりそうなので暫くはJVM上だけにしようと思います。
とりあえずQuilが面白そうなのでやってみる。
0978デフォルトの名無しさん
2016/04/17(日) 01:21:05.74ID:0VKAWbkk0979デフォルトの名無しさん
2016/05/01(日) 12:05:06.37ID:tKi6j9CTBitTorrentがオープンソースで開発されています
言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?
Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al
ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw
The Covenant Project
概要
Covenantは、純粋P2Pのファイル共有ソフトです
目的
インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します
特徴
Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)
接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
6
0980デフォルトの名無しさん
2016/05/03(火) 21:11:02.59ID:K+NNsalidef projectに :jvm-opts ["-Xmx1G"]としてmemory size 1GBの制限をかけた後に
stackoverflowにある lazy-file-linesに12GBくらいのデータ食わせたら、マジで行数カウントしやがった。
夢が広がるな
0981デフォルトの名無しさん
2016/05/03(火) 21:50:12.09ID:x44Ry1He0982デフォルトの名無しさん
2016/05/03(火) 23:06:11.61ID:K+NNsali12GB中の6GBくらい読みだした時にとめたらどうなっちゃうんだろう?
0983デフォルトの名無しさん
2016/05/04(水) 11:12:58.21ID:D79M6+1dでそいつの行数はlonglongで足りたのか?
0984デフォルトの名無しさん
2016/05/04(水) 12:41:25.79ID:+he7G1JMhttps://youtu.be/VC_MTD68erY
上のやつは今年のclojure/westの発表なんだけど、ストリーム処理で遅延評価にならないようにするにはという話があった。
0985デフォルトの名無しさん
2016/05/04(水) 13:43:51.64ID:l0JwSRjwClojureならBigDecimalに移行するだけだと思うが?
0986デフォルトの名無しさん
2016/05/04(水) 13:47:11.50ID:l0JwSRjwあと12GBのテキストデータの行数がlonglong超える訳が無いと思うぞ。
0987デフォルトの名無しさん
2016/05/04(水) 22:24:06.08ID:6f0pONvwいろいろ参考になったわ
KafkaStreamはlazy sequenceじゃないのかな
あとその動画の指摘の通りlazy seqは確かに遅いわ
一個ずつ現実化して処理していくというのは特にFile I/OやNetwork I/Oに絡むと遅いんだろうな
partitionの使い方とか、asyncのonto-chanの使い道とかpriority mapを用いたアルゴリズムの改善とか濃厚なプレゼンだった
0988デフォルトの名無しさん
2016/11/28(月) 22:32:01.86ID:9f32phBy0989デフォルトの名無しさん
2016/11/29(火) 09:30:24.76ID:1gz1M+nghttps://github.com/mikera/core.matrix/wiki/Implementation-Guide
0990デフォルトの名無しさん
2016/12/18(日) 17:03:58.39ID:8F2gNr160991デフォルトの名無しさん
2016/12/26(月) 21:13:07.45ID:XJppqmkm0992デフォルトの名無しさん
2016/12/26(月) 21:15:52.87ID:aoxifvbm0993デフォルトの名無しさん
2016/12/26(月) 21:30:49.56ID:XJppqmkmTypeScriptたまに触ってると特に感じるわ。
だから対策としてスキーマバリデーションとかが欲しいわけではなくて、リアルタイムチェックや補完の方も欲しい。
あと (register-handler :keyword (fn ...)) 的なのも :keyword をtypoしたりしてムキーってなる。
0994デフォルトの名無しさん
2016/12/26(月) 21:44:39.57ID:aoxifvbm0995デフォルトの名無しさん
2016/12/27(火) 14:53:40.90ID:ov9/Tp6R0996デフォルトの名無しさん
2016/12/28(水) 12:12:28.60ID:0ISf0nRp既存のシンボルを集めておく仕組みはあまり聞いたことない気がする。
よく使う単語は補完してくれるので、それか定義してるところからのコピペで何とかしてる。
0997デフォルトの名無しさん
2017/01/04(水) 18:40:43.75ID:uHeuKaUg【Lisp】プログラミング言語 Clojure #4【JVM】
http://echo.2ch.net/test/read.cgi/tech/1483498849/
0998デフォルトの名無しさん
2017/01/04(水) 23:12:31.39ID:VMJ7nozd:よくやった
0999デフォルトの名無しさん
2017/01/04(水) 23:13:43.28ID:J+uePkPh1000デフォルトの名無しさん
2017/01/04(水) 23:14:06.89ID:hkcnZMZu【Lisp】プログラミング言語 Clojure #4【JVM】
http://echo.2ch.net/test/read.cgi/tech/1483498849/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
life time: 1194日 12時間 10分 39秒
10021002
Over 1000Thread運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
http://premium.2ch.net/
▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。