5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  
レス数が950を超えています。1000を超えると表示できなくなるよ。

【Lisp】プログラミング言語 Clojure #3【JVM】

1 :デフォルトの名無しさん:2013/09/28(土) 11:03:28.38
JVM上で動作するLisp方言「Clojure」のスレ。

Clojure - 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/

566 :デフォルトの名無しさん:2014/09/05(金) 11:16:58.89 ID:xDuN/XcD
httpサーバもあるぞ。

HTTP client/server for Clojure
http://http-kit.org/
Ring
https://github.com/ring-clojure/ring/blob/master/README.md
アクセス多い場合、ringをセルフホスティングしてることは、少ないと思うけど。

Clojure web server shoot-out
https://github.com/ptaoussanis/clojure-web-server-benchmarks/blob/master/README.md

567 :デフォルトの名無しさん:2014/09/05(金) 12:16:04.00 ID:u9vJFh8i
http-kitのコードは結構Javaで書いてあったりするしこういう逃げ道があるだけでも全然実用的では

568 :デフォルトの名無しさん:2014/09/06(土) 03:48:48.69 ID:wK8BCI9U
immutant2 alphaになったとこなんだな。
http://immutant.org/news/2014/08/27/announcing-2-alpha1/
去年ぐらいなら開発してたからもうリリース直前ぐらいかとおもってた。

569 :デフォルトの名無しさん:2014/09/06(土) 14:21:20.62 ID:wK8BCI9U
最近、clojure/clojurescriptではなく、haskell/elmみたいに、ホスト言語に合わせて再実装したというコンバータが出て来たらしい。
ライブラリ使い回すことが出来ないけど、こっちの方がシンプルで構文もシンプルで書きやすいんだよな。
js https://github.com/Gozala/wisp
llvm https://github.com/artagnon/rhine

570 :デフォルトの名無しさん:2014/09/08(月) 01:59:23.82 ID:CIBCo0oi
core.asyncとchannelがイマイチしっくりこない
分かりやすいチュートリアルとかあったら教えてください

571 :デフォルトの名無しさん:2014/09/08(月) 22:59:20.37 ID:AyVNnGAs
なぜアクターモデルをデフォルトにしなかったのか…

572 :デフォルトの名無しさん:2014/09/09(火) 12:15:28.91 ID:JCwcwuFZ
>>571
schemeとは別の考え方で作られてるからってのはリッチがどこかで書いてたけど。

573 :デフォルトの名無しさん:2014/09/10(水) 19:13:51.07 ID:U1JgMN8O
参考にした、goのchannelの解説
http://jxck.hatenablog.com/entry/20130414/1365960707
core.asyncの解説
http://qiita.com/mizchi/items/55386689d19a67baa62d

ただ、オフィシャルが一番詳しいような気が。ここからたどってるかな?
https://github.com/clojure/core.async/blob/master/README.md
http://clojure.com/blog/2013/06/28/clojure-core-async-channels.html

574 :デフォルトの名無しさん:2014/09/11(木) 21:43:46.32 ID:DgIouG2i
lispの資産を移行しながら勉強しようと思ったら、ドット対がなくていきなり挫折しかけてる状態
パターンマッチングプログラム作るときに不便すぎる

575 :デフォルトの名無しさん:2014/09/12(金) 05:12:50.76 ID:Ypjnf85z
え?ドット対がないの?
あらら
じゃあ(cdr l)を(cadr l)に書き換えなきゃね

576 :デフォルトの名無しさん:2014/09/12(金) 09:05:08.51 ID:WTGM0q3b
clojureつかjavax.swingを完全なemacsバインドにするのって凄いめんどくさいのね。

577 :デフォルトの名無しさん:2014/09/12(金) 22:04:25.78 ID:XcTB9vyQ
cdr もないじゃないか

578 :デフォルトの名無しさん:2014/09/12(金) 22:17:52.66 ID:F2dOTuLl
car,cdrって悪しき慣習だったからばっさり切ってくれてよかった。

579 :デフォルトの名無しさん:2014/09/12(金) 23:14:06.10 ID:XcTB9vyQ
cons で非リストを対にしたいんですが、どうしたらよいでしょうか

cons 1 '(2) はできる
cons 1 2 はできない

580 :デフォルトの名無しさん:2014/09/13(土) 00:18:36.47 ID:dIuOMN4p
consが返すのはリストじゃなくてシーケンス
まずはリストとシーケンスの違いを勉強しておいで

