1read 100read
2011年10月1期プログラム【関数】Erlang Part 2【エリクソン】 TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
【Scheme】Schemeインタプリタ Mosh Part1【Lisp】
【誰か】jQueryのここがわからない 2【助けて】
Windows Azure プログラミング 総合スレ
【DI】Java Spring Frameworkを語るスレ 5.0


【関数】Erlang Part 2【エリクソン】


1 :10/07/20 〜 最終レス :11/12/13
■前スレ
【関数】Erlang【エリクソン】
ttp://pc12.2ch.net/test/read.cgi/tech/1176479959/
■関連URL
ttp://www.erlang.org/
ttp://www.erlang.org/download/erlang-book-part1.pdf
ttp://ja.wikipedia.org/wiki/Erlang
ttp://www.planeterlang.org/
ttp://cean.process-one.net/
ttp://www32.atwiki.jp/erlang/
ttp://jijixi.azito.com/cgi-bin/diary/index.rb?category=Erlang
ttp://www.kmonos.net/alang/etc/erlang.php
ttp://quasiquote.org/log2/Erlang
ttp://www.youtube.com/watch?v=uKfKtXYLG78
ttp://video.google.com/videoplay?docid=-5830318882717959520
ttp://erlide.sourceforge.net/
ttp://rucila.s43.xrea.com/memo/?date=0304

2 :
■書籍
Erlangプログラミング
ttp://www.oreilly.co.jp/books/9784873114651/

3 :
なんだよもうErlang下火だから翻訳版でないだろうと思って原書買っちゃったよ・・・
いちおつ

4 :
そんなことよりCouchDB: The Definitive Guideの表紙の犬が愛らしくてしょうがないんだが
あ、>>1

5 :
愛らしいといえばこれだな
ttp://ec2.images-amazon.com/images/I/41JJZCux%2BNL._SL500_AA300_.jpg
>>1

6 :
即死しそうだなw

7 :
前スレはこれだな。
【関数】Erlang Part2【エリクソン】
http://pc12.2ch.net/test/read.cgi/tech/1270087367/l50

8 :
それは前スレというか…今スレの出来損ないというか…

9 :
これって、HaskellのGHCみたいに強力なコンパイラが出現すればもっと流行るんだろうか…

10 :
保守

11 :
もうすぐ前スレに並ぶ。

12 :
>>2買ってきたら煽り文に、「マルチコアの最適な利用という観点での注目度も高く」とあったけど、どうなん?
あまり聞かない気が。。。。

13 :
昨日、O'Reillyのerlang本がついに発売になりました。
これで普及に弾みがつくか?

14 :
3章途中まで読んだけど、なんか誤植が多い。。。

15 :
ブルーインパルス本よりいいの?

16 :
秋葉のヨド売り切れてた

17 :
ちょっと読んだけど、haskell本に比べたら、全然
関数型言語に関する記述は少ないな。
実用的かも

18 :
C,C++でスレッドを使えない情弱用言語ってことでFA?

19 :
イミフ

20 :
>>18
そうだよ

21 :
Erlangは唯一のオブジェクト指向言語かもしれない@Joe Armstrong
http://www.infoq.com/jp/news/2010/07/objects-smalltalk-erlang

22 :
変な日本語だな。

23 :
エリ糞ン

24 :
Erlangの無名関数定義で
F = fun(X) -> fun(X-1).
みたいな記述は出来ないの?出来損ないでさーせん

25 :
>>24
再帰っていってくれよ

26 :
Erlangプログラミング P140、5.4.2節イベントハンドラのコード例で、
pad([M1]) -> [$0,M1];
なる一文が入っているけれど、$0はなんで必要なの?

27 :
>>24
つ Yコンビネータ

28 :
>>26
Erlangを忘れ果てた漏れが嫌がらせで答えると
文字列が1文字だけだった場合にゼロパディングして2文字にしてるんだよ
たとえば 18:45:8 を 18:45:08 にするとか

29 :
>>28
Thx.
実際試してみてゼロ埋めらしいとは分かったけど、どんな書式文法か?でした。
月・日は挙げてもらった通りだけど、年は最初から"2010"だから何も起こらない。
変数を1文字しかないと仮定して、$0を変数に添える事を+1文字分確保すると考えるのでしょうかね。

