[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 10/27 09:49 / Filesize : 201 KB / Number-of Response : 803
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

関数型プログラミング言語Haskell Part8



1 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 20:28:13 ]
haskell.org
www.haskell.org/

日本語サイト
www.sampou.org/cgi-bin/haskell.cgi
www.shido.info/hs/

過去ログ
関数型プログラミング言語Haskell
Part1 pc.2ch.net/tech/kako/996/996131288.html
Part2 pc2.2ch.net/test/read.cgi/tech/1013846140/
Part3 pc8.2ch.net/test/read.cgi/tech/1076418993/
Part4 pc8.2ch.net/test/read.cgi/tech/1140717775/
Part5 pc8.2ch.net/test/read.cgi/tech/1149263630/
Part6 pc11.2ch.net/test/read.cgi/tech/1162902266/
Part7 pc11.2ch.net/test/read.cgi/tech/1174211797/

・2chの仕様により、行頭の半角スペースは表示されません。
 コードをインデントしたいときは、代わりに または全角スペースを使うことができます。

666 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 01:33:37 ]
以下のコードでtimeout関数の動作確認をしたのですが、
うまく動作しません。何がいけないのでしょうか?

import System.Timeout

main = do a <- timeout (3*10^6) getLine
print a



667 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 02:07:19 ]
>>666
俺の環境(Linux x86 ghc-6.8.2 base-3.0.1.0)だと動いたよ
windowsだとHandleからの入力でブロックするときにselectを使ってないから、そのせいかも

668 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 19:56:39 ]
モナドとかって解りやすく
書いた論文とかありますか?

PARSEC使いたいのですが
どうにも曖昧で


669 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 20:15:35 ]
>>668
I Love Ruby本

670 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 20:50:09 ]
>>668
つ "The marriage of effects and monads"
つ "Tackling the awkward squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell"

ググればPDF手に入る

671 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 20:56:19 ]
parsec使うのにモナドの知識は必要ないけどな

>>670
Tackling...はIOモナドについての論文じゃないか?

672 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:02:17 ]
だったら何?

673 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:06:05 ]
モナドについて知りたがってる奴にIOモナドの事を教えてもしょうがないだろ
群について知りたがってる奴に整数を教えるようなものだ

674 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:08:14 ]
>>673
あとkindとかって数学の眠い本永遠と
読まないと理解できないかな?

圏とかまじで数学本気でやってねーから解らん



675 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:18:11 ]
kindは全然難しいものじゃない
「Maybe Int」型の式は存在するけど単なる「Maybe」型の式は存在しないとか、
「Maybe Maybe」っていう型は不正だとか、そういう次元の話

676 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:21:18 ]
パージングするとIOモナとの連携は付き物だから、
>>668は知りたくなるんじゃないかな?
知らなくてもPARSEC使えるけどね。

677 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:28:50 ]
知らなくても使えるんだけど
背景とか基礎的な内容知りたく
ならない?

ならない、そうですかそうですか.....

678 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:41:01 ]
Trends in functional
Programmingって毎年出てるの?

679 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 01:49:14 ]
>>668
"Monadic parser combinators"ってテクニカルレポートが
仕組みやモナドの解説が分かりやすく書いてあってよかった。

680 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 09:06:14 ]
自分は手続き型のメジャー言語を普段使っている人間ですが、最近関数型が話題になって
勉強しているところです。

この板の書き込みもそうですし、実際に出版されている本の数や内容など見ると、まだ
Haskellのような言語は研究者レベルの言語なんでしょうか。

個人的には今後アプリがマルチプロセスに対応せざるを得ないとか、複雑性が上がる
中で処理の信頼度を一層高める必要がある中で、Haskellのような言語がある時期から
一気にパラダイムシフトを引き起こすのじゃないか、とか妄想していますが、単なる
妄想ですかねw

681 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 09:25:48 ]
Haskellは、ある時期と言わず今、実用プログラムを(分野にも依るけど)書く上で有力な言語だと思うよ
その意味で、Haskellは既に研究レベルの言語ではない
一方で、今のHaskell利用者に占める研究者や学生の割合はそれなりに高いだろうし、
Haskellが研究の道具として使われてるのも事実だから、その意味で研究者の言語だ

682 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 09:59:31 ]
>>680
遅延評価のHaskellから、
> ある時期から一気にパラダイムシフトを引き起こすのじゃないか
ってのはちょっと難しいだろうね。

