はてなキーワード: haskellとは
http://kenokabe-techwriting.blogspot.jp/2016/05/timeengine.html
nonstarterの言うことがハッタリじゃなければ、さっさとToDoListの課題をOcamlの関数型の状態渡しをもって実装してみせればいいだけだが、言い訳始めてるからな。
nonstarterはこの発言の時点では、Ocamlの関数型の状態渡しに限界があることはお首にもだしていない。読んだものはそうだったのか、何でもできると思って不思議ではないだろう。
しかしなぜか、Haskellが急に登場する。別の言語の助けを求め始めた最初がここ。
そのうち、OCamlの実際的な環境じゃスケールしないという指摘がはいる。
nonstarterは、複雑性への限界を認めるが、同時に、FRPの足をひっぱることも忘れ得なかった。つまり「負けてない!」ってことなんだろw
しばらく有耶無耶にされていたが、お絵かきアプリもまだ書けないといか書かれているのを目撃した岡部氏が、すでに実装していた自作FRPライブラリでお絵かきアプリを示して、
ついでに、ハードルを引き上げた。
nonstarterの言うとおり、
岡部氏が示したFRPコードと同等のかんたんさで、OCamlでも出せるはずだ。
もちろん、他のHaskellやFRPは使うな、という至極当然の縛りつき。
http://anond.hatelabo.jp/20160520153948
そもそもの最初がesumiiやlambadaなどのOCamlユーザへむけての課題で、
nonstarterが、
と急に何故かいきなりHaskellを持ち出し、Haskellのコードを引っ張り出した。
いろいろとっちらかしてんじゃねーよ、ってことだろ。
OCamlではライブラリも足りず机上の空論だったという、ひとつの区切りはついた。
とこの点について「一般化」を試みた、誤魔化そうとしたのは、nonstarterだ。
http://kenokabe-techwriting.blogspot.jp/2016/05/timeengine.html
nonstarterの言うことがハッタリじゃなければ、さっさとToDoListの課題をOcamlの関数型の状態渡しをもって実装してみせればいいだけだが、言い訳始めてるからな。
nonstarterはこの発言の時点では、Ocamlの関数型の状態渡しに限界があることはお首にもだしていない。読んだものはそうだったのか、何でもできると思って不思議ではないだろう。
しかしなぜか、Haskellが急に登場する。別の言語の助けを求め始めた最初がここ。
そのうち、OCamlの実際的な環境じゃスケールしないという指摘がはいる。
nonstarterは、複雑性への限界を認めるが、同時に、FRPの足をひっぱることも忘れ得なかった。つまり「負けてない!」ってことなんだろw
しばらく有耶無耶にされていたが、お絵かきアプリもまだ書けないといか書かれているのを目撃した岡部氏が、すでに実装していた自作FRPライブラリでお絵かきアプリを示して、
ついでに、ハードルを引き上げた。
nonstarterの言うとおり、
岡部氏が示したFRPコードと同等のかんたんさで、OCamlでも出せるはずだ。
もちろん、他のHaskellやFRPは使うな、という至極当然の縛りつき。
http://anond.hatelabo.jp/20160520153948
そもそもの最初がesumiiやlambadaなどのOCamlユーザへむけての課題で、
nonstarterが、
と急に何故かいきなりHaskellを持ち出し、Haskellのコードを引っ張り出した。
いろいろとっちらかしてんじゃねーよ、ってことだろ。
OCamlではライブラリも足りず机上の空論だったという、ひとつの区切りはついた。
とこの点について「一般化」を試みた、誤魔化そうとしたのは、nonstarterだ。
nonstarterはこの発言の時点では、Ocamlの関数型の状態渡しに限界があることはお首にもだしていない。読んだものはそうだったのか、何でもできると思って不思議ではないだろう。
しかしなぜか、Haskellが急に登場する。別の言語の助けを求め始めた最初がここ。
そのうち、OCamlの実際的な環境じゃスケールしないという指摘がはいる。
nonstarterは、複雑性への限界を認めるが、同時に、FRPの足をひっぱることも忘れ得なかった。つまり「負けてない!」ってことなんだろw
しばらく有耶無耶にされていたが、お絵かきアプリもまだ書けないといか書かれているのを目撃した岡部氏が、すでに実装していた自作FRPライブラリでお絵かきアプリを示して、
ついでに、ハードルを引き上げた。
nonstarterの言うとおり、
岡部氏が示したFRPコードと同等のかんたんさで、OCamlでも出せるはずだ。
http://anond.hatelabo.jp/20160520153948
nonstarterのいうことが嘘ハッタリじゃないのならば、さっさとOCamlの関数型状態渡しでToDoリストアプリ書いて見せればいいだけ。
出来ない時点で終わってる。
nonstarterはこの発言の時点では、Ocamlの関数型の状態渡しに限界があることはお首にもだしていない。読んだものはそうだったのか、何でもできると思って不思議ではないだろう。
しかしなぜか、Haskellが急に登場する。別の言語の助けを求め始めた最初がここ。
そのうち、OCamlの実際的な環境じゃスケールしないという指摘がはいる。
nonstarterは、複雑性への限界を認めるが、同時に、FRPの足をひっぱることも忘れ得なかった。つまり「負けてない!」ってことなんだろw
しばらく有耶無耶にされていたが、お絵かきアプリもまだ書けないといか書かれているのを目撃した岡部氏が、すでに実装していた自作FRPライブラリでお絵かきアプリを示して、
ついでに、ハードルを引き上げた。
nonstarterの言うとおり、
岡部氏が示したFRPコードと同等のかんたんさで、OCamlでも出せるはずだ。
もちろん、他のHaskellやFRPは使うな、という至極当然の縛りつき。
そもそもの最初がesumiiやlambadaなどのOCamlユーザへむけての課題で、
nonstarterが、
と急に何故かいきなりHaskellを持ち出し、Haskellのコードを引っ張り出した。
いろいろとっちらかしてんじゃねーよ、ってことだろ。
OCamlではライブラリも足りず机上の空論だったという、ひとつの区切りはついた。
とこの点について「一般化」を試みた、誤魔化そうとしたのは、nonstarterだ。
「OCamlでは」普通に副作用を使うライブラリしかないからスケールしない、って書いてあるのに
なんで勝手に一般化して、Haskellとかでもスケールしないことにしたいの? 本当に牽強付会のオンパレードですね。
http://qiita.com/nonstarter/items/2763f5d85f2b8df3b18b#comment-d9a8cdf2efc67044c158
>OCaml の全ての GUI ライブラリは状態は副作用を使うことを前提にメインループが設計されているからです。これを乗り越えるとすると @Lambada さんのようにメインループ自体を自分で書く事になり、一般的にはスケールしません。Haskell の GUI ライブラリでは普通は状態は State なり IO を含む GUI モナドを使って書く事になりますが、そのような GUI ライブラリを OCaml 上で作れば同じような事が出来るはずです。OCaml でそこまで純粋関数型のコードを書く事に実用的意味があるとは思えませんが。
あのさ、それ
とか、言い切って、別の人間からスケールしない、とつっこまれた後だから。
最初の時点で「限界がある」と自覚しているのに、学習者や読者にむかって何も言わない隠し玉してたのか、
本気で何でもできると思ってたのかまでは不明。
いずれにせよ、突っ込まれて自ら限界を認めた。ついでにFRPの限界も同じに設定したっぽい。
ちなみに私の知っているFRPはHaskellの各種FRPライブラリとか
HaskellのIOモナドが「IOアクションを生成する純粋関数型プログラム」なのと同様、
http://qiita.com/nonstarter/items/2763f5d85f2b8df3b18b#comment-d9a8cdf2efc67044c158
いずれにせよ、状態機械の数学的構成では状態遷移が状態と入力から状態への関数として表現されるというだけのことではあり(状態渡し)、
状態遷移が複雑になれば状態遷移を純粋な関数として表現する作業も複雑になり困難になるので(そしてそれはしばしば綺麗な関数合成では上手くいかないようなものになることが多いので)
って自分で(状態渡し)は困難になる、「状態渡しはスケールしない」って認めちゃってるんだが、
nonstarter氏のエントリについても、kenokabe氏は
>>(イベントのシグナルから状態のシグナルを構成する際に状態遷移をそうした関数で表現する必要が出てくるので)
>まあ、この人物がFRPが何たるか理解していないのは、ほぼ確実でしょう。
などと言っていますが、「イベントのシグナル」(各時間ごとの入力の列)から「状態のシグナル」(各時間ごとの出力の列)を「構成」する、
平たく言えば前者から後者への関数を定義しようとすると、例えば前者をe1,e2,e3,...、後者をs1,s2,s3,...として、
多くの場合はs1とe1からs2を求め、s2とe2からs3を求め、s3とe3からs4を求め…となるので
s4 = f(s3,e3)
...
なるfを考えれば、そのfがまさに状態渡しを行う遷移関数そのものになります。
このことはnonstarter氏のエントリでもHaskellのFRPライブラリで書かれたGUIプログラムの実例を用いて具体的に説明されているのですが、
これのどこをどう読んだら「状態渡しはスケールしない」になるんだ……
ひょっとして状態渡しをモナド化したのがStateとか、基本的なことを全く理解していない?
http://qiita.com/nonstarter/items/2763f5d85f2b8df3b18b#comment-d9a8cdf2efc67044c158
「OCaml の全ての GUI ライブラリは状態は副作用を使うことを前提にメインループが設計されているからです。これを乗り越えるとすると @Lambada さんのようにメインループ自体を自分で書く事になり、一般的にはスケールしません。Haskell の GUI ライブラリでは普通は状態は State なり IO を含む GUI モナドを使って書く事になりますが、そのような GUI ライブラリを OCaml 上で作れば同じような事が出来るはずです。OCaml でそこまで純粋関数型のコードを書く事に実用的意味があるとは思えませんが。」
何度も指摘されているが「岡部氏のFRP」は同じメンバ変数tに何度も値を上書きしてるだけの
FRP以前に関数型でもない普通の命令型プログラム。いくら論文を曲解したり哲学とか言い訳しても
客観的には単なるメンバ変数への破壊的代入。オブジェクトにconstをつけたところで
じゃあOCamlで純粋関数型や(本当の)FRPで複雑なGUIアプリが書けるかと言うと、
誰もそういうライブラリを整備してないから、ライブラリから作るのは
まあ面倒だろうし、わざわざ非純粋関数型言語で純粋関数型のGUIを作る動機も
現時点ではまずないだろう。これもすでに指摘されているとおり。
http://elm-lang.org/examples/time
view : Model -> Html Msg view model = let angle = turns (Time.inMinutes model) handX = toString (50 + 40 * cos angle) handY = toString (50 + 40 * sin angle) in svg [ viewBox "0 0 100 100", width "300px" ] [ circle [ cx "50", cy "50", r "45", fill "#0B79CE" ] [] , line [ x1 "50", y1 "50", x2 handX, y2 handY, stroke "#023963" ] [] ]
HaskellのライブラリもElmのような言語も、サンプルもJavaScript実装も
https://en.wikipedia.org/wiki/Functional_reactive_programming#Implementations
江添○
キャラクターの名前がプログラミング言語だなけのコマ割りされた絵にどれほどの価値があるというのか。
このままエバンジェリストという肩書きの価値が毀損され続けていって、最終的に「エバンジェリストという呼び方はダサいから皆さんやめましょう」みたいなところまで行ったらちょ○どエバンジェリストを評価できる
みす○
最悪なことにエバンジェリストという単語を某氏を表すために使うことが可能になってしまった
みす○
そういえばエバンジェリストにブロックされてるし、ブロックされてる人たくさんいるっぽいけど大丈夫なのか?
あづ○
nakfi○ a.k.a. nori○
nakfiv a.k.a. noriPさんがはっち○@イカ勢をリツイートしました
M○のエバンジェリストについては全体的にそれほどステータスではないという印象。むしろイメージとしてはマイナス(火に油を注ぐ
そけ○
yado○arielectric
新卒でたった2年でエバンジェリストか、顔が可愛い女性は人生で得するんだね。
顔が落第のブスがC#腐女子と名乗っていたら、果たしてM○は入社させたり、エバンジェリストを名乗らせたのかね?
やぷら○
エバンジェリストっていうか日本人にはよく分からないから"プリンセス"とかどうですか?
matt○
人権尊重され太○
エバンジェリストを名乗るには製品の利点と欠点を正しく説明できる必要があると思うんですけど、例の人があるポイントが利点である欠点である理由をちゃんと説明できる人材かと言われると絶対違うよね
おっさんエバンジェリストは多すぎて、エバンジェリストの価値がない模様
みす○
これはぼくの妄想なんですけど、インターネットで姫活動して影響力もっただけでエバンジェリストになれるんですね…
にん○
件の人がエバンジェリストになっても、リーチ出来るのは若者じゃなくて囲いのおっさんなのではって気が
r.tamur○
ここ最近のM○の素晴らしさを説いて身にはエバンジェリストの件は残念、ただただ残念です。
ちゅー○
ちゅー○さんHaskellの野良エバンジェリストって言われた事があるけど喜んで良いのか良くわからなかった。
エバンジェリストってなんだっけ感は有る
My C○
M○KKに雇われた姫「(M○の宣伝)なんですよ~」Micr○softエバンジェリストより給与の低いエンジニア「なるほど~」
め○
うーん、あのM○のエバンジェリストの件、こけそうな気がするけどなぁ。
これ普通にMicr○softのエバンジェリスト各位の信用にかかわるのでは……
道仂○@Sシャープマーカー使い
ぶっちゃけ M○ のエバンジェリストってほとんど知らない。布教する以前に布教するマンの知名度がないの、全然仕事にならんだろうし、もっとコンテンツ力の高い芸人さんを増やして欲しい。
牛ま○
A○
絵が描けるTwitter芸人で、ある程度プログラミングをしていればエバンジェリストがワンチャンということか
ウカヤ○
こりゃ来年あたりにはyoutuberからM○エバンジェリストが出てきてもおかしくないな
ウカヤ○
M○のエバンジェリストってTwitterで使ってます〜アピールしとけばなれる程度のやつだったのか
少なくともこのルックスと能力でエバンジェリストでしょ、マスコットみたいなもんだし月300時間激詰めとかされることはないでしょ。給料はいいだろうし。
にゃはは○
でもエバンジェリストが宣伝して、じゃぁこういうのはできるんですかって言われた時に、いやわかんないですって返ってくると、それ大丈夫なん、、、って採用見送るとかあるのでは
Kohei YOSHID○
テック企業のエバンジェリストが技術に明るくなくてよいのなら堀北真希を採用してくれ
ぱんた○
わかるか、真摯に技術と向き合わないエンジニアでも女で顔が良ければチンポ騎士団に囲まれてM○KKに入社できるのだ
ミァハちゃ○
こう、M○KKエバンジェリストの話題が出て炎上すれすれの呟きを行うプレイヤーの出現を、
ドロシーさんチ○チン無くないですか(笑
ぼくもM○KKに「あの人よりちんぽ舐めるの上手いですよ!!!!」ってアピールして雇ってもらうか
Taro ○atsuzawa(組長)
M○KKは世界に線を引いたのだ。姫のいる世界とそうでない世界を...
Taro ○atsuzawa(組長)
M○KKは身辺調査したって姫本人が書いてるんだけど、さすがに交友関係とかは特殊な所以外は見つけてもスルーするだろう。それこそ差別とかの対象になる。ただ、それ以上に近づかないようにしようって思わせるチカラが強いことに気づかない、むしろチンポナイトを取り込むという姿勢は評価できる。
文殊○
M○KKもソーシャルブックマークサービス(ちょ○どの彼氏はブックマーク出来ない)を始めよう
なんちゃらようへ○
ちょ○ど氏M○KK入社おめでとうございます!!となりのブスもきっと喜んでると思います!!!!
ちょ██女史がM○KKの姫に成り上がった日に北条かやの没落。対比は文学の基本だよね!
たっくま○
chmod氏M○KKにエヴェンジェリストで入社ですかそうですか。M○エヴェンジェリストの肩書がストップ安しませんかねこれ、要はアイドルの肩書だってことでしょ
♥○
♥
M○KK には姫を雇える余裕があるのか
どらい○
俺もM○KKの人事になって姫の枕営業受けてぇなぁ
弱い○
台湾にならってM○KKも姫を擁するようになった?
た○ゆら ~食行写真~
えっMSKKなんかやらかしたののと思って事情を見たらなるほどこれはw
A○
M○KK本当に最悪。
M○KKのイメージみんな良かったんですか??????信じられないです
cocoonう○
みんなちょ○ど某がM○KKに入ったことを基本的に批判的に見ていて、意外とこの業界でもあのひと嫌われてたんだなあと思いました。ITギョーカイとやらの知能は幼稚園児並みではなかったのですね。
誠○
M○KK、エヴァンジェリストを中途採用するだけの会社というイメージができつつある。
ぷりんた○
M○KKの姫になったことで格が上がったと書きそうになったけど、M○KKの名が落ちた感があるのでそんなこともなくなった
文殊○
M○KK何やってんの
蟹の赤ちゃ○
ちょ○どさんM○KK入社おめでとうございます.ところで痴話喧嘩の末に死に追いやり,その後しれっとFacebookのフレンドから削除していた元カレの南山まさかず君の遺品の『型システム入門』はちゃんと読みましたか? エバンジェリストのみならずエンジニアとしての成功も祈念しております.
unagi○
M○ のやるべきことについて M○KK は梯子を外されてるからああなってるんだと思う。
マ○
起きたらM○KKが最悪の会社になっていた
めびなんと○
M○KKの技術に対する姿勢が可視化されて結果的に良かったのでは
almost 100 % correc○
M○KK が姫チーム作って姫を必要とするイベントにガンガン M○ の宣伝しに行くの本当にディストピアって感じがする
ssig3○
リクルートみたいな会社がちょ○ど使ってゴミを集めるのはまあ理解できるけど、マイク○ソフトがそれやるのはマイク○ソフトの不利益でしかないし本当に M○KK はゴミだめだと分かる
502b○
社会の歯○
M○KKには失望した
きみとぼ○@研究室決まった
@nanTosaka2 まぁ、M○KKとしてはMVPとかにして広報に使いたい所だけど、MVPの審査はM○本社がやってるので、なかなか出来ない、それならもう雇えばいいじゃんって感じですかね
almost 100 % correc○
すごい話だなーとは思うけど、M○KKには関わらないようにしよう
豊○
ちょ○どみたいな姫気質のある人間は外ヅラばかり気にしているから本質的な能力ツリーを疎かにしたまま業種をただのファッションとして利用することばかり考えるし絵を描いても顔以外はドヘタクソのまま成長しないし彼氏を自殺に追い込んでも以後の立ち回りが上手いからのうのうと生きることが出来る。
みす○
まだ南山まさかず氏の元カノのツイート反応あるので一応明言しておくと、世の中おかしいよなっていう風に思うだけであって個人を批判する意味やそれの是非については一切の評価はしてないです。しているように見えたとしたらそれはぼくの妄想の上での評価です
やぷら○
でもまあ南山まさかず氏のことについて触れただけでブロックされたのは事実だよね
伊東瑞○
そういえばちょ○ど姫様は南山まさかずを追い詰めた時の様な式神の使い方を覚えたようですね。式神を使い他人を追い込むことになんの抵抗も無いようで
それがし○
オタサーの姫的ポジションの人が出世した場合のオタクの反応を見ている。>ちょ○ど
しかしまあフォロワー数5000のアルファーとTwitter痴話喧嘩したら絶対に勝てないというのが新しい知見として得られた
:echo 1 / 0 :echo 0 / 0
2147483647 -2147483648
きっしょwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
他の言語もチェックしてみるか
package main import "fmt" func main() { fmt.Println(1 / 0) fmt.Println(0 / 0) }
echo 1 / 0; echo 0 / 0;
PHP Warning: Division by zero。
print 1 / 0 print 0 / 0
ZeroDivisionError: integer division or modulo by zero
print(1 / 0) print(0 / 0)
ZeroDivisionError: division by zero
nodejsだと1/0と0/0で異なるメッセージが表示された。
console.log(1 / 0);
Infinity
console.log(0 / 0);
luajitだとnodejsで表示されたメッセージの短縮形で表示された
print(1 / 0)
print(0 / 0)
main = do print(1 / 0)
Infinity
main = do print(0 / 0)
public class Test { public static void main(String[] args) { System.out.println(1 / 0); } }
public class Test { public static void main(String[] args) { System.out.println(0 / 0); } }
Exception in thread "main" java.lang.ArithmeticException: / by zero at Test.main(Test.java:3)
#!/bin/bash echo $((1 / 0)) echo $((0 / 0))
test.bash: 行 4: 1 / 0: 0 による除算です (エラーのあるトークンは "0") test.bash: 行 5: 0 / 0: 0 による除算です (エラーのあるトークンは "0")
haskellとnodejsとluajitはエラーにならないけどまあいい。
Vimはやべえよ。
なんであんななんでもかんでも詰め込んでるの?
implicit conversion とか generalized type constraints とかそんなに使うか?
みんな全部ちゃんと理解して覚えて使いこなしてるの?
そんな訳ないよね?
趣味でやってる個人はともかく、会社でチーム全員が本当に使いこなしてたりするわけ?
それどこの会社?
言語仕様やIDEでいくら生産性上げてもコンパイル遅いから台無し。
正直ここ10年くらい何使ってもコンパイル速度なんて気にしたことなかったけど Scala のコンパイルの遅さは異常。
使ってる奴らは「Scala あるある」とか言ってそうだけどはっきりいって池沼。
言語仕様ってのは golang とか Haskell くらいのが美しいんじゃないの。
Scala は引き算的な設計判断が出来てないだけじゃないのかって思うわけ。
なのになんかもてはやされてる。
でも Scala は頭いい人達が使って絶賛してるからリアルな世界では dis れない。
Scala 怖い。
ここは日本だぞ?
つーわけで俺はもう Java8 使うわ。
ラムダ!!
何が得意なのか謎、もしくは特化した言語を持たない人は不明と書いている。
褒めだろうが悪口だろうが質問でもなくても何でも回答してくれる。
このクラスはask.fmを愛するプロフェッショナルな人しかなれない。
Python | http://ask.fm/hamukazu |
C++ | http://ask.fm/EzoeRyou |
Haskell | http://ask.fm/tanakh184 |
回答率が下がるがそれなりに回答を付けてくれる。
C# | http://ask.fm/chokudai |
C++ | http://ask.fm/nico_shindannin |
Java | http://ask.fm/hyuki0000 |
不明 | http://ask.fm/chomado |
質問を選びすぎて回答率が低い。
PHP | http://ask.fm/tokumaru |
Vim | http://ask.fm/ShougoMatsu |
PHP | http://ask.fm/anatoojp |
リストラ予備軍。
Vim | http://ask.fm/mattn_jp |
不明 | http://ask.fm/KensukeFurukawa |
不明 | http://ask.fm/todesking |
なんかこう、最初は過去に飛ばされて未来に戻ろうと冒険する感じの夢だったはずだけど、
ただ届けるために走っていたのに「あいつら泥棒だ」なんて言われて悲しかった。
うどんを届けたら男の人がやってきて、名刺を見るとHaskell使いの人のようだった。
「まさか[ここに名前(フルネーム)]さん?」と言ったら首を掴まれ、
「違う、確かに私はその人と同じ名字だが別人だ」と怒られた。
その後、何度か首を掴まれながら話は続き、
最後に「我流とみんながやっているやり方、どっちがいいと思う?」と聞かれ、
「そりゃあみんながやっているやり方のほうが…それに私の.vimrc短か」と言ったところでまた首を掴まれ、やっと目が覚めた。