30 :
>>29
Erlangの文字列と関数のパターンマッOがどんなものかは理解してる?
飛ばし読みしてるんなら読み直したほうがいいと思う

31 :
飛ばし読んではいないけど(忘れているのかもしれない)、そういう問題なんですか?
io:formatがどう表示してくれるかの問題だと思っていたのですが

32 :
あ、もしかして、[M1]だから1文字しかない場合のみ$0が付きますよ、って話ですか?

33 :
windowsの実行ファイル作れるようになりましたか?

34 :
いつも実行ファイルにこだわってる人いるけど、この言語でWindows上で動いてもうれしくなくない?

35 :
このスレッドは天才pンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
                  京都大学霊長類研究

36 :
>>34
いや、うれしいよ。
バグでプロセスがダウンすることを前提にした言語って他に無いからね。
こんなに安全にプロセスが扱える言語って他にある?
逆に嬉しくないと思う理由が知りたい。

37 :
exeファイルにしたい理由:
1. ワンファイルアプリ最高
2. windowsの慣習的にexeファイルがないと、erlangに詳しくない人は実行方法がすぐにわからない。
また、バッチファイルだとコマンドラインの印象があって、詳しくない人は不安を感じる。
3. インストールを前提とする以外の実行方法を提供する自由が欲しい

38 :
>>37
ShllExecute叩くexe作るだけでいいんじゃないの。
Erlang側で準備する必要があるものとは正直思えない。

39 :
>>38
糞でかいerlang処理系まるごと添付するのか?w
ダッサイなぁ

40 :
(ネイティブ)exeにしたい理由もう一個追加
4. 起動を早くしたいから

41 :
>>40
ガイキチは放置の原則を忘れていたよ。
一通り暴れたらヨソ行ってくれ。

42 :
そこまでいけるって思うなら自分で実装してみてはどうだろうか?
Rubyとかの他の言語でもあったよね。そういうの。Exerbか。
ある程度動くところまでやれば未踏で1年分の金くれるかもよ。
あとWindowsの場合、プロセスじゃなくてスレッドでどうこうしたほうがパフォーマンス出ると思うんだよ。
Chromeぐらいじゃないか?普通はスレッドであるべきところを意識的にプロセスにしたアプリケーションは。

43 :
>>42
erlangのプロセスはOSのプロセスではなくてグリーンスレッドだよ。

44 :
>>33 はい では言いだしっぺの法則で サンプルよろしく♪

45 :
まちがえた
>>42 はい では言いだしっぺの法則で サンプルよろしく♪

46 :
言いだしっぺの法則の趣旨を考えてから二度氏ね

47 :
>>46
やりたくないことを人に押し付ける方便です

48 :
>>36
そんなに安全な言語をWindowsで動かしてもしょうがないからでしょ

49 :
>>48
安全だから気楽にプログラミングできるんじゃないか。

50 :
安全な言語を活かすなら土台も堅牢でないと
土台がやわなら安全な言語も猫に小判、豚に真珠

51 :
>>50
それを言うなら砂上の楼閣でしょう。
猫に小判と豚に真珠は、本人が価値を理解できないというたとえです。

52 :
>>50
LinuxもMacもWindowsも堅牢性は大して変わらん。
微々たる差だよ。
それにCでやろうがJavaでやろうがErlangでやろうがエラー対策はちゃんとやるでしょうが。

53 :
>>52
じゃあLinuxやMac使えばいいじゃん
Exeなんぞいらんぞ

54 :
>>53
そりゃそうだがインストールベースの大きさを無視するのはよろしくないんじゃないか?

55 :
サーバの運用環境ならWindowsのインストールベースなど無視しておk

56 :
>>37の理由なんてサーバサイドじゃ意味ないよな
やっぱEXEなんぞいらん

57 :
>>56
サーバ以外の用途もあるでしょうが。

58 :
ないも同然だろ
だからexeがないんだろ
現実見ろよ

59 :
そもそもErlangのプロセスはVMが仕切ってるので
ネイティブで動く.exe実行ファイルとは相容れないだろう
もしやるとしてもVMを包んだ実行ファイルで配布とかになる