> 研究者レベルの言語

こういう考え方はよくわからない。
自分の腕を上げるために必要なことは学べばいいだけなんで。

683 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:01:57 ]
immutableにするとスレッドセーフになるのは分かる
代入ができなくても別に困らない、というのも分かる

分からないのは遅延評価
原則的にはeagerにして必要なときだけ明示的に遅延するのでは駄目な例ってないすか

684 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:10:05 ]
>>682
> 遅延評価のHaskellから、
> > ある時期から一気にパラダイムシフトを引き起こすのじゃないか
> ってのはちょっと難しいだろうね。

これはどういう意味でしょうか?



685 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:12:07 ]
>>683
駄目ってことはないんじゃないか?
Haskellは、原則的には遅延で必要なときだけ明示的にeagerという立場だから、
Haskellコードを、デフォルトがeagerな言語に翻訳するのは機械的な書き換えで済む
どっちをデフォルトにするのが便利かは議論の分かれるところじゃないだろうか

686 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:16:32 ]
>>683
「つまらない」そこが駄目

687 名前:680 mailto:sage [2008/04/06(日) 10:24:01 ]
>>683
SICPなんかだと、参照透過性と遅延評価をStreamの項で関連付けて
いたりしますが、その辺へのこだわりではないんでしょうか?

688 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:33:23 ]
1988年?ぐらいの関数言語を実装するための
本があるはずだけど
あれみれば遅延評価背景わかるはず

本の名前が解らん


689 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 11:17:06 ]
>>688
research.microsoft.com/~simonpj/papers/slpj-book-1987/index.htm
これ?
lazy evaluationの正当化は194ページにちょっとあるだけかな

690 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 11:23:03 ]
>>689
おーそれそれ
あとどれだったかなぁ


691 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 19:27:55 ]
日本だとどっちを先に読めって言われてるの?
・Introduction to Functional Programming Using Haskell
 www.amazon.co.jp/exec/obidos/ASIN/0134843460/
・Haskell: The Craft of Functional Programming
 www.amazon.co.jp/exec/obidos/ASIN/0201342758/



692 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:25:11 ]
>>691
自分はCraftを先に読みました。Craftは所謂Haskell言語の入門書だと思います。

Introduction〜はHaskellの入門というよりも、関数型言語の原理原則を中心に
展開する書物ですね。自分は今読んでる途中です。

どちらもよい本だと思います。

693 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:25:18 ]
>>691
欧米だとどっちを先に読めって言われてるの?

694 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:28:17 ]
片方が初級で片方が中級、とかではないですね。



695 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:46:40 ]
>>693
俺の恩師のイギリス人のじいちゃん先生
だと、今の若い人間には退屈すると
長続きがしないだろう。好奇心だけでは
どうしても無理だろう。といって、Craftを
読んで言語を理解しなさいと言われたなぁ



696 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 00:14:53 ]
このすれの住人って
俺以外に、5人しかいないだろ?

697 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 03:08:19 ]
日本でHaskellやってる人間なんて100人未満だろうな

698 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 03:13:05 ]
だってモナドって何ですかって聞くと
「圏論について勉強するといいよ」って返されるんだもん

そしてwikipediaで圏論の説明見てわからず涙目になる俺

699 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 04:11:20 ]
>>697
3000人じゃなかった?

700 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 06:33:59 ]
Haskellでモナドを使ったり作ったりする分には圏論の知識なんて要らないけどな

701 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 10:04:01 ]
>>699
そのうち何人が実際にソフトウェアを記述するかといったら100人未満だと思うよ

702 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 00:19:34 ]
Webの自動テスト
Haskellで書くと面白いんだけど
Arrowが良くわからん

あれが必要ななんでどうまくつかいこなせない

703 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 06:49:34 ]


704 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 08:26:47 ]
和訳すると、
「よくわからないArrowが必要なせいで、うまく使いこなせない。」



705 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:22:44 ]
arrowより日本語を使いこなした方がよいのでは…

706 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:38:51 ]
まぁ、arrowよりも日本語の方が長く使うだろうからなぁ。

707 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:42:17 ]
分からないぞ、突如GHCが日本を占拠して日本語の代わりにHaskellを使うように命じられるかもしれない。

708 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:48:55 ]
それは中国が世界を支配する確率とどちらが高いかね?

