2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

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

1 :デフォルトの名無しさん:2007/04/14(土) 00:59:19
いいからやってみ

611 :デフォルトの名無しさん:2008/11/17(月) 01:00:47
AがBに依頼した処理をBがAに処理をさせる?

612 :デフォルトの名無しさん:2008/11/17(月) 01:12:02
AとBでコルーチン的に処理をさせたいってことじゃね?

613 :デフォルトの名無しさん:2008/11/17(月) 03:04:20
名古屋コーチンがどうしたって?

614 :デフォルトの名無しさん:2008/11/17(月) 20:29:56
名古屋撃ちなら知ってる

615 :EW:2008/11/17(月) 21:54:07
612の方が指摘している通り、コルーチン的に処理するってことです。
純粋な逐次プロセスでコルーチンを実装すると、その処理をやっている間は
第三者からのアクセスに反応できないため問題がありました。

並列で新しいプロセスを作ると、コルーチンを分解できるんで
シンプルになりましたということです。

616 :デフォルトの名無しさん:2008/11/19(水) 22:28:39
>>615
権利義務の関係で処理すればいいんですね。
それぞれのプロセスはメッセージを受け取り自分を使わせる代わりに、
質問者を制御するメッセージを応答に付加できる。
そして、質問者はこのメッセージをevalことを義務付けられている。
これだけで>>610は実現できます。

617 :616:2008/11/20(木) 06:48:07
これではダメでしたね。
質問者は最初の質問に対してサーバから一度応答を
受けてそこで完了してしまいます。実際にはさらに続いていて、
質問者側の情報をサーバが得て本回答を送ってくるのですが、
それを受け取るのは、最初の質問者が設定した質問ではないですね。
サーバ側によって仕組まれた、バックグラウンドでの質問です。
これを質問者が最初の質問の回答と見なすのは困難ですか・・・。

618 :616:2008/11/20(木) 07:26:58
できるだけプロトコル化しないのがスマートと思ったのですが、
破綻しました。keep-alive状態を保って再質問するのが質問者
となるように仕組むことはできますが、
再質問は(最初の質問+質問者側でエバッた値)を引数に与えなくてはならず
複雑ですね。

619 :616:2008/11/20(木) 07:55:21
それにBは最初のAの質問に回答しないで、Aから情報収集してから
回答を用意するのが>>610の仕様ですね。全然ダメですね。
お騒がせしました。>>616->>619までは無視してください。

620 :デフォルトの名無しさん:2008/11/20(木) 23:41:22
>>616-619

621 :EW:2008/11/21(金) 10:13:54
やっていることとしては

loop(State) ->
receive
1 -> spawnA, NewStete = State
2 -> spawnB, NewState = State
2' -> setState, NewState = 更新
end
loop(NewState).

みたいなのをイメージして頂ければいいと思います。

somefunc() ->
sendA
receive
sendB
receive
return Value

とやると、その間は処理がストップする(loopがreceiveできない)
ので、新しいプロセスを独立させてそこでコルーチンlikeな処理をして
その結果をloopに対してメッセージとして送っています。

上記の方法は柔軟性が増しますが、代わりに厳密性を失っています。
そのコルーチン処理がプロセスの状態に関るものであるならば危険なプログラムなので
使用しないほうがいいと思います。

622 :デフォルトの名無しさん:2008/11/24(月) 14:42:15
vistaで erl -name hoge とするとAPPCRASH(StackHash_e52f)で起動できないのですが、
何が悪いのでしょう?
R12B-5(Erlang (BEAM) emulator version 5.6.5)です。
Microsoft Office IME 2007だとStackHash_e52fが起きるらしいのでMicrosoft IMEに
してみましたが、効果無しでした。


623 :EW:2008/12/10(水) 11:56:36
>>622
ごめんなさい。分からないです。

624 :デフォルトの名無しさん:2008/12/12(金) 00:20:13
おれはXPで動けばいいと思ってる

625 :デフォルトの名無しさん:2008/12/12(金) 23:28:46
》624
なんで?

626 :デフォルトの名無しさん:2008/12/13(土) 16:34:11
vistaはmeと同じ運命だからじゃないかい?

627 :デフォルトの名無しさん:2008/12/13(土) 19:08:43
そのmeを3年使った俺への当てつけか?
それにどうせ7はvistaの発展なんだから、vistaがmeと同じ立場というわけにはならないよ。

628 :デフォルトの名無しさん:2008/12/13(土) 19:14:02
そうだよな。7のカーネルはVistaと同じ、バージョン6.xなんだよな。
どの辺りが7なのか未だにわからない。

629 :デフォルトの名無しさん:2008/12/14(日) 05:56:13
MSも必死だからな