60 :
学習・開発環境としてのWindowsはあり → EXE不要
運用環境としてのWindowsはなし → EXE不要

61 :
ErlangSDLでゲーム作った → EXE必要
最近の『関数型言語でマルチスレッドゲーム製作』ブームで
ゲームに適してるって騙されてゲーム作った俺に誰でもいいから土下座して謝ってください。

62 :
スマンカッタ OTL

63 :
>>61
ちょっとまて、関数型言語がゲームに適しているってどこに書いてあったんだ?
あとerlangは関数型言語じゃなくてプロセス指向言語だぞ

64 :
ごめんなさいですの OTL

65 :
>>63
プロセス指向ってどんだけみみっちいな区分けすんだよw
どう考えてもErlangは関数型だろ。
ttp://game.watch.impress.co.jp/docs/20080911/epic.htm
PS4やらXBOX720やらになったら関数型言語が主役になるんだよ。
それで関数型言語マンセーなんだよ今は。

66 :
>>65
それには理由があって、
基礎理論が何かで分けられるべきだと思うんだよ。
HaskellやMLやLispなどはlambda-calculusを基礎理論としているのに対して、
Erlangやgoなどはpi-calculusないしはCSPを基礎理論にしている。
だから関数型言語というよりもプロセス指向言語と呼んだほうが分類としては正しいと思うんだ。

67 :
で、結局EXEの作り方知ってる人いたら容量がどんだけ大きくなってもいいので教えてください。

68 :
VM(起動OS含めて)まるごとの実行環境作ってしまえば医院で内科医?

69 :
どこから沸いてきたんだってくらい盛り上がってるねw

70 :
どうだ

71 :
Wings3Dだけexeでずるいぃ!
Sculptrisの登場で見放されちゃったんだから
こんな使えない3Dモデラー作ってないで、
素直にErlangの実行ファイル作成ソフト作ってくれよん!
って誰かWings3Dの作者に言ってよ英語わからないから!

72 :
>>66
基礎理論で分類するなら、ラムダ計算をベースに構文糖を被せた
JavaScript/Smalltalk/Rubyあたりも関数型言語になるんか?
また、CSPを基礎理論とするOccamやGHC(KL1)等も
プロセス指向言語と呼んだほうが正しい分類なのか?
普通に(常識的に)、JavaScript/Smalltalk/Rubyは(関数型機構も使える)
オブジェクト指向言語でいいし、Occamは手続き型言語、
GHCは並列論理型言語でいいと思う。同様にErlangも関数型言語だね。
>>65
言っている事はアレだがw、紹介してくれたリンク先の記事は面白かった。
ただし、その記事(ゲームと超並列化)が対象としているのは
メモリ共有による「密結合型」並列計算だよ。
Erlangは相互リンク(たとえばネットワーク)による「粗結合型」並列計算、
あるいは「分散型」並列計算だから、記事にあるようなリアルタイム
3Dレンダリングを生かしたゲーム開発には向いていないと思われ。

73 :
JavaScript/Smalltalk/Rubyは手続き型言語だろ普通に。

74 :
>>72
全く見当違い。
> 基礎理論で分類するなら、ラムダ計算をベースに構文糖を被せた
> JavaScript/Smalltalk/Rubyあたりも関数型言語になるんか?
完全な手続き型言語だろ。
> また、CSPを基礎理論とするOccamやGHC(KL1)等も
> プロセス指向言語と呼んだほうが正しい分類なのか?
そうだよ。
関数型言語はシーングラフベースのグラフィックスなら強いパワーを発揮しそうだ。

75 :
>>73
より正確にはオブジェクト指向手続き型言語だろうね。
オブジェクト指向というのは大きな概念(パラダイム)だから、計算モデルと両立する。
だからオブジェクト指向関数型言語やオブジェクト指向並列論理言語も存在しうる。

76 :
>>75
オブジェクト指向ってどういう基礎理論に基づいているの?

77 :
>>75に自己レス。
オブジェクト指向並列論理言語ではなくて、オブジェクト指向論理言語に訂正。
ちなみに例を挙げれば、
・オブジェクト指向関数型言語:OCaml
・オブジェクト指向並列論理言語:ESP
になるけど、普通はそれぞれ関数型言語、論理型言語と呼ばれているし、それで正しい。