709 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 20:42:39 ]
GHC とは General Headquarters Compiler の略だったのか・・・
ギブ・ミー・モナド

710 名前:デフォルトの名無しさん [2008/04/10(木) 11:30:08 ]
>>702
Arrowが必要なのは、Arrowベースのテストツールかなにかを
使ってるからなんだろうけど、なに使ってるの?

711 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 21:50:55 ]
>>710
作ってるのw

712 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 11:39:16 ]
しかし雑談ばっかりだなこのスレ

713 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 11:56:43 ]
うまく使いこなせないのに必要だと分かって作ってるんですか

714 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 23:23:30 ]
モナドってHaskellに限った考え方ではなくて、もっと一般的な考え方なんだよね?

ほかの言語にモナドの考え方を応用したようなライブラリが、もっとあってもいいと
思うんだけどな。副作用嫌いな人は喜ぶと思うんだけど。そうでもないのかね。



715 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 23:36:10 ]
すでに他の言語でもあることない?
すんごいマイナーだけど

716 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 01:17:35 ]
Python でモナドを実装してみたよ、ってのはネットで見た気がする。

717 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 01:19:07 ]
これだ。
www.valuedlessons.com/2008/01/monads-in-python-with-nice-syntax.html


718 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 02:47:54 ]
okmij.org/ftp/Scheme/monad-in-Scheme.html
okmij.org/ftp/Computation/monadic-shell.html


719 名前:デフォルトの名無しさん [2008/04/12(土) 21:48:14 ]
引く手あまたのプログラミング言語は?
slashdot.jp/developers/article.pl?sid=08/04/06/2313251
---
Java(16479件)、C++(8080件)、C#(7780件)、JavaScript(6749件)、
Perl(5710件)、PHP(2641件)、Python(1408件)、COBOL(1207件)、
Ruby(769件)、Lisp(33件)といった感じらしい。

とりあえずJavaとC/C++/C#、あとJavaScriptを覚えれば、
当分仕事には困らないようである。COBOLのしぶとさも目立つ。

ちなみにHaskellやOCamlの求人は10以下だったそうだ。
---

720 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 23:28:51 ]
JavaはともかくC#はどうかな…?
10年後には残ってない気もするが。

721 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 00:54:40 ]
そんなことよりもHaskellの求人が存在するのか!!
どんな仕事だ?

722 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 02:47:10 ]
リンク先まともに読んでないが
単に列記されてるのカウントしてるだけじゃねーの?

723 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 03:03:37 ]
HaskellとかOcamlの仕事とかどんなんか見てみたい
研究用じゃないよな

724 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 03:05:42 ]
Haskellでグラディウスを作る仕事です。
誰でも簡単にできる楽しい作業です。
初心者歓迎。



725 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 08:25:34 ]
0 <= 10 → True

726 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 08:30:48 ]
0は10以下でないとか、全部は一部でないとか、空列は列でないとか、自然言語には奇怪な慣習があるのです

727 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 09:21:12 ]
Hugs> -10 <= 10
True

728 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 10:27:42 ]
Haskellerお断り 10件w

729 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:00:54 ]
アメリカの大学では、(企業もだけど)
フルタイムやパートタイムの非常勤プログラマーを雇うことがあるから、
Haskellはその類いかも知れない。



730 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:10:29 ]
>>723
www.janestcapital.com

731 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:02:12 ]
だけど、関数型言語の勉強は仕事で使わなくてもやったほうが
いいと思うけどな。手続き型で出やすい不具合をどう防ぐか、
無駄の無い記述をどう実現するか、とか勉強になること多いと思うよ。

732 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:08:30 ]
個人的には手続き型ベースのOOPLのコーディングに影響があったかというと微妙な気が。
具体的にどういうこと?

733 名前:デフォルトの名無しさん [2008/04/13(日) 13:11:08 ]
一々メソッドや変数の名前を考えるのが面倒で
コーディングする気力が萎えて来るとか…

734 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:18:35 ]
海軍でhaskell使ってると思う
どこの国かは言えんが
topでGHCかりかり動いているみたことある



735 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:25:20 ]
lambdaの導入とかそういう文法レベルでの影響は0ではないか。