581 :デフォルトの名無しさん:2014/09/13(土) 00:24:34.54 ID:0gDmFCxq
リストやシーケンスじゃなくて、対が欲しいのですが、どうすればよいでしょうか

代用するのはよいですが、できるだけ一般的に行われている方法を知りたいです

582 :デフォルトの名無しさん:2014/09/13(土) 00:48:12.18 ID:Z1UHFJSo
一般的も何もclojureに対がないような

583 :デフォルトの名無しさん:2014/09/13(土) 00:50:08.35 ID:pQ1fvgTL
>>581
(defn pair [ f s ] [ f s])
(let [p (pair 1 2)]
(println (first p))
(println (second p)))
じゃ駄目なの?

584 :デフォルトの名無しさん:2014/09/13(土) 01:06:48.06 ID:0gDmFCxq
>>583
(pair 1 2) が()やnilから構成されるリストやベクタではなく、 (pair 1 ()) が '(1) と同値になるような pair が欲しいです
lisp の . や、 prologの | みたいな演算子です

ゆにふぃケーションのプログラムを作っていて、
(1 2 3 4) を (pair x y) にマッチさせたときに、(y . ()) と (2 . (3 . (4 . ())) ではなく、 y と (2 . (3 . (4 . ())) 全部をマッチさせたいのですが、
()から構成したときだけリストと同値になる対やタプルがないとかなり面倒なことになりそうです

585 :デフォルトの名無しさん:2014/09/13(土) 02:27:41.87 ID:dIuOMN4p
>>584
シーケンスでそういう構造つくればいいだろ
ドット対がどんな構造してるか理解してれば簡単だろ?

586 :デフォルトの名無しさん:2014/09/13(土) 04:08:37.23 ID:P+Ln4dUo
最終的に作りたいのがprologのコンビネータだとすると、新しいconsシークエンスは作れてもそれをリストのように使えるようにするのはむつかしい

lispをそのまま移行するわけにはいかぬ

587 :デフォルトの名無しさん:2014/09/13(土) 04:20:45.69 ID:dIuOMN4p
consモドキ構造とリストを相互変換できるようにしとけばいいだろ

588 :デフォルトの名無しさん:2014/09/13(土) 09:11:59.83 ID:0gDmFCxq
すみません

(defn a [n]
(if(<= n 0) 0 (b (- n 1))))

(defn b [n]
(if (<= n 0) 0 (+ (a n) 1)))

これ↑を test.clj に書いて (load "./test") や (load-file "./test.clj") を実行すると エラーになります
b の位置を入れ替えて保存したあとにもう一回ロードするとエラーは消えます
2回目以降は、replを再起動するまではエラーはでません

replを起動するたびにこれをやると面倒なのですが、みなさんはどうしてるのでしょうか

589 :デフォルトの名無しさん:2014/09/13(土) 09:20:01.97 ID:qNZ9pwOr
>>588
http://clojuredocs.org/clojure_core/clojure.core/declare

590 :デフォルトの名無しさん:2014/09/13(土) 14:40:50.48 ID:dIuOMN4p
>>588
プログラミングClojureを読んだほうがいいぞ
Lispやってた人がそのまま突き進むといろいろ嵌る

591 :デフォルトの名無しさん:2014/09/13(土) 15:34:43.87 ID:PBJgHhTk
翻訳してるのGaucheの人だしCLとかSchemeから移ってくる人には向いてるかも

592 :デフォルトの名無しさん:2014/09/13(土) 17:10:16.96 ID:0gDmFCxq
やっぱり見づらいです

(def db7
(list
(list (mlist "append" NIL "Ys" "Ys"))
(list (mlist "append" (mcons "X" "Xs") "Ys" (mcons "X" "Zs"))
(mlist "append" "Xs" "Ys" "Zs"))))
(def q7 (list (mlist "append" "X" "Y" (range 1 7))))

user=> (prolog-test q7 db7)
((append.(X.(Y.((1.(2.(3.(4.(5.(6.mNIL)))))).mNIL)))))
#{X Y}
ans: ({X mNIL} {Y (1.(2.(3.(4.(5.(6.mNIL))))))})
ans: ({X (1.mNIL)} {Y (2.(3.(4.(5.(6.mNIL)))))})
ans: ({X (1.(2.mNIL))} {Y (3.(4.(5.(6.mNIL))))})
ans: ({X (1.(2.(3.mNIL)))} {Y (4.(5.(6.mNIL)))})
ans: ({X (1.(2.(3.(4.mNIL))))} {Y (5.(6.mNIL))})
ans: ({X (1.(2.(3.(4.(5.mNIL)))))} {Y (6.mNIL)})
ans: ({X (1.(2.(3.(4.(5.(6.mNIL))))))} {Y mNIL})
"end"

593 :デフォルトの名無しさん:2014/09/14(日) 01:38:30.64 ID:j2m0rNSv
leiningen 使ってて、本番用のjar作りたいときに、設定ファイルとかを本番用に置き換えたりするには、それようのシェルを書かないとダメかな?
それかant使うとか。
基本、leiningenってビルドスクリプト書くようにはできていないよね?

594 :デフォルトの名無しさん:2014/09/14(日) 04:14:34.70 ID:7RRZzfTf
leinコマンドで、profiles切り替えることは出来るので、runやuberjarのときに切り替えも出来る。
https://github.com/technomancy/leiningen/blob/master/doc/PROFILES.md
https://github.com/technomancy/leiningen/blob/master/sample.project.clj

lein以外だと、普通に環境変数やアプリ側の起動オプションとワーキングディレクトリなどの設定ファイルと組み合わせて切り替える。

595 :デフォルトの名無しさん:2014/09/15(月) 11:16:52.24 ID:X07CHSCX
Clojure版SICP成功しますように

596 :デフォルトの名無しさん:2014/09/15(月) 12:37:29.90 ID:js3EBI3k
>>595
Richは否定的じゃなかった?
SICPはプログラミングの概念を学ぶものだからSchemeみたいなプリミティブな言語使うのが適してるとか言っていたような?

リンク探したけど見つからなかったのでうろ覚えなんだけど

597 :デフォルトの名無しさん:2014/09/15(月) 13:47:32.68 ID:SJHXukYy
Clojureの学習でSICPは使えるかと問われ、Rich曰く、
http://d.hatena.ne.jp/katzchang/20120211/p1

598 :デフォルトの名無しさん:2014/09/15(月) 16:27:18.84 ID:3RJRJIrt
僕は、SICPはプログラミング言語の本じゃなくて、あれはプログラミングの本なんだと思ってる。
本の中でSchemeを使っているのは、アトミックなプログラミング言語だからなんだ。
ラムダ計算、末尾再帰、継続を使った抽象制御、抽象構文(マクロ)、可変状態など。軽量で、かつ十分だ。

599 :デフォルトの名無しさん:2014/09/15(月) 18:40:34.22 ID:upNhnkM6
>>595
ドット対がないんだけど、どうすんだろうか

600 :デフォルトの名無しさん:2014/09/15(月) 19:24:23.43 ID:6zICEfBP
キャー!
ないの?
キャ!

601 :デフォルトの名無しさん:2014/09/16(火) 17:12:21.85 ID:V1Xx4jW9
doted pairsがないとかcar,cdrがないとかClojureってcellsが基本じゃないの?

エヘヘ
セルがいなけりゃ天津飯でも最強になれるぜ

リストぉーふぁーっく

602 :デフォルトの名無しさん:2014/09/16(火) 23:53:55.83 ID:9F6k5Qvl
http://gpsoft.dip.jp/hiki/?Common+Lisp%2C+Scheme%2C+Gauche%2C+Clojure%A4%F2%CA%D9%B6%AF%A4%B9%A4%EB%C1%B0%A4%CB
> ちなみにClojureは、セルやドット対という概念を捨てています。
> Clojureにもcons関数はありますが、第2引数にアトムを指定することはできません。

603 :デフォルトの名無しさん:2014/09/17(水) 00:10:06.01 ID:9D0rV1mM
基本データ型として用意されてないので、自分でデータ構造を定義して使う。

604 :デフォルトの名無しさん:2014/09/17(水) 04:30:42.06 ID:vt1vk8t3
女ができて
Lispに興味があると言うから
winタブに入っていたrepl.scmをみせた。
式の評価関数は
(eval-sexp sexp table)
すると
「変態!」
と言われて立ち去られてしまった
な、なんでたぁ!!

605 :デフォルトの名無しさん:2014/09/17(水) 10:18:41.39 ID:aYkhXuVZ
そりゃあれだwindows使ってたからだろ

606 :デフォルトの名無しさん:2014/09/17(水) 20:39:01.01 ID:j6eDcU3v
leiningen 2.5.0 / 2014-09-14
https://github.com/technomancy/leiningen/blob/master/NEWS.md

- Fix a bug where repls outside of a project were broken. (Phil Hagelberg)
となってるが、ちゃんと治ったのかな?

607 :デフォルトの名無しさん:2014/09/17(水) 23:12:39.67 ID:ry1QXF9R
新しいwebスタックなのかな?
caribou
http://caribou.github.io/caribou/docs/outline.html

608 :デフォルトの名無しさん:2014/09/18(木) 14:22:15.28 ID:zEr3CNRT
>>606
Ubuntu14.04x86でlein upgradeして試したら直ってた

609 :デフォルトの名無しさん:2014/09/22(月) 17:11:34.59 ID:LvPIFofq
クロージャーは苦労じゃと思ったことはないの?

610 :デフォルトの名無しさん:2014/09/22(月) 17:12:13.46 ID:xorcTHrm
go clojure tar

611 :デフォルトの名無しさん:2014/09/22(月) 17:40:13.84 ID:vIHnf5mS
ドット対ないの、困らないのる

612 :デフォルトの名無しさん:2014/09/22(月) 18:09:57.08 ID:S+g0REzG
のらない

613 :デフォルトの名無しさん:2014/09/22(月) 21:18:23.52 ID:vh/Af1aB
ドット対がないと過去のlisp資産を使えないので困る

614 :デフォルトの名無しさん:2014/09/22(月) 21:20:36.50 ID:c1ePS+PE
>>613
その代わりJavaの資産を使えますしおすし。

615 :デフォルトの名無しさん:2014/09/22(月) 21:24:54.18 ID:vh/Af1aB
java APIは、資産か負債か…

616 :デフォルトの名無しさん:2014/09/22(月) 21:30:18.38 ID:c1ePS+PE
Mavenのセントラルリポジトリから色々引っ張ってこれるから
超便利なんだけど…

617 :デフォルトの名無しさん:2014/09/22(月) 22:25:55.59 ID:yriWFnZx
lein ring uberwarしてできたwarファイルをTomcatに渡すだけでマジで動くのこれ?
だとしたら便利過ぎる

618 :デフォルトの名無しさん:2014/09/22(月) 23:37:24.00 ID:nvfImWev
Tomcatなんてダサいものに入れる必要ないぜ
lein uberjar して java -jar すれば組み込みのJettyが動く。
マジで楽。

619 :デフォルトの名無しさん:2014/09/24(水) 15:15:31.48 ID:GXSMA3Ap
Clojure+Luminus+HTTP Kit+H2で2ちゃんねる専用ブラウザを作ってみたよ〜
http://meriken.me/programming/merikens-2ch-browser

620 :デフォルトの名無しさん:2014/09/24(水) 15:52:47.85 ID:ToswTk7I
>>619
良くできてるねー
でもp2とかが保存した古いdatの受け口とかないのかな?
あれば移行できるんだけど。

621 :デフォルトの名無しさん:2014/09/24(水) 16:31:22.41 ID:GXSMA3Ap
>>620
ありがとうございます〜
自分も長い間rep2や公式p2を使っていたので、
datのインポート機能は付ける予定です。

622 :デフォルトの名無しさん:2014/09/24(水) 16:49:12.13 ID:ToswTk7I
>>621
h2sqlにdat入れてるみたいだからここを他のDB使えたり、過去datのmigrationツール呼び出しオプションとか有ると凄いうれしいです。
自分もclojureで同じような物作ろうとしたけどjsとcssのデザインが死ねるのであきらめたから、UIがこれだけ良くできてる所みるととっても有り難いです。

githubで公開とかあるともっとうれしいけど、binaryでも過去datのimportができれば全然問題ないレベルというか出来過ぎな感じで凄いわ

注文があるとするとお気に入りスレとスレの殿堂みたいにスレ終了後のdatの価値付けがあるといいなぁ(p2の機能ね)

623 :デフォルトの名無しさん:2014/09/24(水) 17:59:04.72 ID:GXSMA3Ap
>>622
もともとHerokuで動かすつもりだったので、PostgreSQLには
対応する予定です。他のDBもぜひ試してみたいですね。
ほかの機能もいずれ実装する予定です。オプソにするかどうかは
新datの仕様次第ですね。

GUIは昔から興味がある分野なので頑張ってますw
HiccupのインラインJavaScriptを多用したかなりアクロバティックな
実装になってます。

後このスレ的にはJettyの代わりにHTTP Kitを使ってるのが目新しいかも。
入れ替えの手間はほとんどかからない上にJettyよりだいぶ速くて
WebSocketにも対応していて、いいことづくめですw

624 :デフォルトの名無しさん:2014/09/24(水) 18:18:27.60 ID:ToswTk7I
>>623
ソシャゲサーバ作ってるのでhttp-kitのwebsocketは次に使う予定だったりします。
でもコネクション維持できない時あるんでそれが凄い困る>>モバイルプラットフォーム

頑張ってくださいね。

625 :デフォルトの名無しさん:2014/09/24(水) 19:17:25.65 ID:Dut+zixn
>>619
sync2chに対応頼む

626 :デフォルトの名無しさん:2014/09/24(水) 22:07:42.87 ID:2iRKCzum
lispでCUIの2chブラウザ作ったことがあるから、移行できると思ったらドット対がなくて挫折した

627 :デフォルトの名無しさん:2014/09/24(水) 22:11:10.76 ID:GXSMA3Ap
>>624
いいな〜 自分もClojureでもうちょっと規模の大きな開発をしてみたい…
ブラウザのほうはどんどん機能追加してるのでご期待くださいw

>>625
検討しておきます〜

628 :デフォルトの名無しさん:2014/09/25(木) 07:39:25.76 ID:wVXUgZuI
もう移行しなきゃいいじゃん?

629 :デフォルトの名無しさん:2014/10/03(金) 10:07:36.28 ID:AV4e/r+l
>>619
SCでやれよメリカス

630 :デフォルトの名無しさん:2014/10/22(水) 20:01:01.38 ID:RSMFJF8J
Clojure for Machine Learning買った人いる?

631 :デフォルトの名無しさん:2014/10/22(水) 23:44:13.64 ID:S/sAWAlU
>>630
ググったら、pdfが出てきて、292ページ全部タウンロードできたけど、今ってpdfで配ったモノをわざわざ売るのが流行ってるの?

632 :デフォルトの名無しさん:2014/10/23(木) 11:59:25.51 ID:wLG3e8D1
Clojure Gazzetに掲載されてたUnity3Dでclojure動かすarcadia使ってみたんだが楽しすぎ

633 :デフォルトの名無しさん:2014/10/24(金) 18:34:16.95 ID:KWBJpjnv
RHの記事読んでみてもreducersとtransducersがいまいち分からん
他のTutorial見たらidenty function(恒等関数?)とかmonoidとか出てくるしLYHGG
でも読めばいいの?

634 :デフォルトの名無しさん:2014/10/28(火) 22:01:28.31 ID:KaOPym4X
http://clojure.org/transducers
;; reducing function signature
whatever, input -> whatever
;; transducer signature
(whatever, input -> whatever) -> (whatever, input -> whatever)

transducer は、reducing functionを受け取ってreducing functionを返す関数みたいになってる。

635 :デフォルトの名無しさん:2014/10/28(火) 22:10:14.90 ID:KaOPym4X
transducerをjsで一歩ずつ実装しなおしていくような説明
http://simplectic.com/blog/2014/transducers-explained-1/

636 :デフォルトの名無しさん:2014/11/07(金) 17:02:58.08 ID:5EqfDet1
Reducers が2つもリクエストされてて草
http://board.postd.cc

637 :デフォルトの名無しさん:2014/11/15(土) 08:35:48.88 ID:mZUmkatx
正直なんかもう java やってる気になってきて嫌。

638 :デフォルトの名無しさん:2014/11/17(月) 02:14:05.02 ID:voT4yCE4
Sublime2使ってるが、フリーズしすぎで萎える。IntelliJに移行しようか迷い中。
もしかしたらST3は良くなっているのかも知れないが、
なんか開発体制が不安なのでいずれにしろ乗り換えたい。

LightTableを使ったことが無いんだけど、ガチの開発に使える感じ?
まあ、ガチとは言ってもREPLとユニットテスト起動とgitインテグレーションが
あればいんだが。

639 :デフォルトの名無しさん:2014/11/17(月) 12:56:40.65 ID:2tB4PbkN
LightTableはClojureScriptのREPLが気に入った。
っていうかAustinが辛い。

640 :デフォルトの名無しさん:2014/11/17(月) 19:02:37.86 ID:3AQSc2Ji
>>638
プラグインが悪いんじゃないの?
Sublime2も3も使ってるがフリーズなんてしたことない。

641 :デフォルトの名無しさん:2014/11/26(水) 00:03:48.99 ID:m9BztBqp
LightTableを0.7にアップデートしたらカッコの自動補完してくれなくなっちゃいました。
instareplで「(」 をいれたら自動的に 「)」を入力してくれるようにしたいのですが、、

642 :デフォルトの名無しさん:2014/11/26(水) 22:58:24.83 ID:GzULXsET
あれなくなったんだ
嬉しいニュースだ

643 :デフォルトの名無しさん:2014/11/26(水) 23:03:55.63 ID:nE3c6lv0
自動補完に戻して欲しい

644 :デフォルトの名無しさん:2014/11/26(水) 23:33:01.89 ID:4lQx9FOX
>>641
##0.7.0
* CHANGED: parens are not auto-closed by default anymore, add `[:app :lt.objs.settings/pair-keymap-diffs]` to your behaviors to get it back.
↑これでデフォルトじゃ閉じなくなって
##0.7.1
* FIX: Give the auto-close keymap behavior a description: `Editor: auto-close parens/brackets/quotes/pairs`
0.7.1でなおってるみたいだけど↑これじゃね?

645 :デフォルトの名無しさん:2014/11/27(木) 21:59:05.42 ID:64DHkpfs
よく見たら僕のは0.7.2になってる。
0.7.1で治ってるの?0.7.2で元に戻った??

646 :デフォルトの名無しさん:2014/11/27(木) 22:02:38.92 ID:GjQr/RAb
>>645
うちのは0.7.0飛ばしちゃってた後に0.7.2入れたけど括弧入力の補完効いてるから0.7.0入れたときにpreference設定書き換わってないか見てみたら?

647 ::2014/12/01(月) 18:25:36.09 ID:tHxJROnc
clojureを勉強していくためにslimeってやつを使いたいのだが、環境をつくるのがうまくいかない。lispって詩的だと思ったから勉強しようと思っています。初心者。

648 :デフォルトの名無しさん:2014/12/01(月) 18:36:47.86 ID:PC2xNpWA
LightTableおすすめ

649 ::2014/12/01(月) 21:30:21.30 ID:tHxJROnc
LightTableってやつダウンロードしてみた、、

650 :デフォルトの名無しさん:2014/12/02(火) 00:08:50.33 ID:b5XysgAA
メモ帳 & コマンドプロンプト
マジオススメ

651 :デフォルトの名無しさん:2014/12/02(火) 00:45:27.92 ID:S/rHt4Vl
>>647
swingreplのstandalone jarを作って、こいつの上で色々遊んでみるといい
https://github.com/alandipert/clj-swingrepl

652 ::2014/12/02(火) 07:47:56.28 ID:OOetDlpf
>>651
あ、ありがとうございます。
自分、初心者すぎて、遊べる段階まで行くやり方がわからない、、。
でも、とりあえず、LightTableで
「Instarepl: open a clojure instarepl」って
コマンドを選択したらclojure試せるみたいなので、それでやってみます。

653 :デフォルトの名無しさん:2014/12/02(火) 10:48:50.29 ID:/Zko0w7N
>>652
emacsでslime系試したいなら
clojure cider で検索すると良いよ、emacs24の導入からcider入れるまで解説とか結構あるし(slime clojureとかritzは導入辛いからくじけやすい)

LTの方がモダンだけどreplの使い勝手はemacs系の方が良い感じ。

654 ::2014/12/02(火) 16:51:25.82 ID:l88HCvSs
>>653
ありがとうございます。
少し検索してみました。
http://mizondev.net/d/20131108のページに、
emacsのpackage.elというのを使ってやってみようとして
M-x package-install ciderと打ち込んだら、
no machと出てきてできなかった。
M-x package-ilist-packagesで
リストみることができるみたいだから、
見てみたら、ciderというのがなかったです
やっぱり、TLかなあ、

655 :電波いっぱい:2014/12/02(火) 18:22:53.48 ID:mRxW3cCO
>>654
パッケージのリボジトリにmarmaladeを追加しないとでてこないよ。

melpaの方はsnapshotが入っているからはじめは使いにくいかも。

リボジトリの追加のしかたはくぐってください。

656 ::2014/12/02(火) 21:53:42.09 ID:es1g8IZo
>>655
うーん、うまくいかない、ちょっとくやしいです、
多分、
(require 'package)
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/"))
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)
というのを~/.emacs.d/initsというところに書き込めばいいんだとおもう。
~/ってどういう意味なんだろう、
自分はMacのターミナルを使っているんですが、
そこで、emacs .emacs.d/initsとうって、
そこに上のやつを書き込んだのだけれど、
それでは、うまくいかない、、

657 :デフォルトの名無しさん:2014/12/02(火) 22:23:35.39 ID:C370zj97
"~/" ってのはユーザのホームディレクトリ。

(expand-file-name "~/")

を *scratch* バッファなんかで eval すれば絶対パスを返してくれる。

それと、 ~/.emacs.d/inits ではなくて ~/.emacs.d/init.el だと思う。だから、

$ emacs ~/.emacs.d/init.el

とすればいいはず。

658 :デフォルトの名無しさん:2014/12/02(火) 22:23:36.88 ID:/Zko0w7N
>>656
~/はターミナル開いたときのhomeディレクトリ
普通だと
/Users/<あなたのアカウント名/

659 ::2014/12/02(火) 23:34:45.34 ID:es1g8IZo
>>657>>658
教えてくれてありがとうございます、、
たすかります。

えーと、$ emacs ~/.emacs.d/init.elとうって、
そこに
(require 'package)
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/"))
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)
を貼付けてみました。
そしてM-x package-install sider
としてみたのですが、やっぱりうまくいかない
siderは諦めたほうがいいっぽい、、

common lispもやりたいなとおもっています、
clojureとくらべて、どうですかね、、

660 :デフォルトの名無しさん:2014/12/02(火) 23:54:23.65 ID:C370zj97
>>659
sider じゃなくて cider だよ!w

661 :デフォルトの名無しさん:2014/12/03(水) 02:09:24.44 ID:p19oFRz6
>>659
その状態でpackage-list-packagesするとcider-0.x.xってのがlistに出るよ

662 :電波いっぱい:2014/12/03(水) 14:12:04.41 ID:xmz4UdFc
>>659
>>661
init.elを作っただけだと読んでないから読み込ませる。emacsを再起動するのが楽。

また、その設定だとmelpaのが出ちゃうから、melpaは入れない方がいいと思う。marmaladeだけ。

663 :電波いっぱい:2014/12/03(水) 14:28:44.52 ID:xmz4UdFc
>>659
CLはマルチパラダイムだから、ほんとに何でも作れるし、どのようにでもかける。
でも、新しめの日本語の情報が少ないし、何でも「簡単に」できる訳ではない。

Clojureは、かなり関数型に振っていて、「Clojureならこう書く」みたいなものがあるので、本を一通り読んで理解すれば、Webアプリとか使えるものを作れるようになるのは早い。
裏にJavaがあるので、日本語の情報を含むそれらを、利用できるのも大きい。

664 ::2014/12/03(水) 19:57:13.95 ID:lWmi25JI
>>660>>661>>662
おー、それが、何度試してみても、できないです、、
siderじゃなくciderでやっても、
package-list-packagesでリストを探してみても、できない。

$ emacs ~/.emacs.d/init.elで
(require 'package)
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/"))
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)
を書き込んでも、それを消しても
package-list-packagesのリストが変わらないです。
多分、書き込んだとき増えてなければおかしいのに。
(require 'package)
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packa\
ges/"))
(package-initialize)
にしてみてもできなかったです、

おそらく、このコンピュータは、自分が狂っていないと信じ込んでいる精神病の患者みたいなコンピュータなんだろう、、
だからciderをやろうとする気持ちは三階の病棟に閉じ込めておいたほうがいいかも。
三階は二階の患者より酷い人が入るところ。

もちろん、そう診断する自分はヤブ医者なんですが、コンピュータを診断する医者としては。外科医としても。そもそも自分はどんな種類の医者でもない。
自分自身の精神科医ですらないとおもう。そんなに上手く精神的に生きている気がしない、、余計なことを書いてしまった。読書します、、

665 :デフォルトの名無しさん:2014/12/03(水) 20:06:41.76 ID:K+BrSv2h
lighttableでreadって使えないのん?

666 :デフォルトの名無しさん:2014/12/03(水) 20:21:41.04 ID:p19oFRz6
うちだとこんなんだな
(require 'package)
(add-to-list 'package-archives
'("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)
(when (not package-archive-contents)
(package-refresh-contents))

263 KB
新着レスの表示

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :


read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)