[過去ログ] 関数型プログラミング言語Haskell Part16 (978レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
709: 2011/12/18(日)00:13 AAS
Haskellは何がしたいのか言ってみろ
710: 2011/12/18(日)00:45 AAS
「わからないことをわからないままにしたくないが、勉強も調べ物も一切したくない」
「自分の漠然とした感情は正しく、その合理的な理由は必ずどこかにあるはずだ」
「情報や知識は口を開けて待っていれば勝手に入ってくる」
この3つが揃うと、出所不明のデマは信じるわりに他人の話を聞かなくなる感じ。
711: 2011/12/18(日)01:10 AAS
煽るにもテクノロジーのバックグラウンドが要るが、最近はν速から逃げ込んで来てるからなあ。
712
(9): 2011/12/18(日)01:52 AAS
Windows + ghci での日本語表示について質問です

コンソールの文字コードを cp65001 (UTF-8) に変えて、
フォントも UTF-8 が表示できる [MS ゴシック] を使ってます

Haskell 関係無しに、コンソール上で type "ファイル名" とコマンドを打てば、
UTF-8 エンコードされた日本語テキストファイルは問題なく表示されます

この状態で ghci を立ち上げて、
s = "テスト" と記述された hs ファイルをロードし、
putStrLn s とすると、「テ・・ス・・ト・・」と表示されます

どうして余計な文字まで表示されるのでしょうか

ちなみに、実際のところ余計な文字は全角中点「・」ではなく「�」です
MSゴシックだとたまたま全角中点に見えるだけで、何か別の文字みたいです

[環境]
Windows 7
GHC 7.2.2
713
(1): 712 2011/12/18(日)01:55 AAS
>>712
> MSゴシックだとたまたま全角中点に見えるだけで、

すいません
コンソールの表示をよく見たら、全角ではなく「半角中点」に見えます

つまり 「テ・・ス・・ト・・」 と表示されているように見えます
714: 2011/12/18(日)06:36 AAS
で、実際問題、Haskellって何の役に立つの?
GUIも含めたアプリを作るのに、C++やJavaよりも生産性が高いの?
それとも計算結果をコマンドプロンプトに表示するだけでドヤ顔?
715: 2011/12/18(日)07:54 AAS
なんでコテ外すの?
716: 2011/12/18(日)07:56 AAS
>>707
ドカタ乙
717: 2011/12/18(日)08:00 AAS
少なくともGUIでは終わってる
HaskellでまともにGUIのガワが作れるようになるのはC++11がまともに使えるようになるよか遅いだろうね
718
(1): 2011/12/18(日)10:49 AAS
「わからないことをわからないままにしたくないが、勉強も調べ物も一切したくない」
「自分の漠然とした感情は正しく、その合理的な理由は必ずどこかにあるはずだ」
「情報や知識は口を開けて待っていれば勝手に入ってくる」
この3つが揃うと、出所不明のデマは信じるわりに他人の話を聞かなくなる感じ。

「わからないことをわからないままにしたくないが、勉強も調べ物も一切したくない」
「自分の漠然とした感情は正しく、その合理的な理由は必ずどこかにあるはずだ」
「情報や知識は口を開けて待っていれば勝手に入ってくる」
この3つが揃うと、出所不明のデマは信じるわりに他人の話を聞かなくなる感じ。

それとも計算結果をコマンドプロンプトに表示するだけでドヤ顔?
それとも計算結果をコマンドプロンプトに表示するだけでドヤ顔?
それとも計算結果をコマンドプロンプトに表示するだけでドヤ顔?
それとも計算結果をコマンドプロンプトに表示するだけでドヤ顔?
それとも計算結果をコマンドプロンプトに表示するだけでドヤ顔?
719: 2011/12/18(日)11:01 AAS
Haskellで概念を学びScalaで応用する。GUIも簡単だぞ
あとはIDEサポートがJava並になれば最強(typesafeが開発中らしい
720
(3): 2011/12/18(日)17:07 AAS
>>706

ゲームプログラミング界の巨人、Tim Sweeneyが「未来のゲーム開発テクノロジー」を語る
超並列処理、次世代のゲームグラフィックスはソフトウェアレンダリングに回帰する
外部リンク[htm]:game.watch.impress.co.jp
抜粋

Sweeney氏は純粋関数型言語のもつ並列処理安全性に着目しており、将来的にゲームプログラミングはそういった処理系に移行していくべきだとした。
Sweeney氏はそのひな形として言語“Haskel”を挙げているが、ゲーム開発のメインストリームたり得る言語はまだ登場しておらず、将来に期待しているという。
721: 2011/12/18(日)17:15 AAS
やーよ!やーよ!
722: 2011/12/18(日)17:37 AAS
>>720
> ゲーム開発のメインストリームたり得る言語はまだ登場しておらず
> ゲーム開発のメインストリームたり得る言語はまだ登場しておらず
> ゲーム開発のメインストリームたり得る言語はまだ登場しておらず
> ゲーム開発のメインストリームたり得る言語はまだ登場しておらず
> ゲーム開発のメインストリームたり得る言語はまだ登場しておらず
> ゲーム開発のメインストリームたり得る言語はまだ登場しておらず
> ゲーム開発のメインストリームたり得る言語はまだ登場しておらず

まだまだドヤ顔するには早すぎるってことだなw
723: 2011/12/18(日)17:43 AAS
>>718
顔真っ赤にするのはいいけどさ、GUI全盛のこの時代に、
Haskellプログラムのほとんどが文字列入出力だという
現実を直視しろ。
724
(1): 2011/12/18(日)17:52 AAS
GUIのコーディングなんて年収300〜400万円の仕事だろ
底辺すぎる
725: 2011/12/18(日)18:03 AAS
VB厨はVB使ってれば?

実際あのポトペタ環境の出来の良さだけは他に比肩するものがない
726: 2011/12/18(日)18:09 AAS
ここで話すことじゃない
議論に戻りたまえ
727
(1): 2011/12/18(日)18:24 AAS
VBにも劣るわけかw
728: 2011/12/18(日)18:36 AAS
>>727
関数型じゃなくても、大抵の言語はGUIに関してはVBやC#、Delphi・C++(Bilder)に劣る
MS(または円馬鹿出ろ)に気に入られるかどうかの問題
729
(1): 2011/12/18(日)18:54 AAS
>>724
VBにも劣るハスケルドカタは年収100万円を切っちゃうの?
かわいそう…
730: 712 2011/12/18(日)19:04 AAS
年収100万切ったら、Haskell なんかやってる場合じゃないと思うんだ
731
(1): 712 2011/12/18(日)19:08 AAS
それはそうと、私の質問 >>712 はだれか分かりませんか

一応あれから色々やってみて、wtiteFile など使えば、
UTF-8 でファイルに保存できることは確認しましたが、
それで済ますならコンソールをわざわざ UTF-8 に切り換えなくても良いわけで、
なんとかコンソールに普通に表示させたいです
732: 2011/12/18(日)19:13 AAS
年収の話は板違いなのでやめましょうか。
733: 2011/12/18(日)19:20 AAS
>>729
>>720の記事に載ってるとおり、今Haskell覚えるのは趣味や投資目的の意味合いが大きいしね
RubyやC#、Javaとかも、今でこそ仕事有るけど、出た当初は個人の趣味でしか無かった

記事抜粋

それにプラスして、Sweeney氏は現在のゲームプラットフォームハードウェアが複雑すぎることも指摘した。
もし、Sweeney氏のいう純粋関数型言語によるゲーム開発が実現したとして、それを基準とするならば、C++によるプログラム開発コストは、マルチスレッド版で2倍、
プレイステーション 3版において5倍、シェーダー言語で記述するGPGPU版において10倍かそれ以上にもなるという。2倍以上のコストはゲーム会社のビジネスにとって合理的とは言えない。

 従って、6コア、8コアどころでは済まないメニーコア世代のプラットフォームに備えて、ゲーム会社は開発基盤を備える必要がある。このような議論を踏まえた上で
、Sweeney氏は最後にこう述べた。「『Unreal Engine 3.0』の開発には3年の期間を要しました。そして、次世代のエンジンを開発するには5年くらいはかかるでしょう。
つまり、今年開発をはじめたなら、出荷可能になるのは2013年です。だから、今はじめるべきなのです。我々は既に、次世代への投資をはじめています」。
734
(1): 2011/12/18(日)19:34 AAS
お前はスレ荒らしたりHaskell勉強は先行投資と言ってみたり
本当にいそがしいな
735: 2011/12/18(日)20:12 AAS
>>734
>>706見て、たまたま記事を思い出しただけだよ
もともと、自分がHaskellに興味持ったのもマルチスレッドプログラミングに向いてるってのが取っ掛かりだったしね
736
(1): 2011/12/18(日)20:27 AAS
>>731
もっと詳細を書いてくれないと、同じ環境で同じ問題にぶち当たった人しかアドバイスできないよ。
737
(1): 2011/12/18(日)21:30 AAS
>>705-706って有名なスクリプトだよね?単語入れると自動でテンプレが出来上がるやつ。
こういうスクリプトもHaskellで書けるのだろうか。
javascript版をHaskellで書き直したというなら最高の釣りだなw
738
(1): 712 2011/12/18(日)21:56 AAS
>>736
すいません

まず最終的にやりたいことは、PostgreSQL に作ったテーブル内のデータが UTF-8 の日本語で、
その文字列データを取得してコマンドプロンプトに表示するプログラムをHaskellで作る
ということ

Haskell コード内でその文字列データ([Char] 型)を変数に束縛するとことは問題なくできた
というのも、その変数に System.IO.writeFile 関数を適用して得られたファイルを見ると、
正しく UTF-8 エンコードの日本語になっていたから
(当然だけど、writeFile の前に hSetEncoding 関数を utf8 に適用している)

コマンドプロンプトの方は、cmd.exe へのショートカットファイルのプロパティで
[オプション タブ]-[現在のコードページ] を "932" に、
[フォント タブ]-[フォント] を "MS ゴシック" に、
[ショートカット タブ]-[リンク先] を "%windir%\system32\cmd.exe "/K chcp 65001" に設定

このプロパティでコマンドプロンプトを起動し、その上で ghci を立ち上げ、
自作の *.hs ファイルをロードして、関数を評価しているが、
先ほどの [Char] 型の変数を ghci 上で評価すると utf-8 文字がエスケープされる
( ascii 文字以外は \ マークと数字数桁で表示される)

同じ [Char] 型の変数に putStrLn 関数を適用すると、
>>712(正確には >>713)のように日本語部分だけ各日本語文字1字に対して
余計な文字が2つずつ後に付随してくる(まぁエスケープに比べて読めなくはない)

どうすれば、コマンドプロンプト(コンソール)に UTF-8 日本語を正しく表示できるのだろうか

上記の現象はデータベース処理とは関係なく、UTF-8 エンコードされた
Haskell プログラムが書かれたファイル内に直接 s="テスト" と書いて、
それを ghci 上で同じように評価したりしても再現できるため、
>>712 では現象再現のための最低限の情報だけで質問しました
1-
あと 240 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.016s