736 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 13:30:55 ]
C++は次でラムダ実装する
Intelのスレッドライブラリもラムダ標準実装
C#も次期バージョンのサポート予定
Javaはかすだけどサポートするらしい(いらねw



737 名前:デフォルトの名無しさん [2008/04/13(日) 13:56:04 ]
あるとか無いとか、仕様のマトリックスを埋めるだけなら意味無いよ
C++ 自体がイラネ

738 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 14:04:04 ]
>>732
いや、単純に(再)代入が許されない世界で、再起を使うとか、リストデータを
編集してそこから必要な情報抜くとか。そういうの訓練すると影響あるんじゃない
かなぁ。

手続き型だと「要するにこれはどういう処理か」って考えずにずらずらと手続きを
書き連ねていって、目的のデータを何とか作ってしまう、とかなりがちだけど、
その辺が意識変わると思うんだけどね。

739 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 14:12:31 ]
副作用を0にするって考えは
通常の手続き型に慣れると
そうぞうすらしない奴も多いから
F言語はシンプルな世界観を持つ
ためにはある程度知る必要があると
おもふ
別に変態的に知る必要はまったくないけど

それよりCraf本読むのに6時間かけてまだ
6章しか読めん俺はおわっとる

740 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:52:54 ]
>>736
VBで既に導入されてなかった? >λ式

741 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:53:27 ]
C#にも既に入ってる

742 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 20:29:34 ]
C#とかにλ式が導入されるとか、ちょっと意味不明というか、統一感が無さ過ぎる感じが
するがどうなんだろうか。だったらF#とかでいいじゃないか?って気がするけどな。

実はF#への移行の布石だったりして。

743 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 20:58:22 ]
元々あった無名delegateの構文を整理しただけだから、そんなに大袈裟な話でもない
どっちにしろ、まともな高水準言語なら無名関数の類はあって当然で、統一感とか気にしてる場合じゃない

次は代数的データ型とパターンマッチに相当するものが入るといいな

744 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:12:29 ]
>>743 >まともな高水準言語なら無名関数の類はあって当然で、
私が言葉尻に拘ってるのかも知れないが、なぜ?



745 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:22:47 ]
>>744
上であがってる古い関数言語の実装の
論文読んでみなよ何が要素として定義
されていて必要なのかわかるから

746 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:27:35 ]
>>745
でもC++とかには(少なくとも現在の規格では)無いわけだし、
実際無名関数みたいな仕組みは無くてもプログラムを組むことはできるし、
それらの事実を踏まえた上で>>744>>743が「あって当然で」と言っているその考えを聞きたいんだと思うんだが。

あった方がプログラミングが綺麗になる部分もあるのは当然の話だが。

747 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:29:40 ]
それこそ言葉尻じゃねw
モダンな言語は取り入れる傾向にあるとでも読み換えたら。

748 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:47:26 ]
>>746
OOが無くても手続きはできるし
アジャイルがなくてもそれ相当のことはいくらでもできる。
Cで、どんな手段でもOKならfor_each構文を作ることもできる

結局、ラテン語やその他の自然言語がどんどん変革していったように
プログラミング言語も変わっていくだけだと思うよ
ただそこには、今まで苦労した結果を簡単に置き換えることで
本当の問題にどれだけ注視して取り組めるようすることを
追求しているだけだと思うよ。リスクの低減と開発効率の上昇

自然言語に対する機械言語の仕様変更とイディオムの変更は
とてつもなく早いのでそれに対する拒否反応や疑問は常時出てしまうけど
それは仕方のないことだろうし。まぁ慣れてくれ

749 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 00:34:46 ]
>>746
> でもC++とかには(少なくとも現在の規格では)無いわけだし、

今もあるぞ、制限が多いだけで。
C++0xで言語自身に組み込みになってより強力になる。

750 名前:デフォルトの名無しさん [2008/04/14(月) 01:01:34 ]
C++ にクロージャ入れても意味が無い

751 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 02:45:24 ]
わざわざ関数オブジェクトクラスを定義しなくて良いという
くだらないが重要な利点があります

752 名前:デフォルトの名無しさん [2008/04/14(月) 08:38:21 ]
そして文法が果てしなく汚れて行く…

753 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 08:52:25 ]
Haskell には今話題にあがってるような、構文、言語機能の拡張ってないの?

754 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 17:18:28 ]
提案されてきた拡張は数えきれないくらいある
いくつかはGHCにも実装されてるし



