タグ

2019年9月7日のブックマーク (15件)

  • Windows上のVisual Studio CodeでHaskellを書く環境を整えたい - Haskell勉強会

    普段はWindowsでVisual Studio Codeを使っています。 Haskellの練習をするときも、使い慣れているVS Codeが使えたらいいな、と思いました。 Haskellを書きやすくするためのプラグインがいろいろあるみたいだけど、導入や設定の方法がよく分かりませんでした。 一応、検索して見つけた参考情報をメモっておこうと思います。 (後で試行錯誤してみて、うまくいったらまとめ記事にしてみる?) Haskell Language Server haskell-ide-engine 等というツールを利用するらしいです。 marketplace.visualstudio.com github.com qiita.com qiita.com

    Windows上のVisual Studio CodeでHaskellを書く環境を整えたい - Haskell勉強会
  • 圏論の教材 - Haskell勉強会

    Haskellのを読みつつ、興味が湧いたのでLispのも読んでいました。 型の話抜きで、関数型プログラミングの基礎を学ぶ場合、Lispもあり? Lispは関数型言語の先祖であり、マクロという便利な道具もあるので、今でも学ぶ価値はあると思います。 haskell.hatenablog.com haskell.hatenablog.com さて、Lispのを読み終えて、またHaskellのに戻るのですが、知識習得の方向性について、少し吟味。 Haskellのを読んでいると、圏論の話がチラつきます。 Haskell読書と同時並行で圏論もかじってみたいです。(時間的余力があれば) まあ、いずれは避けて通れない道ですね? 圏論の資料 「圏論」について検索したら、いろいろ資料が見つかったのでメモ。 b.hatena.ne.jp 圏論の入門書 圏論の道案内 ~矢印でえがく数学の世界~ (数

    圏論の教材 - Haskell勉強会
    hamamuratakuo
    hamamuratakuo 2019/09/07
    圏論の教材まとめ
  • bitterharvest’s diary

    中学校の同期の仲間たちで、歴史散策と称して都内近郊の景勝地を定期的に訪れている。今回は、横浜の山手・山下地区にバラを見に行こうということになったので、その下見に出かけた。 この地域を、いかにも横浜らしいハイカラな街と感じている人も多いだろう。歴史的な建造物があちらこちらに立っていて、西洋館もある。なぜ、このような街並みができたのだろう。 この地域は、かつては居留地と呼ばれていたことを知っている人は少なくなった。子供のころ、お年寄りの人から、居留地と言われてキョトンとしたことを覚えている。そのころは外国の人を多く見かけるので、そのように呼ばれるのだろう程度にしか認識していなかった。 横浜市のデジタルアーカイブに明治23年の地図がある。中央左側の赤色の台形のところが山下居留地で、さらにその左側の同じく赤色で、裾が広がるようになっているところが山手居留地である。 なぜ居留地と呼ばれるようになった

    bitterharvest’s diary
    hamamuratakuo
    hamamuratakuo 2019/09/07
    圏論の解説記事 図解で分かりやすい (大森健児氏のブログ) 6-5. 圏論とHaskellは仲良し - 大森 健児 - YouTube https://www.youtube.com/watch?v=hbaNIIDPf24
  • 30分でわかるJavaScriptプログラマのためのモナド入門

    「30分でわかる」のは、だいたい、 4. モナド(Monad)とは何か? の読了までを想定しています。 また速い人なら、30分で全部一気に読み通せる分量でもあると思います。 30分以上かかっても一気読みしてしまうことが推奨されますし、一気読みできるように、前に戻って知識の再確認をしなくて済むように、最大限留意して構成を設計した上で執筆されています。 数学と用語問題。モナドの理論的基盤として圏論があるのは事実。理論的基盤がしっかりしているのはプログラミングという数学的作業において歓迎すべきことではある一方で、他方そのため一般的なプログラマにとってはまず用語に馴染みがない。歴史的に、圏論ベースのモナドを理論から関数型プログラミングに応用されていく過程では、実際、先駆者の間でさえ紆余曲折があったのだが、学習者へは馴染みのない用語を伴って、いきなり高度な数学的概念全開で天下り的に提示されてしまうこ

  • もう諦めない圏論入門―対象と射― - Qiita

    想定読者と到達目標 圏論に入門しようと定義などを眺めてみたものの それより先に進む方法が分からない人へ向けて。 具体例を通して、抽象的な定義を受け入れつつ、 自分が何を分かっていないか分かるようにする。 大学数学の知識は特に仮定していないつもりなので、 「圏論を理解できないのは○○が分からないからだ」 みたいな自分自身に対する言い訳を排除したい所存。 ひとまず細かいことは気にせず雰囲気を掴んでおいて、 必要の際1に詳細文献を読めるような下地作りが目標。 目次 圏論入門前の準備運動―集合と写像― もう諦めない圏論入門―対象と射― 具体例を通して圏の定義を受け入れる 直積と余直積に触れて圏を理解した気になる もう諦めない圏論入門―圏と関手― 具体例を通して関手の定義を受け入れる Hom 関手に触れて関手を理解した気になる もう諦めない圏論入門―関手と自然変換― 具体例を通して自然変換の定義を受

    もう諦めない圏論入門―対象と射― - Qiita
    hamamuratakuo
    hamamuratakuo 2019/09/07
    図解で分かりやすい。 "全ての型や関数を考えると理解が追いつかないので、型は CharChar と IntInt と BoolBool、関数は次の ff と gg と hh に限定して考える。"
  • for文がわかるプログラマのためのモナド最速入門 - Qiita

    はじめに 近頃の for 文は、コレクションの要素を直接参照できたり、 yield で評価結果を返せたり、多重ループを一気に回せたり、便利なものが多いですね。たとえば Scala であれば、こんなふうに書けます。 val list = for { a <- List(100) b <- List(10, 20) c <- List(1, 2, 3) } yield a + b + c print(list) // List(111, 112, 113, 121, 122, 123) この for 文のみを頼りに、ときおり関数型プログラマが唱える「モナド」に入門してみよー、というのが記事の趣旨です。 なるべく簡単なコードを挙げながら、できるだけ「圏論」の各種定義やその気持ちまで掘っていくので、前提知識なしで読みすすめられると思います。 Scala の for 文 まずは Scala 使いで

    for文がわかるプログラマのためのモナド最速入門 - Qiita
    hamamuratakuo
    hamamuratakuo 2019/09/07
    String→Char→Int→Boolean
  • プログラマーのための圏論(下) - bitterharvest’s diary

    『プログラマのための圏論』は(上・中)の後の部分をまとめ(下)にしてPDFファイルにしました。参考にしてください。なお、(上)のホームページはこちら。 (中)のホームページはこちら。

    プログラマーのための圏論(下) - bitterharvest’s diary
  • プログラマーのための圏論(中) - bitterharvest’s diary

    『プログラマのための圏論』は(上)の後の部分をまとめ(中)にしてPDFファイルにしました。参考にしてください。なお、(上)のホームページはこちら。

    プログラマーのための圏論(中) - bitterharvest’s diary
  • プログラマーのための圏論(上) - bitterharvest’s diary

    『プログラマのための圏論』はこれまでの分をまとめてPDFファイルにしました。参考にしてください。

    プログラマーのための圏論(上) - bitterharvest’s diary
  • Amazon.co.jp: 圏論の基礎: S. マックレーン (著), 三好博之 (翻訳), 高木理 (翻訳), Saunders MacLane (原名): 本

    Amazon.co.jp: 圏論の基礎: S. マックレーン (著), 三好博之 (翻訳), 高木理 (翻訳), Saunders MacLane (原名): 本
  • 圏論 | 壱大整域

    このページについて ※特に断らない限り、圏はlocally smallであると仮定しています。 ※上から順に読むことを想定しています。 ※定義が書いてない言葉があったりするので、その場合はnLabを見るなりしてください。 ※選択公理は特に断らず使います。 意見・質問・感想・誤字や数学的間違いの指摘などはTwitterまでお願いします。 ★お知らせ★ このページのPDFが紙のになりました。↓のリンクから購入することができます。 全ての概念はKan拡張である: 第0章~第2章(Cauchy完備化は除く) 全ての概念はKan拡張であるII~豊穣圏論~: 第3章 2-category、豊穣圏 ■PDFの量が多すぎると思うので第0章~Kan拡張のPDF(kan_extension.pdf)までの内容を短くまとめたPDFを作りました⇒可能な限り最短でKan 拡張に到達する (2023-09-06更新

    圏論 | 壱大整域
  • 全ての概念はKan拡張である、とは何か - algebraic dialy | 壱大整域

    なにかあったらすぐtwitterに書いてしまうのであまり更新しません [an error occurred while processing this directive] 「全ての概念はKan拡張である」この言葉はそれなりに有名になったと思いますが、これがどういう意味なのか、私なりの見解をここに書いておきたいと思います。 まず「すべての概念はカン拡張である(all concepts are Kan extensions)」というのは圏論の教科書『圏論の基礎(Categories for the Working Mathematician)』(以下、このをCWMと呼ぶ)に書いてある言葉です。CWMの前書き(初版への序)には以下のように書いてあります。 圏論の基概念が終わりの二章にまとめられている.たとえば極限の,より差し迫って必要となる性質,特にフィルター極限の性質,「エンド」の計算,

  • Scalaプログラマが圏論を学ぶためのオススメ文献 - 3選 - Qiita

    圏論は数学の一分野です。これを学ぶのには「数学書」を手に取るのが王道なのですが、残念ながらこれは大部分のプログラマに理解できる言葉では書かれていません。「定義・命題・証明」の積み重ねで書かれています1。ここで大半のScalaプログラマは苦い顔をすると思います。もう少し分かりやすいScalaプログラマ向けの圏論入門がないかと探してみると「Haskell」向けの記事が大量に引っかかるでしょう。ここで多くのScalaプログラマは心を折られてしまいます。「圏論」はまだScalaプログラマには早すぎたんだと・・・ 記事ではそんなあなたに贈る3つの文献をご紹介したいと思います。 (記事は自分のブログからの転載記事です。) はじめに 記事は圏論に興味があるScalaプログラマを対象にしています。特にプログラマにとって実用的な圏論の知識をScalaを通して身につけたい方にオススメします。 プログラマ

    Scalaプログラマが圏論を学ぶためのオススメ文献 - 3選 - Qiita
    hamamuratakuo
    hamamuratakuo 2019/09/07
    圏論の教材 "もっと圏論を学びたい人向けのオンラインで読めるオススメ資料 残念ながら本記事の趣旨には合いませんでしたが、プログラマが圏論を学ぶ上でぜひオススメしたい資料です。" 無料で読める!資料まとめ
  • 【対談】『圏論の道案内 〜矢印でえがく数学の世界』に先立って 記事一覧 | gihyo.jp

    第3回圏と確率の融合・Approximate Computing(近似計算)・自然変換の重要性 西郷甲矢人,成瀬誠 2019-08-20

    【対談】『圏論の道案内 〜矢印でえがく数学の世界』に先立って 記事一覧 | gihyo.jp
    hamamuratakuo
    hamamuratakuo 2019/09/07
    圏論の応用、使いどころを紹介
  • 圏論の道案内 ~矢印でえがく数学の世界~

    このの概要 圏論は最近人気がある数学の分野の1つで,その考え方はプログラミング,人工知能,物理など幅広い分野に応用されています。書はそんな圏論を一から知りたい人に,圏論とは何かをわかりやすく解説していきます。異なるものをどうやってつなげて矢印を引き,同じようなものとして見立てていくか,その過程をじっくり味わってみてください。自ずと,圏論とはそういうことだったのか,とお分かりいただけるはずです。 こんな方におすすめ 圏論をはじめて勉強する人,圏論の考え方を知りたい人 この書籍に関連する記事があります! 第1回 圏論との出会い 第1回は『圏論との出会い』です。 第2回 計測と圏論/合成系を作る 第2回は『計測と圏論/合成系を作る』です。 第3回 圏と確率の融合・Approximate Computing(近似計算)・自然変換の重要性 第3回は『圏と確率の融合・Approximate Com

    圏論の道案内 ~矢印でえがく数学の世界~
    hamamuratakuo
    hamamuratakuo 2019/09/07
    異なるものをどうやってつなげて矢印を引き,同じようなものとして見立てていくか,その過程をじっくり味わってみてください。圏論とはそういうことだったのか,とお分かりいただけるはず。 この書籍に関連する記事