タグ

haskellに関するmoccos_infoのブックマーク (39)

  • Haskellの講義に関するQ&A - あどけない話

    岡山大学で、関数プログラミングの講義を一コマ担当しました。資料は、函数プログラミングの集いで使った関数プログラミングの道しるべを流用しました。ちゃんと用意しなくて、講義を受けた学生には申し訳ないです。 講義内容に関して質問を頂きました。同じような疑問を持つ人も多いと思いますので、担当教官の許可を得てここに公開します。 永続データプログラミングの意義は分かったが,破壊しないと効率が悪いのではないですか.配列のような構造が世の中には多い気がします.メモリは足りなくなりませんか. 基的に永続と呼ばれているデータは、共有の効率が高く、しかも不要になった部分はすぐに GC に回収されます。また、GHC の GC はすごく優秀であることが知られています。 Haskell では、下位のレイヤーではデータを破壊できて、たとえば固定長のバッファーを使い回すといったことも可能です。ただ、それは普通のプログラ

    Haskellの講義に関するQ&A - あどけない話
  • ゲーム販売webアプリケーションSYAKERAKEを支える技術, HaskellとYesodで作られています

    ゲーム販売webアプリケーションSYAKERAKEを支える技術, HaskellとYesodで作られています Haskell (その3) Advent Calendar 2017 - Qiitaの3日目の記事です. この前「Haskellで書かれたwebサービスって何がある?」と聞かれて, HackageとかStackageのようなHaskellに関連したサービスぐらいしかパッと出せませんでした. なので, webアプリケーションであるSYAKERAKEがHaskell製であることと, これを構成するライブラリなどを書いていこうと思います. SYAKERAKEがどういうサービスかはサイトを見ていってください. 半分このサービスの宣伝です. お許しください. この記事を読むことで, 小規模ながらもプロダクションレベルのwebアプリケーションがHaskellで作れるということがわかっていただけ

    ゲーム販売webアプリケーションSYAKERAKEを支える技術, HaskellとYesodで作られています
  • Haskellの入門から中級者になるまでの指針 - Qiita

    プログラミング言語の学習は一般に大変である。 最初にどのようなことをすればいいのか、どのをよむべきなのか等疑問は尽きない。マイナーな言語で情報が少なければなおさらである。 この記事では諸事情でHaskellに入門することになった方にむけて、どのように勉強していくか、参考にすべきや記事を紹介する。 より良い指針にするためにも、指摘、感想等はコメントや私のTwitterアカウント(@Lugendre)に投稿して頂けるとありがたい。 入門〜初心者 環境構築 まずどんなプログラミング言語においても、プログラミングをする環境が必要である。Haskellにおいては Stackと呼ばれるツールをインストールすることによって、コンパイラ(GHC)、モジュールのインストール、ビルドなど自動でやってくれるようになるので、とりあえず脳死でStackをインストールしておけば良い。 以下の@igrepさんの記事

    Haskellの入門から中級者になるまでの指針 - Qiita
    moccos_info
    moccos_info 2017/11/22
    上から順に見ていって、昔自分が詰まったあたりの内容に来たところで、スクロールバーが上から2割くらいの位置だった(つらみ言語)
  • ⿻あいや⿻ 数学入門と女の子たちの本「せつラボ」執筆 on Twitter: "Haskellの演算子 #こち亀クソコラグランプリ https://t.co/5L6ecQ7Rfz"

    Haskellの演算子 #こち亀クソコラグランプリ https://t.co/5L6ecQ7Rfz

    ⿻あいや⿻ 数学入門と女の子たちの本「せつラボ」執筆 on Twitter: "Haskellの演算子 #こち亀クソコラグランプリ https://t.co/5L6ecQ7Rfz"
    moccos_info
    moccos_info 2017/09/10
    “#全部同じじゃないですかグランプリ ”
  • モナド(プログラミング)とは (プログラミングニオケルモナドとは) [単語記事] - ニコニコ大百科

    モナド(プログラミング)単語 プログラミングニオケルモナド 4.6千文字の記事 5 0pt ほめる 掲示板へ 記事編集 まとめ記事の概要説明開始とみせかけて更に引き止めるちまたにあふれる説明が分かりにくい理由説明モナド合成子記事関連項目掲示板プログラミングに出てくるモナドとはよくわからないなにか、あるいはHaskellの危険地帯である。 まとめ モナドには種類があり、種類ごとに意味が異なる。「モナド」とひとくくりに理解することはできない。 各種モナドは、それぞれのAPIを理解できれば他のライブラリと同様に扱えばいい。 よってこの記事は無駄である。 記事の概要 この記事を開いたあなたはきっと、「今度こそよくわからないモナドをきちんとわかるように解説してくれるページが現れたかもしれない(たぶん違うんだろうな)」と思ってページを開いたことと思う。 すまない。この投げやりな冒頭にさぞ手抜きだ立て逃

    モナド(プログラミング)とは (プログラミングニオケルモナドとは) [単語記事] - ニコニコ大百科
    moccos_info
    moccos_info 2017/06/14
    わからない理由がわかりやすかった
  • Wandboxを支える技術(2017年版) - Qiita

    Wandbox は、オンラインでコンパイルや実行が試せるサービスで、主に私(@melponn) と @kikairoya で作っています。 以前 Wandboxを支える技術 というのを書いていたのですが、そこからかなり変わっているため、改めて今の中身がどうなってるかについて書いていきます。 Wandbox は、Wandbox 体と、各種コンパイラをビルドするための Wandbox Builder に分かれています。 ソースコードは wandbox と wandbox-builder にあります。 2019/9/26 追記: Wandbox のビルドを CMake に移行した話 を書きました 犬小屋と牛舎 Wandboxはバックエンドとフロントエンドで分かれていて、フロントエンド側が 犬小屋(kennel) 、バックエンド側が 牛舎(cattleshed) という名前になっています。 犬小

    Wandboxを支える技術(2017年版) - Qiita
    moccos_info
    moccos_info 2017/05/21
    ブコメ見るとHaskell近寄らんどこって思いが強くなる
  • 資金力のないWeb系ベンチャーがHaskellを採用したらどうなったか - Qiita

    はじめに 僕の業は酪農で、ヤギのさくらちゃんをお世話するのが仕事ですが、それだけではっていけないのが世の中の悲しさなので、副業フリーランスITコンサル(兼プログラマ)や株式会社UZUZっていう会社のひきこもり系最高技術責任者としてHaskellやElmを業務で使っています。 あと、個人的な趣味で株式会社ARoWっていう社員数2名のちっちゃいWeb系の会社を実験的に経営していて、そこでもメインにHaskellを使っています。 Haskellを実際に小規模な会社やフリーランスで使っている人って、実は世の中にほとんどいないみたいです。 そこで、実際のところ「Haskellって資金力のない会社や個人が業務で使えるのん?」っていう疑問に対して率直にお答えします。 日Haskell界の現状 まず、Haskell界隈の日における現状についてお話します。 知ってる方も多いと思いますが、日でH

    資金力のないWeb系ベンチャーがHaskellを採用したらどうなったか - Qiita
  • 型クラスはインターフェースとどう違うのか | POSTD

    (注:2017/02/27、いただいたフィードバックを元に翻訳を修正いたしました。) Haskellの型クラスは、Haskellを学び始めたばかりの多くの人にとっては難しい概念です。たいていの言語はこれを表すことが全くできませんし、それに近い概念も持っていません。多くのオブジェクト指向型の言語にとっては、利用可能なものの中では Interface が最も近い言語要素でしょう。Rubyの modules は似たような役割を持っています。しかし、この概念は両方とも、名前の多重定義と一種のポリモーフィズムをアドレスするので、型クラスが提供するパワーの一部を欠いています。 この記事は、型クラスに興味を持っている人向けです。Haskellや関数型プログラミングの予備知識は必要ありません。JavaやC言語のような静的な型付き言語に慣れていれば、役に立つでしょう。 型クラスについての概要/要約 型クラス

    moccos_info
    moccos_info 2017/03/08
    なるほど、わからん。Haskell使ってるといつか分かるものなんだろか
  • Selling Unikernels: The CyberChaff Experience

    moccos_info
    moccos_info 2017/02/15
    "Every CyberChaff Node Is A Unikernel" "It is running Haskell from the ground (driver level) up."
  • Haskell Can Now Do Strict Evaluation by Default

    InfoQ Software Architects' Newsletter A monthly overview of things you need to know as an architect or aspiring architects. View an example

    Haskell Can Now Do Strict Evaluation by Default
  • モナドって結局何なのよ? — join to Monad v0.1.3 documentation

    モナドって結局何なのよ?¶ Haskell を勉強しようとすると必ず「モナド」ってのが出てきます。困ったものです。数学とか圏論とか関係があるらしくって、何が書いてあるんだか分からなくって嫌になってしまいます。でもね、Haskell って凄いらしいじゃないですか、格好良いらしいじゃないですか。ここはちょっとがんばって色々考えてみましょう。 そもそも Haskell って何なのよ?¶ 何なんでしょうね、Haskell って。コンピュータ言語らしいんです、あ、それは分かってると。良く挙げられる性質は次な感じ?: 関数型言語 強い型付け 遅延評価 参照透過 ここでちょっと型に関して見てみましょう。試しに Haskell の実装の 1 つである Hugs で 1 について考えてみます。Hugs では :type や :info というコマンドで hugs に型の情報などを質問することができます。例え

    moccos_info
    moccos_info 2015/08/31
    何重にも深く抽象化してるから、数学者以外にはわからんのだろうな…
  • IIJ Research Laboratory

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

  • Frege: a Haskell-like Language for the JVM

    The InfoQ Trends Reports 2023 eMag The InfoQ trends reports provide a snapshot of emerging software technology and ideas. We create the reports and accompanying graphs to aid software engineers and architects in evaluating what trends may help them design and build better software. Our editorial teams also use them to help focus our content on innovator and early adopter trends.

    Frege: a Haskell-like Language for the JVM
  • Fighting spam with Haskell

    One of our weapons in the fight against spam, malware, and other abuse on Facebook is a system called Sigma. Its job is to proactively identify malicious actions on Facebook, such as spam, phishing attacks, posting links to malware, etc. Bad content detected by Sigma is removed automatically so that it doesn’t show up in your News Feed. We recently completed a two-year-long major redesign of Sigma

    Fighting spam with Haskell
    moccos_info
    moccos_info 2015/08/11
    "Hot-swapping of compiled code" "Loading and unloading code currently uses GHC's built-in runtime linker" ほえー
  • 「ソフトウェアエンジニアならば1時間以内に解けなければいけない5つの問題」をHaskellでやってみた - Qiita

    Haskellだと問題1が一番難しいともっぱらの噂の問題をやってみました。 問題1 forループ、whileループ、および再帰を使用して、リスト内の数字の合計を計算する3つの関数を記述せよ。 再帰のコードが一番簡単なので、まずはそれから。 ではついに一番難しいforループとwhileループのコードを書いてみましょう。 まず問題になるのが、Haskellにはfor文もwhile文もないというところです。まずはforループを作らなければなりません。そもそもforループ、whileループというのが、何を示すのか?というのがあんまり自明ではないのですが、C言語でのforループとwhileループだと考えましょうか。 for :: Monad m => a -> (a -> Bool) -> (a -> a) -> (a -> m ()) -> m () for init cond incr body

    「ソフトウェアエンジニアならば1時間以内に解けなければいけない5つの問題」をHaskellでやってみた - Qiita
  • Haskell 脳の恐怖

    昨年、ある言語宗教学者にして脳生理学者が、急進的 Haskell教信者の呪術に没頭している時の脳波を計測した。すると「人間らしさ」を司る前頭前野において、α波が優位になりβ波が低下したという。 α 波はリラックスしている時に見られる脳波と言われる。「たくさんの関数をコンビネータ化しようとして,flip と (.) の洪水が、あるいは,対話は不浄な副作用とされるがゆえ,子供が棒切れでウン○をつつくように (>>=) したり (>>) ばかりをする行為が,脳に影響をあたえているのではないか」と研究を行ったエヌ博士は述べている。 エヌ博士はインタビューでさらに衝撃的な事実を明らかにした。「この波形は Lisp脳症の患者のものとよく似ている」というのだ。「Haskellはあまり一般には知られていませんが,専門家の間では「関数型言語」教のなかでも,狂信的な原理主義者がいる危険な一派として知られていま

    Haskell 脳の恐怖
  • ML Dialects and Haskell: SML, OCaml, F#, Haskell - Hyperpolyglot

    a side-by-side reference sheet grammar and invocation | variables and expressions | arithmetic and logic | strings | dates and time | arrays | lists | tuples | dictionaries | functions | execution control | exceptions | concurrency | file handles | files | directories | processes and environment | libraries and namespaces | user-defined types | objects | inheritance and polymorphism | net and web

  • PureScript: A Haskell-like Language that Compiles to JavaScript

    The InfoQ Trends Reports 2023 eMag The InfoQ trends reports provide a snapshot of emerging software technology and ideas. We create the reports and accompanying graphs to aid software engineers and architects in evaluating what trends may help them design and build better software. Our editorial teams also use them to help focus our content on innovator and early adopter trends.

    PureScript: A Haskell-like Language that Compiles to JavaScript
    moccos_info
    moccos_info 2014/09/24
    作者とのトーク / 他のHaskell系AltJSとの違いは"PureScript isn't a subset of Haskell, and uses JavaScript's semantics"で "easily integrate with existing JavaScript libraries"
  • BestFreeCams.club - Only the Best Free Live Cams

  • foldlを直す - 純粋関数空間

    http://www.well-typed.com/blog/90/ foldlに関するこの記事(英文)が面白かったので、勝手翻訳しました。 foldlなんとかなるといいですね。 foldlを直す foldl 関数は壊れている。壊れているとみんなが知っている。 四半世紀近く壊れたままだ。ついにこれを修正する時が来た! 今日、私はPrelude.foldlをData.List.foldl'として知られる実装で再定義することを提案する。 foldlは壊れている! 既にご存知だとは思うが、念のため… Haskellerが必ずfoldlではなく、foldrやfoldl'を使うように勧めてくることにお気づきだろうか? 例えばReal World Haskellでは次のように言っている。 `foldl`のサンクの挙動のため、実アプリではこの関数を使わないようにするのが望ましい。 特に問題がない場合でも