755 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 20:34:05 ]
C#にクロージャとかって、どうも奇妙な感じがするのは、関数型言語って
自然数なんかもλ式で表現する、つまり「全ては関数なり」という一貫
した思想に基づいて設計されてるわけでしょ?

C#やJavaなどのオブジェクト思考言語って、値が全てなんだよね。
値を操作するために関数がある。そこにクロージャとかって、何か
意味があるのかね。

756 名前:デフォルトの名無しさん [2008/04/14(月) 20:41:20 ]
オブジェクト指向言語を知らないからそう思うんじゃないの。
オブジェクト指向言語で関数オブジェクトを扱えるのは別に
おかしな事じゃない。関数型言語でオブジェクト指向する事も
出来るし。

757 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 20:47:01 ]
>関数型言語って
>自然数なんかもλ式で表現する、つまり「全ては関数なり」という一貫
>した思想に基づいて設計されてるわけでしょ?
これがそもそも勘違い
例えばHaskellのIntは関数じゃない

C#やらJavaScriptやらにクロージャがあって役に立つのは事実
例を知りたければ適当に検索すればいくらでも見つかると思う

758 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 21:04:05 ]
副作用がある言語のクロージャってのも、
それはそれで使いでがある。
SICPをやってみればわかるけども。

759 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 21:24:38 ]
>>756
それってUtility的なものでしょ?

どうも変な感じするけどなぁ。

760 名前:デフォルトの名無しさん [2008/04/14(月) 21:36:49 ]
そりゃ、あんたがどう感じるかで言語設計している訳じゃないからな。
オブジェクト指向が値が全てと言うのは勘違いだし、クロージャも
みんな昔から便利に使っている。それだけ。

761 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 21:50:02 ]
なんだこのNOOBどもは
小学生の議論してんなよ

762 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 21:51:03 ]
あ、そうw

いや、俺が感じるというか、計算モデルがそもそも違うと思うんだけどね。

まぁ、いいかw

763 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 21:53:29 ]
なんかさ、大学でちょっとかじったぐらいのやつらの話ってうざくね?
いかにも知ったかぶった感じで話すやつら。

764 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 21:54:57 ]
ネトゲ厨降臨中



765 名前:デフォルトの名無しさん [2008/04/14(月) 21:55:00 ]
>>762
アクター理論とかはどうなの?

766 名前:デフォルトの名無しさん [2008/04/14(月) 21:57:48 ]
OO 特有の計算モデルとかあるの?

767 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:15:57 ]
昨日教科書読みました、みたいな発言やめてください。
背中がむずがゆくなります。

768 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:19:30 ]
偶然ですね。私も昨日SICP読みました。さっぱりわかりませんでしたがw

769 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:21:28 ]
学のない奴が語っちゃいけませんかそうですか

770 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:22:47 ]
学の無い人間は尋ねる側ので、語る側ではないな。

771 名前:デフォルトの名無しさん [2008/04/14(月) 22:23:40 ]
じゃあ頭の出来が違う人達に語ってもらおうぜ

772 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:28:21 ]
命令すんなよw

773 名前:デフォルトの名無しさん [2008/04/14(月) 22:30:06 ]
それなら気が向いたらでいいから宜しく頼むわ

774 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:30:13 ]
>>762は学のあるなし以前に、自分の意見をまじめに伝えようとしてないから、相手にしないほうがいい



775 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:37:10 ]
Haskellの拡張については 昨日教科書読みました 程度では語れるレベルじゃないから、
Haskellでの実装の話しろよ。

776 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 23:05:51 ]
BrainfuckでHaskell作ろうぜ

777 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 07:30:06 ]
Haskell初心者ですが、勉強した印象として構文が若干
多いかな?という感じがします。型に関係する部分とか
特に。

これってHaskellerの間で議論があったりするんでしょうか。
比べてはいけないんでしょうけど、Schemeのようなシンプルさ
で同じような型チェックができたら最高なんですが。

778 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 08:25:11 ]
それはCとC++比べてるようなもんです。どうしても嫌なら、
ML系のオブジェクト指向が入ってないのをやってみてはどうでしょうか。

779 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 10:31:09 ]
OCaml?

780 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 18:26:40 ]
>>779
たぶんCaml liteの方。でなきゃSML。

781 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:15:56 ]
>>777
ぐちぐちうぜーこと言ってるなら
使うな辞めろうぜーんだよ
お前のチラ裏報告なんて誰も
求めてねぇよ

