タグ

haskellに関するsupermomongaのブックマーク (20)

  • Haskellで書かれたおもしろいFizzBuzz ― Haskellで読めないコードに遭遇した時に解読する方法を徹底解説! - プログラムモグモグ

    Haskellには抽象的な高階関数や演算子がいくつもあり、たまにそれらを巧妙に用いたコードがでてきて感心することがあります。 他の人が書いたHaskellのコードを読んでいると、なかなか面白いものと遭遇したりします。 巧妙に書かれたコードを解読していくと、実は型クラスのinstanceをうまく組み合わせて使っていて、とてもよい教材になることがあります。 実際にアプリケーションコードを書いていてここまで技巧的なコードを書くわけではありません。しかし、こういうコードを読み解くのは型クラスのいい練習になりますし、それまで知らなかったinstanceと遭遇したりしたときは、とても勉強になるのです。 このエントリーでは、とても技巧的なFizzBuzzを紹介し、それを読み解いていく方法を紹介します。 Haskellの初心者向けに、どういうふうに関数や型を調べて言ったらいいかを丁寧に書いています。 Ha

    Haskellで書かれたおもしろいFizzBuzz ― Haskellで読めないコードに遭遇した時に解読する方法を徹底解説! - プログラムモグモグ
  • 就職しました - モナドとわたしとコモナド

    日、Tsuru Capitalのポジションを得ました。 Tsuru Capitalはデリバティブの取引を行っている企業で、自動株取引の会社ではありません。取引に関わっている10人のメンバーのうち、創始者であるSimonを除く全員がHaskellerで、取引状況の分析や一部の取引の自動化など、あらゆるところにHaskellを使っているのが大きな特徴です。日では数少ない、Haskellをメインに使っている企業の一つでもあります。 東京、シンガポール、バンクーバーにオフィスがあり、東京には私を含む5人の開発者と事務担当、Simonと愛犬テトがいます。 オフィスはオランダヒルズ森タワーRoPにあります。設備が非常に充実しており、東京に引っ越すまではオフィスに週数度の頻度で泊まっていました。風呂上がりにジンジャエールをラッパ飲みしながらサーバールームの熱風で体を乾かすと、すごく気持ちが良いです。

    就職しました - モナドとわたしとコモナド
  • シンプルでかつ最高のJavaScriptプロファイラ sjsp を作りました! ― Webアプリケーションが複雑化する中でプロファイラに求められるものとは何か - プログラムモグモグ

    あらすじ Web技術が複雑になる中で、JavaScriptのプロファイリングをとる方法とは。 プロファイリングを取るためのコードを手で書いてみましょう。 とてもシンプルで、かつ最高のJavaScriptプロファイラ sjsp を作りました。 当にあった怖い話 上司 「とにかくJavaScriptのコードを速くしてくれ」 私 「分かりました、速くします」 (次の日) 私 「いいプロファイラがないなら作ればいいじゃない」 同じチームの人 「えっ?」 私 「最高のJavaScriptプロファイラ作ったよ」 同じチームの人 「「えっえっ???」」 私 「早速使ってみたらこことここが遅いって分かったよ」 同じチームの人 「「「この子は一体…」」」 JavaScriptのプロファイリングの難しさ 近年、Webブラウザーの処理速度は著しく向上し、その可用性の高さから、アプリケーションのプラットフォーム

    シンプルでかつ最高のJavaScriptプロファイラ sjsp を作りました! ― Webアプリケーションが複雑化する中でプロファイラに求められるものとは何か - プログラムモグモグ
  • Halcyon — System for installing Haskell apps

    Halcyon is a system for installing apps and development tools, including and . Follow the Halcyon tutorial to get started. Features Simple Halcyon uses regular Cabal packages, sandboxes, and repositories. Halcyon does not require GHC to be installed, as it can install the right version of GHC for the app. Fast Halcyon archives and caches all build products, optionally uploading archives to externa

  • Haskell Platform

    Haskell Platform The Haskell Platform is deprecated The Haskell Platform is deprecated since 2022 and is no longer the recommended way of installing Haskell. For the latest recommended way to install Haskell please see the Downloads page.

  • Haskellによる並列・並行プログラミング

    並列・並行プログラミングはプログラマの重要な関心事であり、常に注目を集めている話題です。これまで、関数型言語は並列・並行プログラミングに有利であると言われてきましたが、それを説明する書籍はありませんでした。書では、純粋関数型言語Haskellが提供する並列・並行プログラミングの機能を俯瞰し、実践的な問題を解いていきます。その根底にある考え方は、関数プログラミングの核心であるモジュラリティです。また書では、実際の問題を解決するときに陥りがちな落とし穴や、高い性能を出すためのtipsなどをまとめています。 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正が施されている場合がありますので、書籍最終ページの奥付でお手持ちの書籍の刷版、刷り年月日をご確認

    Haskellによる並列・並行プログラミング
  • GitHub - tmishima/Hinecraft: This is a simple Minecraft Clone (DEMO) written in Haskell.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - tmishima/Hinecraft: This is a simple Minecraft Clone (DEMO) written in Haskell.
    supermomonga
    supermomonga 2014/05/08
    Haskell製のMinecraftクローン。しゅ、しゅごい…
  • IIJ Research Laboratory

    ネットワークの計測と解析 インターネットの使われ方やネットワークの挙動を把握する事は、ネットワークを運用し、その技術開発を行う ために欠かせません。しかし、観測で得られるデータ量は膨大ですがノイズが多く、また、観測できるのは極めて限られた部分でしかありません。そこで、膨大なデータから意味のある情報を抽出したり、部分的な観測からより一般的な傾向を推測する事が必要となります。... インターネット基盤技術 速くて、安全で、信頼性が高く、使いやすく、など、インターネットサービスへの要求はますます高まっています。これらの要求に応えるために、インターネットの 基盤技術も日々進歩しています。いまやインターネットはつながるだけのサービスではなく、高度で複雑な機能を備えた社会基盤となりました。IIJ技術研究所は、インターネットの基盤として実現が期待される機能を提供するために、さまざまな技術課題に取り組んで

  • 経験15年のOCaml ユーザーが Haskell を仕事で半年使ってみた - camlspotter’s blog

    今の会社に移って半年経ちました。めでたく試用期間終了です。といっても別に試用期間中に密かに首を切られるような事をしたとか、逆に試用期間が終わったからと言ってこれで定年までのうのうと働ける、という訳ではありません。未来は全く判りません。まあとにかく、一つ区切りがやってきました。 金融を知らないQuantsの仕事 私の職業の肩書きには Quantitatitatitatitative という単語がくっついて超カッコよさそう。普通は Quant というと、金融工学や統計数理に詳しい夜もブイブイいわしている超イケメン20代を想像しますが、私は金融とか全然知らないアラフォーお父さんです。それでも Quant です。お願いですから、私に何を買ったらいいかとか、聞かないでください。金融商品とか買った事ないし。というか、逆に教えて欲しいです。 私のチームは、当の Quant さん達が開発した、金融派生商

    経験15年のOCaml ユーザーが Haskell を仕事で半年使ってみた - camlspotter’s blog
  • 数学プログラムを Haskell で書くべき 6 の理由

    筑波大学計算機数学グループ春の館山合宿での講演「数学プログラムを