630 :デフォルトの名無しさん:2008/12/14(日) 12:19:25
名前なんて飾りです

631 :622:2008/12/14(日) 22:53:41
>>623
どうもありがとうございます。
-snameは動くので、ローカルなネットワーク限定で遊ぶことにします。
vistaで使っている人はいないのか…

632 :デフォルトの名無しさん:2008/12/15(月) 20:05:56
で、そろそろアーランを使用した基幹システム開発導入事例とか
出てきてもいいと思うんだ
通信以外の用途で

633 :デフォルトの名無しさん:2008/12/22(月) 13:20:47
io:fwriteでファイルに書き出すときは文字列のエスケープをしないのに
コンソールに出力するとUTF8の多バイト文字が皆エスケープされてしまうのだけど
これを抑止することできますか?
ファイルからテキスト処理してコンソール上で確認してるとことごとく\227,\130,\143…みたいになっちゃって
涙が


634 :EW:2008/12/22(月) 21:59:14
>>663
Erlang本には多バイト文字の扱い方が書いていないことは確かです。
正直、ファイル処理ですら相当危ういと思います。
ファイルにそのまま出力できたのは、UTF8の文字を認識しているのではなく
「バイト列をそのまま書き込んだから同じになったに過ぎない」という程度だと思います。
おそらく、ちょっと手を加えるだけで、ファイル出力も一瞬で文字化けするような気がします。

とりあえず、コンソール(コマンドプロンプト)が、EUCやShift-Jisになっていないかを
確認して、それでも駄目ならかなり厳しいんじゃないかと思います。
(だって、開発国の言語であるスェーデン語ですら文字化けするぐらいですし・・・・)

635 :デフォルトの名無しさん:2008/12/23(火) 21:03:44
>>634
不当なシーケンス食わせてもそのまま保持してくれるので(pread)コンソールでの
エスケープだけやめてくれれば十分な場合がほとんどだと想うのですが
パッチ自分で入れないとなんないとすると面倒だなぁ(ファイルにログ吐くとUTF8通るのに、コンソールだとアレみたいな)


636 :デフォルトの名無しさん:2008/12/26(金) 17:37:08
ErlangのWindowsバイナリーってWin95、Win98にインストール可能?

637 :デフォルトの名無しさん:2008/12/27(土) 03:34:03
>>636
FAQにはサポートされていると書いてあるけど
執筆日時が記述されていないから
自分で試すしかないと思うよ。

8.4 What operating systems does Erlang run on?
http://www.erlang.org/faq/faq.html

638 :デフォルトの名無しさん:2008/12/27(土) 09:21:35
>>637
何とか古いPC引っ張り出してやってみたけど
ダメだった。VCのランタイムとかいろいろ
いるみたい。

639 :デフォルトの名無しさん:2009/01/13(火) 18:06:16
↑↑馬鹿だろ

640 :デフォルトの名無しさん:2009/01/25(日) 09:12:34
最近、Erlangに興味を持ってネット上の入門レベルサンプルを動かしているんですが、
エミュレータ(erlコマンド)を使っている時に、BIFのパラメータ説明を調べる手間を
少なくする方法を模索中です。
現在使っている方法は、
・Googleで検索(Erlang keysearch など)して、使用例を見つけたら文法を推定する。
・Concurrent Programming in ERLANG のPDFファイル内で検索
ですが、皆さんはどうやって調べてるんでしょうか?
宜しければ、御教示願えると助かります。

641 :デフォルトの名無しさん:2009/01/25(日) 21:41:46
>>640
Linuxでやっているので,man pagesをインストールしておいて,
たとえば ets:new とかなら,man ets してから less上で
new を検索してる

man pages はDownloadページにリンクがあるけど,
普通の本体とは別なので,別途DLしてインストールが必要.
最新だとこれ>http://www.erlang.org/download/otp_doc_man_R12B-5.tar.gz

642 :デフォルトの名無しさん:2009/01/25(日) 23:09:49
emacsのerlang-modeマジオススメ。
"M-x erlang-man-module"→"module:function"で直接manを検索できる。

643 :デフォルトの名無しさん:2009/01/27(火) 20:50:35
>>641,642
レスが遅くなりましたが、有り難うございます。
という訳でLinuxをインストール後さっそく導入してみました。
man pages、Emacsのerlnag-modeの他に、Distel ↓というのを見つけたので
少し使いこんでみたいと思います。
ttp://code.google.com/p/distel/downloads/list

644 :デフォルトの名無しさん:2009/02/01(日) 12:38:10
Erlangの相談です。(・∀・)

今PHPでホームページを作っていますが、これからGuacheでホームページを作ろうと思ってます。
Gaucheを勉強したら、次はErlangを勉強しようと思いますが、Erlangでホームページの作り方を紹介しているサイトはありますか?

Erlang webアプリ の検索結果 約 247,000 件
http://dsas.blog.klab.org/archives/51094702.html

XREA(Apache)でErlangをインストールして動かすことはできるでしょうか?

645 :デフォルトの名無しさん:2009/02/01(日) 23:47:03
>>644
XREA で Erlang を使うとしたら CGI としてってことになるのかな。
それなら無理なわけではないと思うけど、
CGI で Erlang はかなり非効率的だ

646 :デフォルトの名無しさん:2009/02/04(水) 23:04:13
Erlangの相談です。(・∀・)

今PHPでホームページを作っていますが、これからGuacheでホームページを作ろうと思ってます。
Gaucheを勉強したら、次はErlangを勉強しようと思いますが、Erlangでホームページの作り方を紹介しているサイトはありますか?

Erlang webアプリ の検索結果 約 247,000 件
http://dsas.blog.klab.org/archives/51094702.html

647 :デフォルトの名無しさん:2009/02/05(木) 00:06:18
そんなもんはアランよ

648 :デフォルトの名無しさん:2009/02/09(月) 23:41:06
Erlangの相談です。(・∀・)

今PHPでホームページを作っていますが、これからGuacheでホームページを作ろうと思ってます。
Gaucheを勉強したら、次はErlangを勉強しようと思いますが、Erlangでホームページの作り方を紹介しているサイトはありますか?

Erlang webアプリ の検索結果 約 247,000 件
http://dsas.blog.klab.org/archives/51094702.html

649 :デフォルトの名無しさん:2009/02/09(月) 23:49:19
ホームページが作りたいのか、Webアプリが作りたいのか
ホームページなら基本は一緒で言語は関係ない
Webアプリは知らん

650 :デフォルトの名無しさん:2009/02/10(火) 07:46:50
>>644,646,648


651 :デフォルトの名無しさん:2009/02/10(火) 17:33:17
そんなものはアーランよ

652 :デフォルトの名無しさん:2009/02/11(水) 12:09:40
>>648

ErlangでWebするなら,Webサーバ(フレームワーク)として
何を使うかによるんじゃないかな?

一番メジャーなのはyaws.
http://yaws.hyber.org/
このページに色々サンプルがあるし,一通りの機能は
全部あると思う.

yawsで動くフレームワークに,Erlywebがあるので,
Webサイト作るならこれも併せてどうぞ.
http://erlyweb.org/


他にシンプルなものとしては,mochiweb があるかな.
http://code.google.com/p/mochiweb/
覚えやすいと思うけど,機能的にはyawsの方が良いと思う.

どちらもまとまったドキュメントなどはそのソフトウェアの
ページくらいしかないので,それ以上はソースを読むしか・・・

653 :デフォルトの名無しさん:2009/02/26(木) 22:31:25
erlangでHTMLパーサってないですか。
XMLパーサはあったんだけど。

654 :デフォルトの名無しさん:2009/02/26(木) 22:50:20
>>524
>>528
的中だった。
http://wiki.livedoor.jp/mezaseneoneet/d/%a5%c8%a5%c3%a5%d7%a5%da%a1%bc%a5%b8

655 :デフォルトの名無しさん:2009/03/02(月) 13:33:27
CouchDBはmochiweb使ってErlangで書かれてるよね。
http://couchdb.apache.org/
個人的にyawsよりmochiwebの方が好き。

656 :デフォルトの名無しさん:2009/03/02(月) 14:15:14
erlangて何てよむの?
エリクソン言語でいいの?

657 :デフォルトの名無しさん:2009/03/02(月) 14:21:11
アーラン

658 :デフォルトの名無しさん:2009/03/02(月) 23:59:51
なかなかよさげな言語あげ


659 :デフォルトの名無しさん:2009/03/03(火) 02:01:42
1文字が一文字で認識されるようになった?
ファイルから文字列読み込んで多バイトコードが内部のUCS4になってくれなくて一回使うのあきらめたんだけど。
そこさえ改善されてたらメイン言語にしたくらい好きではある。

っていうか英語圏はまだしもヨーロッパ言語はどうやってあつかってんだ?


660 :デフォルトの名無しさん:2009/03/03(火) 03:29:46
俺には状況が理解できなかったが、
>strings can be represented by lists of ASCII characters
>>http://erlang.org/doc/getting_started/seq_prog.html#2.5
である以上、多バイトで表現される文字(というか128を越える数値で表現される文字)を扱うのはバイナリで読み込むしか無いような。


実際にはオクテットに収まれば~sで表現できるから、ヨーロッパ諸語はISO/IEC 8859(だっけ?うろ覚え。Latin-1とか)でなんとかなるんじゃないか?

157 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)