さっさと消えろよ

782 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:39:09 ]
>>777
厳格な型付けをする言語では避けて通れないんじゃないの。むしろ、それを望む人には
必要不可欠かと。

783 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 22:47:46 ]
空気読まずに失礼しますが、
runhaskellの引数にプログラムを書いて実行する方法はありますか?
たとえばrubyだと
$ ruby -e "print 'abc'"
のように書くことが出来ますよね。
同じような使い方をHaskellでしたいんです。

784 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 05:22:47 ]
ghc -e 'putStrLn "abc"'
Hugsだと多分無理



785 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 20:56:38 ]
>>781
かわいいw

786 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 23:48:13 ]
Types and Programming Languages

Introduction to Functional Programming Using Haskell

カバーしてる内容全然違う?

787 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:32:17 ]
はい、上は型理論の入門書です。
数学分からない人は絶対に読むべきじゃないです。

788 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:36:37 ]
>>787
ここ数年の少年ジャンプの面白さを
発見するよりは簡単なはずだが?


789 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:44:07 ]
>>788
「型推論のHindley-Milner type inference」とかでピンと来るならいいんじゃね。

790 名前:デフォルトの名無しさん [2008/04/20(日) 00:46:08 ]
数学界ってネタ切れなんかね

791 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 05:25:06 ]
TAPLに数学なんか関係あったか? どのへん?

792 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 07:19:16 ]
数学は万物と関係があります

793 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 08:26:36 ]
確かにそうだが随分とアバウトな答え方だね

794 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 09:45:15 ]
本の最初のLessonで
main = do cs <- getContents
putStr cs
というサンプルがあったのだが,このまま打ち込んでも
The last statement in a 'do' construct must be an expression
と出る.どうすれば...?



795 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 12:09:38 ]
>>794
二行目の先頭にちょうど10個のスペースを入れてる?

796 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 15:58:12 ]
>>794
ttp://www.ice.nuie.nagoya-u.ac.jp/~h043078b/wiki/wiki.cgi?page=%CA%B8%CB%A1%BB%F6%B9%E0+-Haskell-#p19

797 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 20:41:46 ]
>>795-796
Emacsを使ってるのですが,するとEmacsの自動インデント
機能に難ありということなのでしょうか...

798 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:51:23 ]
>>797
Emacsはよく知らんが、Tabをスペースにかえればいいんでないの?


799 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:55:19 ]
関数型プログラミング言語Haskell Part7
pc11.2ch.net/test/read.cgi/tech/1174211797/

213 :デフォルトの名無しさん:2007/04/07(土) 18:00:15
すいません。emacsのhaskell-modeでプログラムしているんですが、
インデントの方法に関して質問があります。

例えば、次の様なソースがあった時、
import System
import System.IO
main = do
putStrLn $ "Woud you like some coffee?(y/n)."
hFlush stdout
c <- getChar
if c == 'y'
then putStrLn "Yes,please."
else putStrLn "No,thank you."

thenやelseの前でTabキーを押すと、if式と同じインデントになってしまうのですが、
それだとコンパイルエラーになってしまいます。なので、今はスペースでインデントを
付けています。Tabキーで正しくインデントさせる方法がありますでしょうか?


800 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:56:16 ]
関数型プログラミング言語Haskell Part7
pc11.2ch.net/test/read.cgi/tech/1174211797/

215 :デフォルトの名無しさん:2007/04/07(土) 19:31:19
>213
明示的に {} を使うという方法はあるにはあるが。
do { putStrLn $ "Woud you like some coffee?(y/n)."
; hFlush stdout
; c <- getChar
; if c == 'y'
then putStrLn "Yes,please."
else putStrLn "No,thank you."
}
のようにすると綺麗にインデントできる。

まぁ私は手で空白を入れたり一行にしちゃったりする方が多いけれど。



216 :デフォルトの名無しさん:2007/04/08(日) 17:57:02
>>215
レスありがとうございます。
{}を使う方法か、手動でインデントをあわせる方法の2通りという事ですね。

他の方はどうやってインデントさせているのか疑問に思っていたのですが、
その疑問が解消されました。



801 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 02:56:48 ]
Tabをもう一回押すんだよ。

802 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 03:05:24 ]
www.fobj.com/hisa/d/20060828.html






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<201KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef