haskell-jp / random #5

( random を占領するのもアレだし、 questions ずは別に「既に曞いたコヌドを添削しお頂く」ためのチャンネルがあっおもいいかも、ず思うなどした
code-review を立おたした
mizunashiさん、別件です、NegativeLiterals に぀いお、脱糖の仕方が倉わるずいうのは知りたせんでした、よくdocumentを読み蟌たんでたすね、すごい

ただ、最近たたたたGHCのLexer.xのコヌドを読んでたのですが、NegativeLiteralsの蚭定によっお、シンタックスに圱響倉化が出るようです。
この拡匵を䜿うず、マむナスの笊号が぀いた数倀リテラルを、カッコなしでも負数ずしお優先的に解釈しおいたす。

https://github.com/ghc/ghc/blob/master/compiler/parser/Lexer.x#L494

䟋えば、通垞は、マむナス蚘号は、数倀の笊号ずしおは解釈されないで、マむナスの挔算子ずしお字句解析されおいるのでこういう結果になりたす。

Prelude> 2 * -1
<interactive>:16:1: error:
    Precedence parsing error
        cannot mix ‘*’ [infixl 7] and prefix `-' [infixl 6] in the same infix expression


ですが、NegativeLiterals拡匵を䜿うず、カッコでくくらなくおも、`-1`のカタマリを数倀リテラルずしお盎接、字句解析しおいたす。

Prelude> :set -XNegativeLiterals
Prelude> 2 * -1
-2


以䞋も同様です。

Prelude> :{
Prelude| f (-1) = "OK"
Prelude| f _ = "NG"
Prelude| :}

Prelude> f (-1)
"OK"

Prelude> f -1

<interactive>:7:1: error:
    • Non type-variable argument in the constraint: Num (a -> [Char])
      (Use FlexibleContexts to permit this)
    • When checking the inferred type
        it :: forall a. (Eq a, Num a, Num (a -> [Char])) => a -> [Char]

Prelude> :set -XNegativeLiterals
Prelude> f -1
"OK"


ず、ここたで曞いお、そういう事を蚀っおるのではない
Oh
 シンタックス解釈に圱響が出るんですね知りたせんでした  特にUsers Guideに蚘茉がなかったので脱糖の仕方を @negative @decimal の時だけ倉えるだけだず思っおたした  Twitterの方は修正しおおきたす

ありがずうございたす :bow:
なるほど僕がドキュメントを読み間違えおいたようですね結果的に脱糖に違いが出るっおこずなんですね

お隒がせしたした
Brickっお公匏Twitterあったんですね
https://twitter.com/brick_haskell/
あ、いえ、脱糖のこずは知らなかったので、面癜くおためになりたした:+1:
iruyanさん、sed での lisp 実装もありたす。
https://news.ycombinator.com/item?id=10221515
https://github.com/shinh/sedlisp
Haskellから離た話題ですが、Lispがらみずいうこずで、たぁ:sweat_smile:
頭おかしい(笑)
syocyさんの、「A tour of Go in Haskell」、 「the most popular links from Haskell Weekly in 2017」で6th:tada:
http://taylor.fausak.me/2017/12/28/haskell-weekly-in-2017/

今幎もHaskell界からの豊富で倚圩な情報で楜したせおもらいたした。
ではこのぞんで、皆さん良いお幎を、Happy Haskell:haskell::bamboo:
江添さんのブログ https://cpplover.blogspot.jp/2017/12/haskell_26.html
のGHCの゚ラヌメッセヌゞの話が興味深いですね。
GHC 8 になったずきに型の刀定の仕方が倉ったんですかねぇ。Release Notes にはそれらしい蚘述がないように思いたすが。。。
型シグネチャヌがないずき、再垰的に定矩する関数に察するプログラマの意図が巊蟺にあらわれるず芋なすか、右蟺の䜿甚に珟れるず芋なすかが倉曎になっおたすよね。
なんず
なにができるのか気になっおたす
GUIアプリケヌションを䜜ろうず思ったんですが、色々詊した結果lts-10ç³»(ghc-8.2ç³»)でビルドできるラむブラリがそもそもないずいうこずが分かりたした(泣いた)
ビルドできるようにprだそう
@fujiyan18 has joined the channel
GUIの件、久々にGtk関係芋たしたが、lts-10.xにはgtk3もgi-gtkも無いし、
extra-deps远加しおgi-gtkをビルドしおも、GHC 8.2.xのバグでpanic起こすし、悲惚なこずになっおたすね :cry:

ずりあえず、lts-10.xでhaskell-giアプリを䜜成するための回避方法ずしおは
https://github.com/haskell-gi/haskell-gi/wiki/Overloading#disabling-overloading
の方法で、overloadingを無効化しおgi-gtkをビルドしお、
こちらで蚘述するアプリの゜ヌスも、OverloadedLabels拡匵を䜿わないスタむルで蚘述する感じですね。
※Window 7(64-bit)/lts-10.2でビルド確認枈

ただ、GHCのバグが解決したら、再びOverloadedLabels拡匵を䜿うスタむルが暙準になるこずを思うず、
今、OverloadedLabels拡匵を䜿わないスタむルの゜ヌスを増やすのも䜕だかなぁ
ずいう感じです  :disappointed_relieved:
QtずwxWidgetのバむンディングはそもそもメンテされおなくお、gtkだけが呜綱ずいう状況がそもそも぀らい  
@goroii has joined the channel
あけたしおおめでずうございたす。
GHC 8.2.xのバグ盎したいですよね。たたにぶ぀かりたすし。
今幎は頑匵っおpatchだしおいきたいです。新幎の抱負ずいうこずで。
https://ghc.haskell.org/trac/ghc/wiki/Newcomers
名叀屋で haskell ...
私もHaskellで働いおみたくはある(˘ω˘)
GHCの数倀リテラル系のsyntax highlightに぀いお曞いおおきたした。
https://mail.haskell.org/pipermail/haskell-cafe/2018-January/128395.html

぀いでに、ほろ酔いしらふです、仕事したす正月ポ゚ムも。
https://qiita.com/takenobu-hs/items/dc85d455fef41c091383

Happy New Haskell! :haskell:
hirataraさん、typo情報有難うございたした。 よく識別できたすねすごい。
遅れたしたが、みなさたあけたしおおめでずうございたす。:clap:
@masako lee has joined the channel
reotaso [11:04 AM]
堎所が違ったら申し蚳ありたせん。


[11:05]
䞀生懞呜曞いたのでご䞀読頂き、䜕かお気付きの点やご指摘がありたしたらごいっぜうください。先生方の気持ちず日本にいるHaskellerの思いを届けたく。䞖界䞭のSPJ含む先生や教授、本の著者ずメッセヌゞをやりずりしたした。

それではただただ続きたすがこちらの件、お目通し、RTのほど䜕卒よろしくおねがいしたす。

Haskell Advent Calender (その)11日目、私が担圓させお頂きたした。
Samuel Gélineau からの返信その1(翻蚳)

https://qiita.com/reotasosan/items/cce796d32105a5f25854 (edited)



masako lee [11:24 AM]
joined general.


kazu [1:07 PM]
䌁業ではなく、起業ではないでしようか


[1:10]
IBMを買はいない の意味が分かりたせん。
盎蚳するず IBMを買っお解雇された人はいない だず思いたす。


masako lee [1:44 PM]
@kazu 山本さんありがずうございたす早速修正させお頂きたす。


masako lee [1:53 PM]
@kazu 山本さん、䌁業の蚳ですが、companyなので䞀般的な䌁業だず思われたす。
仮に起業だずしたら、startupなどの蚀葉を䜿うのかなず思いたす。
ただcompanyは仲間ずいう意味もあるのでSamuelに埌ほど尋ねようず思いたす。

IBMの件に぀いおは、山本さんがご指摘くださったようにIBMを買ったからずいっお解雇された人はいない
プラス意蚳を加えるのであれば、30-40幎前は、コンピュヌタヌず蚀えばIBMずいう時代がありたした。
故に新しい蚀語を採甚するのはリスクが倧きいず刀断されたした。
意蚳は加えた良いでしょうか

ひずたず、IBMに関しおは盎蚳を぀っこみたいずおもいたす。
お忙しいずころありがずうございたす。 (edited)


matsubara0507 [2:24 PM]
@masako lee
Choosing Haskell is still a bold choice at the moment. For example, a friend created a startup and chose Haskell for the backend,


2. Haskellを遞択するこずは、今でも勇気が必芁です。䟋えば、友人が䌁業しおHaskellをバック゚ンドに䜿いたした。


この郚分の「䌁業」のコトでは


masako lee [2:42 PM]
ああそっちのだったんですね。倧倉倱瀌したした。すぐ修正したす。

kazu [2:43 PM]
先ほど携垯から入力したので、蚀葉足らずでしたが、そちらです。

masako lee [2:43 PM]
かしこたりたした。

[2:44]
IBMの補足に぀いおはいかがしたしょう。お手すきの際にお願いしたす。

[2:45]
修正したした

kazu [2:50 PM]
意蚳の加筆は必芁ないでしょう。原文は読者の知性を信頌しおいるような感じですし。:-) (edited)


masako lee [2:52 PM]
承知です。たたお気付きの点がございたしたらお手すきの際にご指摘お願いしたす。ありがずうございたす。

kazu [2:58 PM]
The reason the small number of available Haskellers makes it seem like hiring is going to be difficult is that with popular languages, it is often necessary to interview a large number of candidates before finding one which is worth hiring.


[2:58]
の蚳ですが、

[2:59]
Haskellerの数が少なくお採甚が難しいず思わせる理由は、倚くの人気のある蚀語では、採甚する䟡倀のある人を芋぀けるには、しばしばたくさんの候補者に䌚う必芁があるからです。

[2:59]
ぐらいだず思いたす。

mizunashi-mana [3:10 PM]
“Haskellerの数が少ないために採甚が難しいず思われおしたう理由は” ぐらいがいいのではないでしょうか


masako lee [3:19 PM]
文蚀線集したした。

䟋えば10人のHaskellerをのなかで優秀な人を採甚するのに1人だずしお、
人気蚀語は30人のうち2人か3人ずいう認識であっおたすか

[3:19]
そのくらいHaskellerが少ないずいう問題

kazu [3:42 PM]
他の蚀語ではたくさん合わないず良い人に巡り䌚えないが、Haskellだずすぐ良い人に出䌚うず蚀うこずをマネヌゞャヌがわかっおないず蚀うニュアンスです。


naohaq [3:43 PM]
IBMの件、 "IBMのPCを買ったずいう理由でクビになった人はいない" (だからMacじゃなくおIBMにしおおこう) ずいうような芳点では、Haskell は安党ではないように芋える(Javaずかを遞択した方が安党そうに芋える) ずいう意味を読み取るのにやや時間がかかりたした^^;;


masako lee [3:45 PM]
!here
kazuさんがおしゃる「他の蚀語ではたくさん合わないず良い人に巡り䌚えないが、Haskellだずすぐ良い人に出䌚うず蚀うこずをマネヌゞャヌがわかっおない」ず蚀うニュアンスです。これすごくわかりやすいです。でも前の蚳の方が適しおたすか


[3:46]
!here
IBMの件、 "IBMのPCを買ったずいう理由でクビになった人はいない" (だからMacじゃなくおIBMにしおおこう) ずいうような芳点では、Haskell は安党ではないように芋える(Javaずかを遞択した方が安党そうに芋える) ずいう意味を読み取るのにやや時間がかかりたした^^;;


これに぀いおは、私も悩みたしお、それで先ほど意蚳プラスの
「IBMの件に぀いおは、山本さんがご指摘くださったようにIBMを買ったからずいっお解雇された人はいない
プラス意蚳を加えるのであれば、30-40幎前は、コンピュヌタヌず蚀えばIBMずいう時代がありたした。
故に新しい蚀語を採甚するのはリスクが倧きいず刀断されたした。
意蚳は加えた良いでしょうか」を加えた方が良いか尋ねたした (edited)


[3:50]
!channel
みなさた倧倉恐れ入りたすが、これから仕事がありたすので䞀旊スラックを閉じさせお頂きたす。
倜の10時近蟺にたたお䌺いしたす。お忙しい䞭ほんずうにありがずうございたす。倱瀌いたしたす。
@masako lee Slackにおいお「通知が来る」投皿は「受け手にずっお関係が深い」投皿です。
特にhereやchannelを䜿う堎合は、本圓にそこにいる党員にずっお「関係が深い」投皿かどうか泚意深く考察しおから利甚しおいただきたいず思いたす。
(正盎堎所を間違えるより泚意すべき事項ですね)
わたしは関係が深いずおもいたした。知っお欲しかったからです。
ずりあえず、原則ずしお䜿わない方がいいず思いたす。
@here , @channel ですか
@masako lee general に曞くだけで、党員がその投皿を芋るこずになりたす。僕はそれで十分だったのではないかず思っおいたす。通知には「急かす」圹割も担っおいるので、よく吟味しお本圓に必芁な堎面だけで䜿っおいただけるずありがたいです。
现かいルヌルがわからないので
芏玄に含めおいただけたすず幞いです
はい。ちゃんず興味がある人は未読になっおいれば埌で読みたす。
メンションを送るずきは、重芁かどうかずいうより、緊急性が重芁です。
@ 承知です
承知です
芏玄に含めお頂きたいのでそれはおねがいしたす。すいたせん
ほかにもあるかもしれないし
蛇足ですが、今回であれば本文を曞いた他に別に切り分けでgeneralにこういう議論しおるからよければここに曞いおるから芋おねっおいう颚にするず良いず思いたすね:)
kazuさんが助けおくださっおほんずうに嬉しかったです
みなさんのごめいわくにならないようにしたすね
@
承知です。アドバむスありがずうございたした
改めお䜜ろうかずも思いたしたが、よく考えたらすでに最䜎限のこずは曞いおいたすもっず芋やすいずころに眮くこずは別途怜蚎するずしおも。
@masako lee :point_down: に曞いたこずでは䞍十分ですか
https://haskell.jp/blog/posts/2017/01-first.html
@igrep
あっずhere,channel は緊急性を芁するのできほんNGずか䞀蚀加えおいただけるず・・・
OK, Trelloのアカりントを持っおいれば、ですが続きは https://trello.com/c/zkJRAxtj/77-slack-work-pace%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%82%A8%E3%83%81%E3%82%B1%E3%83%83%E3%83%88
でいいでしょうか
ちょっず芋れないので埌で確認させおください

本圓にシンプルに
これはやめたしょうみたいなかんじでいいんですけど・・・
初心者にはなかなか぀たわりづらいかもしれたせん

トレロはわたしも぀かったこずがありたすので埌でみたす。倱瀌したす。