78 :
>>75
君がオブジェクト信者だってことはわかったけど、
オブジェクト指向は指向と呼ばれることからわかるようにプログラミングスタイルを意味する言葉だよね。

79 :
関数型言語だろうと並列論理言語だろうとプロセス指向言語だろうとどっちでもいいだろ。
どうせやることは一緒なんだ。

80 :
>>76
計算モデルとしての(狭義の)オブジェクト指向の基礎理論は「アクター理論」と呼ばれる。
これは作用型計算モデル(関数型言語)と命令型計算モデル(手続き型言語)を統ーした
計算モデル。このモデルでは、すべての要素(オブジェクト)がアクターになる。たとえば
関数は不変アクター(imutable actor)で、手続きは可変アクター(mutable actor)になる。

81 :
俺が聞いたところによるとオブジェクト指向の完全な理論化は出来ていないとの事だったけどなぁ。

82 :
>>81
その通り。だから>>80では「狭義の」と書いた。例えば「継承(inheritance)」ひとつを
とっても、静的言語ですらその形式的定義は完成していない(はず)。だから、たとえば
OCamlのオブジェクト指向は不完全なので(型推論が破綻しているので)、嫌う人は多い。
ま、いいかげんオブジェクト指向はErlangとはスレ違いの話題だから、これで終わりにする。
Erlangにおける並行オブジェクト指向プログラミングなんて話題になれば、また顔を出すよ。

83 :
>>77
> ・オブジェクト指向並列論理言語:ESP
ESPは逐次型
逐次推論マシンPSIで使われていた

84 :
>>71
Wings3Dソースみてみたけど、werl起動するだけみたいよ?
インストールするとErlangのディレクトリ構造でライブラリ(**/ebin/*.beam)があるし。
exeは出来なくても良いけど、ソース無し(*.beamだけ)の実行環境と、ライブラリ集めて
インストールパッケージ作る、簡単な方法はほしいと思う。

85 :
ほしゅ

86 :
このスレまだあったのか

87 :
>>84
バッチファイルをEXE化して実行ファイル作ろうと思っても、
OTPからerl.exeとかerlc.exeとか引っ張り出すと動かなくなる。
なんでWings3Dは動いてんだよぉ…

88 :
一時期はerlang便利って思ってたけど、最近では普通にCだな・・・
スタイルさえ確立すればCでもErlangでも同じ。

89 :
しかもerlang遅いし。

90 :
741 デフォルトの名無しさん [sage] 2010/12/25(土) 00:53:53 ID: Be:
    erlangがほとんど話題に上がらないのはなぜ?

91 :
そんなことErlangへんでえ

92 :
座布団どころか家財全部もってちゃいなさい

93 :
http://www.infoq.com/jp/news/2011/04/erlang-copied-jvm-and-scala
Erlang を共同で開発した Joe Armstrong と Robert Virding 両氏が,Erlang が Java から多大な着想を得たことを認めている。
ErlangFactory 2011 SF で行われたインタビューで両氏は,Erlang では「プロセス」と呼んでいるものを作る上で,
Scala の Actor が大きな影響を与えているという,以前からあった噂をついに
肯定したのだ。さらに Erlang の VM が,かの有名な Java 仮想マシン (Java Virtual
Machine,JVM) のクローン同然のものであることも告白した。

94 :
>>93
うわ、これはショックだ
そうじゃないかと思ってはいたけど両御大の言葉ともなると
つらいものがあるな…漏れはArmstrong本で勉強したわけだし
きっと何か事情があるんだと思うな…そうであってほしい

95 :
>>94
>かの有名な JVM に回帰すること,の2点を約束している。
むしろこのあたりでちょっとうれしかったり

96 :
>>94
Posted by Sadek Drobi on Apr 01, 2011

97 :
>>96
ぐはぁ、そういう記事を1週間も遅れて貼るかなもう

98 :
>>97
しかも>>94は縦読みだ。

99 :
April Fool

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
【Scheme】Schemeインタプリタ Mosh Part1【Lisp】
【誰か】jQueryのここがわからない 2【助けて】
Windows Azure プログラミング 総合スレ
【DI】Java Spring Frameworkを語るスレ 5.0