Haskell で書くべき6の理由」の発表資料。実際の講演映像は https://www.youtube.com/watch?v=S4_7KVNA-Ww Read less

    数学プログラムを Haskell で書くべき 6 の理由
  • 本物のプログラマはHaskellを使う:ITpro

    筆者 shelarcy Haskellは,関数型プログラミングというジャンルに属する言語です。Haskellや関数型プログラミングを題材に物事を見ていくことで,今まで思いもよらなかったような未知の世界を知ることができるでしょう。 プログラミング言語を学ぶという行為には, 言語の基的な文法や考え方を理解する 言語の文化圏で広く使われている考え方に親しんでその言語らしい書き方を習得する 単に言語を使ってできること以上の知恵を学ぶ の3段階があります。この連載では,三つ目の段階を目標に,Haskellプログラミングの世界を一つひとつ丁寧に紹介していきます。 更新は毎月第1水曜日(1月のみ第2水曜日)

    本物のプログラマはHaskellを使う:ITpro
  • Yi - HaskellWiki

    About Yi is a text editor written in Haskell and extensible in Haskell. External links Website: http://yi-editor.github.io/ Repository: https://github.com/yi-editor/yi Hackage page: http://hackage.haskell.org/package/yi IRC channel: #yi on Freenode

  • Haskell使いの高頻度取引の会社にお邪魔した

    先日、日経コンピュータ特集記事の取材で東京都内の某所にある「Tsuru Capital」という、高頻度取引(HFT、High-Frequency Trading)を手掛ける企業のオフィスにお邪魔した。 HFTというのは、プログラムによって株式などの金融商品を数ms(ミリ秒)から数μs(マイクロ秒)で高速に自動取引すること。自己資金で取引する「プロップファーム(proprietary trading firm)」と呼ばれる企業が中心で、米GETCO(2013年7月に米Knight Capitalと合併)などが有名だ。 HFTを行うプロップファームの多くは、米国など海外に拠点を置いており、Tsuru Capitalのように日国内に拠点を置く企業は珍しい。株式売買では、海外企業であっても国内の証券会社と契約し、自社の取引プログラムをその証券会社のサーバーに配置すれば日市場でのHFTは行える。

    Haskell使いの高頻度取引の会社にお邪魔した
  • モナド: お前はもう知っている | Webシステム開発/教育ソリューションのタイムインターメディア

    はじめに 過去に私がHaskellを学び始めた時、 真っ先に疑問に思ったことはモナドの存在だった。 当時は全くと言っていいほど理解できなかったが、 最近Haskellを学び直して ようやく理解することができた(と思う)。 という訳で、現時点での私のモナドへの理解を示すためにこの記事を書く。 ここではモナドの質が何なのか概要を示す。 正確な説明は数多あるモナドについてのチュートリアルを参照されたい。 Hellow World問題: IO, Monad, fail 新しい言語を学ぶ時、まず間違いなくHello Worldを書くだろう。 HaskellでHello Worldを書くとこうなる: この1行だけを見ると普通の命令型言語と大して変わらないように思える。 ところでHaskellには強力な型推論がある。 そのため型宣言を省略しても処理系がよしなに解釈してくれる。 ただ普通はコードの意図す

    モナド: お前はもう知っている | Webシステム開発/教育ソリューションのタイムインターメディア
  • HugeDomains.com

    scarcecapital.com is for sale Please prove you're not a robot

  • ClojureではじめるSTM入門

    4. STMとは Software Transactional Memory ソフトウェアトランザクショナルメモリは、データベーストラン ザクションに似た並行性制御機構であり、並列計算を行う際の 共有メモリへのアクセス法である。 この機構はロックベースの同期を用いた並行性制御の代替手段と して機能し、ノンブロッキングな方法で実装される物もある。 Wikipediaより 楽観的: 他のスレッドを気にせずとりあえず実行してみる 変なことになったらリトライする 最近盛んに研究されている(らしい) 5. ロックの利点と欠点 利点 いつロックを取得し、解除するかを陽に制御できる 開発者にとって馴染みがある方法 多くのプログラミング言語でサポートされている 欠点 ロックのとる順序によってデッドロックが起こる 優先度逆転が起こる composableでない

    ClojureではじめるSTM入門
  • 手続き脳によるHaskell -- Sorting Algorithms

    このページは手続き脳から脱却でいない筆者が、Haskell による各種 ソートティングアルゴリズムを実装してみた結果を紹介するページです。ソート はアルゴリズムの基ですから、これで Haskell を攻略しようというわけ です。 ところで、Haskell に関するWebページを巡回していると、高階関数やモナド などを複雑に使ったアクロバチックでアブノーマルなコードに出会うことが しばしばあります。書いている超頭の良い人達は自らの変態さ加減が披露出来て 快感なのかもしれませんが、頭の悪い私にはそんなコードは理解できません... orz。 そこで私のページでは次のスローガンでプログラミングを行います 普通にやれ、普通に! そんなわけで「モナドを理解したい」とか常人には不可能な無理難題を期待 している人は他のページを当たってください。筆者自身が分かってないので解説 できません。ごめんなさい。

  • Haskellのカッコいいところを紹介してみる - hnwの日記

    あけましておめでとうございます。年もよろしくお願いいたします。 唐突ですが、Haskellを少しやってみたので、その感想を書いてみます。 僕は正月休みにHaskellでProject Eulerに挑戦していました。これは、数学っぽい問題をプログラムを書いて解いていくサイトです。数学は再帰的な定義が多いため関数型言語が向いているだろうと考え、ほぼ未経験のHaskellを試してみました。 解けそうな問題から50問解いてみましたが、随分スラスラ書けるようになってきた気がします。また、書いていると不思議と気持ちがいい言語だという印象を受けました。気持ちよさは複合的なものだと思いますが、その要因になっていそうな特徴を紹介してみます。 数学英語の知識で「読める」表現が多い いきなり印象論なんですが、Haskellのコードは初見でもそこそこ読める気がします。中の人が読みやすさを大事にしているためだろ

    Haskellのカッコいいところを紹介してみる - hnwの日記
  • Python のカッコ無いところを紹介してみる - methaneのブログ

    Haskellのカッコいいところを紹介してみる をみて、 Python と比較してみようと思います。 以下、 heading は上記記事の heading の引用で、 Python のことではなく Haskell の特徴です。 数学英語の知識で「読める」表現が多い 一応、 instanceof など多くの2引数関数が、 infix で書いたら左に来るものが第一引数というルールを守っているので、頭の中ではそれで引数の順序を補完して、 if instanceof(x, int) は "if x is instance of int" と読んでいます。引数の順序がどっちだっけ?と迷うことはほとんど無いです。 しかし残念ながら Python は中置記法はありません。構文をシンプルに保つ方を取っているんでしょうね。 import Data.List import Data.Function xs

    Python のカッコ無いところを紹介してみる - methaneのブログ
  • HaskellでJSON Web APIを作ると幸せになれるかもよ - Fujimura

    先日Yesod勉強会第2回でHaskellでJSON Web APIを作る話しをしました。 内容的には下記のような感じです。 Web開発はクライアントサイドの技術が発達して、Web APIを作る機会が多くなった最近のフロントエンドは難しいし、分業したほうがいいっぽいYesodは独自技術&フルスタックすぎて分業辛いではscotty + persistent + aesonでJSON Web API作ろうぞなんか想像以上の相性の良さ。幸せになれそうなイキフンがビシビシ来てる発表資料はこちら。 ちなみにscottyはsinatraみたいな奴、aesonはJSONライブラリ、persistentはORマッパーです。 何しろaeson + persistentの相性がバッチリでした。発表後に@thimuraさんが見つけた じつは persistent のスキーマ定義で、テーブル名の横に js

    HaskellでJSON Web APIを作ると幸せになれるかもよ - Fujimura
  • 1