並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 9465件

新着順 人気順

haskellの検索結果361 - 400 件 / 9465件

  • Learn You a Haskell for Great Good!

    Hey yo! This is Learn You a Haskell, the funkiest way to learn Haskell, which is the best functional programming language around. You may have heard of it. This guide is meant for people who have programmed already, but have yet to try functional programming. The whole thing is completely free to read online, but it's also available in print and I encourage you to buy as many copies as you can aff

    • 初心者のためのJavaラムダ式入門とJDKのインストール、IDEの環境構築

      2014年3月18日に一般公開予定のJava SE 8へのバージョンアップでは、新たな表記法として「ラムダ式」が追加されます。このラムダ式を使うことによって効果を発揮する数々のAPIも追加されることになり、今回のバージョンアップはJavaを使う人にとって無視できないバージョンアップとなります。 しかしラムダ式は今までJavaプログラミングをやってきた人でも前提知識なしにソースだけを見て理解するのは難しい内容となっています。この連載では、今までJavaの経験はあっても「ラムダ式は、まだ知らない」という人を対象にラムダ式について解説していきます。 JDK 8は2013年9月10日に開発者向けプレビュー版が公開され、2014年2月18日現在、Early Access版がリリースされています。 コラム「ややこしいJavaのバージョン番号」 Javaのバージョン番号について、ところどころで1.8のよ

        初心者のためのJavaラムダ式入門とJDKのインストール、IDEの環境構築
      • 書評「型システム入門」 - 純粋関数空間

        追記:Amazonのリンクを張っていますが、オーム社のサイト http://estore.ohmsha.co.jp/titles/978427406911P からも購入できます。 AmazonのKindle版はまだ出ていないようですが、 こちらからは今現在でDRMなしのPDFも購入できます。 Kindle版リリースの際にも、 フローレイアウトになる予定はないそうですので、 Amazonにこだわりがあるのでなければ、 電子版で読みたいという方は、こちらから購入されるのが良いかと思います。 あらかじめお断りしておきますと、 この記事は書評ではなく、宣伝です。 数年前に原著を読んだ時から、 本書は私の中では間違いなく良書ということになっておりますので、 私がいまさら内容の善し悪しを語ることには、 はじめから意味がないと思っております。 なのでここでは、この本の魅力、読んで欲しい人、どういう風に読

        • SICP Web Site for the Japanese Edition

          魔術師本:   (名詞)    MITの入門コースで使う計算機科学の優れた教科書 ハル・エイブルソン, ジェリー・サスマン, ジュリー・サスマン共著(和田英一訳)「計算機プログラムの構造と解釈 第二版」(ピアソン・エデュケーション 2000年).   表紙の魔術師ゆえにそういわれる.   LISP/Scheme世界の聖典のひとつ.    まれに紫本としても知られている. ハッカー英語辞典 第2版(MITプレス 1993)より λλλ 計算機プログラムの構造と解釈 第二版 λλλ λλλ(Structure and Interpretation of Computer Programs Second Edition) λλλ λλλ に関連するホームページ λλλ λ 訳者跋文 λ 正誤表 λ 人名地名考 Ben Bitdiddle, Alyssa P. Hacker, Sl

          • Index - Erlang/OTP

            fact(0) -> 1; %% Pattern matching for control-flow fact(N) -> N * fact(N-1). %% Recursion to create loops > example:fact(10). %% Interactive shell for fast iterations 3628800 > [{I, example:fact(I)} || I <- lists:seq(1,10)]. [{1, 1}, {2, 2}, {3, 6}, {4, 24}, {5, 120}, {6, 720}, {7, 5040}, {8, 40320}, {9, 362880}, {10, 3628800}] > Fruits = ["banana","monkey","jungle"]. %% Immutable variables ["bana

              Index - Erlang/OTP
            • JavaScriptで学ぶ関数型プログラミング

              本書はJavaScriptを使って関数型プログラミングを学ぶ書籍です。関数型言語としてJavaScriptを理解し、使用することにより、コードがより洗練され、美しく、そして読みやすいものになることを目的としています。JavaScriptビルトインのデータ型を上手に利用するための基本知識やJavaScriptにおける関数の持つ特性など、関数型プログラミングの技術とその考え方について解説します。また実際のJavaScriptコーディングに関数型プログラミングのエッセンスを加えるポイントをサンプルを使って丁寧に説明します。関数型プログラミングに精通した著者が書き下ろした本書はテクニックを増やし、コーディングのイマジネーションを広げたいエンジニア必携の一冊です。 Jeremy Ashkenasによるまえがき Steve Vinoskiによるまえがき 訳者まえがき はじめに 1章 関数型JavaSc

                JavaScriptで学ぶ関数型プログラミング
              • Swiftのパワー(objc.io #16-1 日本語訳) - Qiita

                Issue #16 Swift, September 2014 By Chris Eidhof まずはじめに、私は非常に偏っていることを認めなくてはなりません。私はSwiftが大好きです。私がCocoaのエコシステムに関わって以来起こったことの中で一番いい出来事だと思います。なぜそう思うか、それを私のSwift、Objective-C、Haskellの経験を共有することで伝えたいと思います。この記事で取り上げることはベストプラクティスということではなく(執筆時点でSwiftは新しすぎて確立したベストプラクティスはまだありません)、Swiftがどこで威力を発揮するのか、その例をお見せします。 少し個人的なバックグラウンドを説明すると、iOS、OS Xプラットフォームのプログラマーになる前、私は何年かHaskellを(他の関数型言語とともに)書いていました。私は今でもHaskellは経験した中

                  Swiftのパワー(objc.io #16-1 日本語訳) - Qiita
                • Gaucheをはじめてみませんか?

                  Gaucheとは 本連載では、今注目のプログラミング言語「Gauche」について解説しながら、簡単なWebアプリを作っていきます。Gaucheとは、ハワイ在住の日本人ハッカー「川合 史朗」さんが作ったLispの一種である、Schemeの処理系です。オープンソースで開発されています。 Gaucheの特徴は、Perlのように気軽に使える軽い処理系でありながら、正規表現、CommonLisp風オブジェクトシステムなど、Scheme標準にはない拡張機能や豊富なライブラリを持ち、実用的なプログラミングが行える点です。 最近「Gauche」に関する本も出版され、「第4回:都内大手3書店の3月ベスト3発表!(http://www.thinkit.co.jp/article/49/4/2.html)」でも紹介されているように売れ行きも好評です。それは、なぜでしょうか? 筆者はLisp、特にSchemeの持

                  • はてなようせいとまなぶ Schemeの形式的意味論

                    わからない…… わからない…… R6RSのAppendix Aに載っている形式的意味論がわからない…… Schemeの形式的意味論を理解するための冒険は、 R6RSを印刷して読みながら、実際にPrologとかで、 意味論にそったインタプリタを作ることよ わからない…… そんな面倒なことをする意味があるのかわからない…… 本当にそれで理解できたのかは筆者もわからない…… それじゃあ、簡単に説明をするからよく聞いてね。 けど、それでもR6RSを印刷したほうがいいわ。 それから、R6RSは「みんなもってる」ものなので、 自分のものだと分かるように、ちゃんと名前を書かないとだめよ。 「おなまえシール」を貼るというのも手ね。 もくじ なにをするの おおざっぱに もうすこしせいかくに きほん かきかえ むずかしいかきかえ ぶんぽう やくそくときほん ぷろぐらむのぶんぽう ぶんみゃくとあな ぶんみゃくの

                    • 速攻MinCamlコンパイラ概説

                      • Twitterを巡回していてわかったHaskell初心者が躓きやすいポイント8つ

                        最近の趣味は「Haskellはいいぞ」と呟くかTwitter Search: Haskellを巡回して を押して回ることです 毎日巡回しているとHaskellに入門しようとするも細かいところに引っかかって前に進めないでいる人をちらほら見かけます。今回はそんな見回りの知見を活かしてHaskell初心者が躓きやすいポイントをまとめてみたいと思います。 1. 入門書は何がいいの? それはもうすごいH本一択でしょう!…と言いたいところですが時々不満の声を聞くこともあります。確かにすごいH本こと『すごいHaskellたのしく学ぼう!』は世界一わかりやすいHaskell入門書であることは間違いないと思いますが、逆に内容が平易すぎるため記述が冗長だと感じたり読み終わっても何か自分で作れるようになった気がしなかったりするかもしれません。なので僕は「プログラミングも初心者でHaskellから入門してみたい」

                          Twitterを巡回していてわかったHaskell初心者が躓きやすいポイント8つ
                        • プロ生ちゃんが聞く! 2015年のプログラミング言語動向 | gihyo.jp

                          あけましておめでとう! 私、暮井 慧。今年もよろしくね。ところでみんな、いろいろなプログラミング言語の動向とか気になるよね? というわけで、プログラミング言語の去年のふりかえりと今年の予定なんかを、スペシャルな人たちに聞いてきたよ! Ruby 最初は、みんな大好きRuby! Rubyコアコミッターの小崎資広さんに聞きにきたよ。小崎さんは、Linuxカーネルコアの開発者でもあるんだって! Rubyの2014年はどんな年でした? 慧 こんにちは。2014年のトピックを聞かせてください! 小崎 まずは、Ruby 2.2のリリースでしょう。リリース直前にいろいろとトラブルが発生してやきもきさせましたが、無事12/25にリリース。クリスマスにリリースする慣例を守ることができました。 今回のリリースはガベージコレクションの改善がメインで、速度の向上に加えて、Symbolがガベージコレクトの対象になるよ

                            プロ生ちゃんが聞く! 2015年のプログラミング言語動向 | gihyo.jp
                          • On Lisp

                            Paul Graham著,野田 開 訳 前書き 拡張可能なプログラミング言語 関数 関数的プログラミング ユーティリティ関数 返り値としての関数 表現としての関数 マクロ いつマクロを使うべきか 変数捕捉 マクロのその他の落し穴 古典的なマクロ 汎変数 コンパイル時の計算処理 アナフォリックマクロ 関数を返すマクロ マクロを定義するマクロ リードマクロ 構造化代入 クエリ・コンパイラ 継続 複数プロセス 非決定性 ATNを使ったパージング Prolog オブジェクト指向Lisp パッケージ 翻訳者 野田 開のサイト 原著者Paul Graham氏のサイト Copyright (c) 2003-2005 野田 開     NODA Kai <t50473@mail.ecc.u-tokyo.ac.jp>

                            • Efficient data transfer through zero copy

                              IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

                                Efficient data transfer through zero copy
                              • 2013年文化祭 - 灘校パソコン研究部

                                2013年文化祭 第67回灘校文化祭は、 2013年5月2日(木) 、 5月3日(金・祝) の両日開催です。 今年も灘校パソコン研究部の展示にぜひお越しください。 部誌 2013年部誌ページ数:315 サイズ:29.0MB 目次 木のはなし(PDF) マクロのおはなし(PDF) 競技プログラミングと初等整数論入門(PDF) DNSポイゾニング(PDF) Java Zero-Day(PDF) 難読フォント(PDF) 符号理論について(PDF) Unity3Dを実用する(PDF) ぱそこんのなかをのぞいてみよう(PDF) 圏論によるプログラミングと論理(PDF) ダウンロード

                                • ラムダ計算 - Wikipedia

                                  この記事には参考文献や外部リンクの一覧が含まれていますが、脚注による参照が不十分であるため、情報源が依然不明確です。適切な位置に脚注を追加して、記事の信頼性向上にご協力ください。(2020年5月) ラムダ計算(ラムダけいさん、英語: lambda calculus)は、計算模型のひとつで、計算の実行を関数への引数の評価(英語: evaluation)と適用(英語: application)としてモデル化・抽象化した計算体系である。ラムダ算法とも言う。関数を表現する式に文字ラムダ (λ) を使うという慣習からその名がある。アロンゾ・チャーチとスティーヴン・コール・クリーネによって1930年代に考案された。1936年にチャーチはラムダ計算を用いて一階述語論理の決定可能性問題を(否定的に)解いた。ラムダ計算は「計算可能な関数」とはなにかを定義するために用いられることもある。計算の意味論や型理論な

                                  • Java SE 8 lambdaで変わるプログラミングスタイル - きしだのHatena

                                    JavaOne2013報告会福岡第二段で話したlambdaの資料に加筆して公開しました。 lambdaの詳細な構文は適当に調べてもらうとして、lambdaでどのようにプログラミングスタイルが変わるかということに重点おきました。 追記「用意されたFuncationalInterface」のリンクはここです。 Java8 Lambdaの文法拡張まとめ - きしだのはてな

                                      Java SE 8 lambdaで変わるプログラミングスタイル - きしだのHatena
                                    • Photo Tourism: Microsoft Research, Interactive Visual Media Group

                                        Photo Tourism: Microsoft Research, Interactive Visual Media Group
                                      • [入門]関数プログラミング―質の高いコードをすばやく直感的に書ける! 記事一覧 | gihyo.jp

                                        運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

                                          [入門]関数プログラミング―質の高いコードをすばやく直感的に書ける! 記事一覧 | gihyo.jp
                                        • JavaScriptユーザのための関数型プログラミング(後編) | POSTD

                                          この記事の前編はこちら: JavaScriptユーザのための関数型プログラミング(前編) 遅延評価 遅延評価 は、 サンク や ジェネレータ などのもっと具体的な概念をカバーする一般的な用語の一種です。遅延評価は、その言葉が表すとおりのことを行います。つまり、値が必要になるまで評価しません。可能な限りずるずると、先延ばしにします。例えば、洗わなければならない食器が大量に、もしかすると無限にあるとします。食器を全て流しに置いて一度に洗うのではなく、ゆっくり、一度に1つずつ取って洗うのに似ています。 遅延評価の本質を少しでも理解しやすくするために、Haskellを使って説明したいと思います。まず、 プログラムがどのように評価を行うか を理解する必要があります。皆さんが慣れているほとんど全ての言語は、 最内簡約 を用いています。最内簡約とは、次のようなものです。

                                            JavaScriptユーザのための関数型プログラミング(後編) | POSTD
                                          • オブジェクト指向とは何だったのか? – ゆびてく

                                              オブジェクト指向とは何だったのか? – ゆびてく
                                            • IBM Developer

                                              IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

                                                IBM Developer
                                              • 圏論に最短で入門する - 俺の Colimit を越えてゆけ

                                                はじめに 対象読者 数学以前 数学の基礎 ホモロジー代数 圏論 もっと手取り早く圏論の勉強を始めたい人へ おわりに 紹介した書籍 はじめに 私が圏論という分野を知るきっかけは、おそらくこの文章を読んでいるほとんどの人と同様に Haskell の勉強をしたことがきっかけでした。 Haskell のモナドなどを利用する上では圏論を理解する必要は全くないのですが、型システムや処理系に関して詳しく知りたくて論文を読むと圏論の言葉が普通に使われていて、理解できずに断念していました。 そこで、当時数人が集まってやっていた圏論勉強会に参加して圏論の勉強を始めました。当時読んでいた書籍は Conceptual Mathematics: A First Introduction to Categories でした。この本は圏論の初学者向けに書かれた本で、数学的な知識をほとんど仮定せずに理解できるように書かれ

                                                  圏論に最短で入門する - 俺の Colimit を越えてゆけ
                                                • 「1から100の偶数の和を求めるワンライナー」まとめ - Qiita

                                                  2019年8月11日頃にTwitterで「1から100の偶数の和を求める方法」(ワンライナー)が話題になったので 各言語ごとにまとめてみました。 私の独断と偏見ですが 「2550を直接出力するもの」「公式を使って総和を計算するもの」は 除外しています。 あくまでそれぞれのプログラミング言語の特色が現れるものをまとめたいと考えています。 以前あったズンドコきよしのまとめみたいなノリです。 https://qiita.com/shunsugai@github/items/971a15461de29563bf90 編集リクエスト歓迎です。 新しいワンライナーはコメント欄ではなく編集リクエストにて追加していただけると助かります! --- 8/15 11:30 コメント欄を取り込み&新たにツイートを拾いました。 --- 発端のツイート まにゃです。 いきなり問題! ここまでのツイートを手がかりに P

                                                    「1から100の偶数の和を求めるワンライナー」まとめ - Qiita
                                                  • http://www.smaroomch.net/english_study_readingskill/

                                                    • 関数の話

                                                      Supershipの社内勉強会で使ったやつ

                                                        関数の話
                                                      • IBM JavaScriptを作成するための関数型プログラミングの使用 - Japan

                                                        IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

                                                          IBM JavaScriptを作成するための関数型プログラミングの使用 - Japan
                                                        • 数学初心者のための「型システム入門」入門 - 廻る技術の覗き穴

                                                          社内で「TaPLで殴りあう会*1」が開催されるというので、型システム入門(通称TaPL: Types and Programming Languages)を購入したものの、内容が難しくて序盤からまったくと言っていいほど読み進めることができませんでした。 型システム入門 −プログラミング言語と型の理論− 作者: Benjamin C. Pierce,住井英二郎,遠藤侑介,酒井政裕,今井敬吾,黒木裕介,今井宜洋,才川隆文,今井健男出版社/メーカー: オーム社発売日: 2013/03/26メディア: 単行本(ソフトカバー) クリック: 68回この商品を含むブログ (7件) を見る しかし、読めないままにしておくのは悔しいし、内容はとても面白そうなので、やはりちゃんと読めるようになりたい。 そこで基礎的な書籍とWebで情報収集してから再度挑戦したところ、なんとか読み進められるようになりました。 監

                                                            数学初心者のための「型システム入門」入門 - 廻る技術の覗き穴
                                                          • 平沢進、ネットがTVを殺すとの考察をして、フォロアーが…

                                                            Susumu Hirasawa @hirasawa 民衆をナメくさりきった結果、修復不可能なほど信用を失っても、踏み絵を踏んでしまったために後戻りできず、ついに自己制御能力も失い、自爆中のTV。 2010-07-01 12:47:05

                                                              平沢進、ネットがTVを殺すとの考察をして、フォロアーが…
                                                            • 関数型プログラマからみたRust | κeenのHappy Hacκing Blog

                                                              C++からRustに入った人あたりから「関数型言語から来た人のRustの感想を知りたい」とたまに言われるのでいつかブログ書こうか。 — κeen (@blackenedgold) 2017年4月3日 イントロ 私はRustをやる前にはCommon LispやSMLを主に使っていましたが、仕事ではScalaを使っていましたし他にもOCamlやSchemeやClojureやATS2やHaskellなどを書くこともありました。 私を含めた多くの関数型言語経験者人が一度は Rust for functional programmers を読んだことがあるかと思います。 このように関数型言語と比較して書かれるといかにも似た言語に見えるので私は興味を持ちました。そこで私は実際にRustに触れ始めたのです。 構文 let があるのでおよそOCamlなどに似ているという印象を受けました。 デフォルトでイミ

                                                                関数型プログラマからみたRust | κeenのHappy Hacκing Blog
                                                              • 命令プログラミングから関数プログラミングへ

                                                                3. 関数プログラミングの関数 数学でいうところの関数 f(x) = x + 1 だから Scala では •関数定義に = (イコール) を使用 •関数内で最後に評価された値が返る def f(x: Int) {x + 1} Which is def f(x: Int) = return x + 1 better? def f(x: Int) = x + 1 ※注: 上の 2つは正しいコードではありません。

                                                                  命令プログラミングから関数プログラミングへ
                                                                • Route 477 - gemcutterの使い方まとめ (2009年秋)

                                                                  ■ [haskell] モナドって結局なんなの 社内勉強会でモナドについて発表しました。分かった気がするたびにすぐに手からすりぬけてしまう、それがモナド…! 追記: モナドそのものが何なのかとか考えないほうがいいんじゃないですかね! [Twitter / いーぐるとまとより引用] まさにその通りだと思います(笑)。IOの使い方、Maybeの使い方、Stateの使い方などを押さえておけば、 中がどうなってるかなんて知らなくても大丈夫。 でも、モナドの持つ「なんか秘技がありそうな感じ」が、中を覗いてみたくさせるんですよね。 この、どこまで掘っても自分の知らないことが出てくる感じがHaskellの魅力なのかも。 Haskell の本当にすごいところは、「なぜなに」を問いかけることでいつまでもプログラマが成長できるところにある。 [ふぁぼったー / ikegami__より引用] 一問一答 Q. モ

                                                                    Route 477 - gemcutterの使い方まとめ (2009年秋)
                                                                  • Scala 学習リソース (2015/2版)

                                                                    scala-learning-resource.md 定番、および比較的最近の学習リソースを集めてみました (2015/2)。 リファレンス Scala (by ひしだまさん) : 網羅的。特にコレクションのメソッド一覧など。 Scala School (英)(Basics意訳 by 瀬良さん): Twitter社による入門記事 Effective Scala (日本語版) : Twitter 社によるベストプラクティス集 公式Scala Documentation - ガイドと概要 : 2.8時代のですが、コレクション・Futureなどについて詳解 記事等 Gist - Scala の省略ルール早覚え : “このルールさえ押さえておけば、読んでいるコードが省略記法を使っていてもほぼ読めるようになります" GitHub - bati11/learn-scala Scala入門ハンズオン :

                                                                      Scala 学習リソース (2015/2版)
                                                                    • 「Haskellは企業でも十分実用になる」、NTTデータがソースコード解析サービスの舞台裏を披露

                                                                      NTTデータは、レガシーシステムのソースコードを解析して設計書として出力するサービス「設計書リカバリーサービス」を提供している(ニュースリリース、ITproの記事1)。このサービスは「Haskell」というプログラミング言語で実装されている(ITproの記事2)。2013年11月22日に開催されたイベント「数理システムユーザーコンファレンス2013」のセッション「COBOL meets Haskell ~ Haskellを用いたCOBOLのプログラム解析ツールの開発事例 ~」では、NTTデータ 技術開発本部 ソフトウェア工学推進センタの岡田譲二氏が、このサービスをHaskellで実装した理由などを明らかにした(写真1)。

                                                                        「Haskellは企業でも十分実用になる」、NTTデータがソースコード解析サービスの舞台裏を披露
                                                                      • 偉大なコーダーが推奨する技術書まとめ - Qiita

                                                                        Javascriptの生みの親であるブレンダン・アイク,memcachedの作者ブラッド・フィッツパトリック,Haskellの設計者であるサイモン・ペイトン・ジョーンズ,Googleの研究本部長であるピーター・ノーヴィグなど多くのコーダーがドナルド・クヌースの『The Art of Computer Programming』(TAOCP)を読むべき本として紹介しました。 ケン・トンプソンのおすすめ本はシンタックスとセマンティクスだけを提示する本ということですが,「言語仕様」のことでしょうか・・・。 The Art of Computer Programming クヌースは自身のTAOCPについてこう述べています。 私の本のどの5ページを取っても誰かの一生涯分の研究になっている 要は「簡単には読めないぜ」と。 実際に上記の偉大なコーダーたちでさえもTAOCPについては興味のある部分のみを読ん

                                                                          偉大なコーダーが推奨する技術書まとめ - Qiita
                                                                        • 独習 Scheme 三週間 Teach Yourself Scheme in Fixnum Days

                                                                          独 習 Scheme 三 週 間 by Dorai Sitaram 日本語訳 Nobuo Yamashita

                                                                          • TLS 1.3の標準化と実装 | IIJ Engineers Blog

                                                                            IIJ-II 技術研究所 技術開発室の山本です。現在技術開発室は、私を含めた4人で構成されており、主にプログラミング言語Haskellを使って開発を進めています。今回の話題である TLS(Transport Layer Security) 1.3 もHaskellで実装しました。 4年の歳月をかけて議論されてきたTLS 1.3ですが、この8月にめでたく仕様がRFC 8446となりました。貢献者リストに私の名前が載っていることを聞きつけた広報から、ブログ記事の執筆依頼がありましたので、TLS 1.3の標準化や実装の話について書いてみます。 なぜTLS 1.3を標準化する必要があったのか理由を知りたい方は、「TLSの動向」という記事や「TLS 1.3」というスライドを読んで下さい。 インターネットで使われているプロトコルは、IETFという団体で仕様が議論されて策定されます。IETFには、誰でも

                                                                              TLS 1.3の標準化と実装 | IIJ Engineers Blog
                                                                            • C#ラムダ式 基礎文法最速マスター - @IT

                                                                              ■0. まえがき 本稿では、小さいテーマではあるが、まだまだ慣れ親しんでいない開発者が少なくないと考えられる「ラムダ式(C#)」についての基礎文法を簡潔にまとめる。「ラムダ式、どう書くんだっけ?」という場合のリファレンスとして活用していただけるとうれしい。また、ラムダ式を敬遠しているという方は、まず本稿が学び始める取っ掛かりになるかもしれない(もちろん本稿の説明は充実しておらず、すべてを学べるわけではないので、じっくり学ぶには「連載:C# 3.0入門 第1回 ラムダ式」を参照してほしい)。 今年(2010年)に入ってインターネット上では、プログラミング言語の基本文法を簡潔にまとめた「○○言語 基礎文法最速マスター」(以降、最速マスター・シリーズ)というブログ記事が多数投稿されている。参考までに、そのいくつかを示そう(そのほかについては、こちらを参照されたい)。 C#基礎文法最速マスター:n

                                                                              • Haskell から見た node.js - あどけない話

                                                                                誤訳 以前、「サーバサイドJavaScriptのNode.js、最初はCやHaskellを検討し失敗。開発者ライアン・ダール氏へのインタビュー」という記事が twitter で話題になっていました。 ―― なぜJavaScriptを選んだのでしょう? ダール氏 実は最初は違いました。最初はC、Lua、Haskellなどで失敗していました。そんなときV8(Chromeが採用しているJavaScriptエンジン)に気がついて、やろうとしていることに対してJavaScriptが完璧な言語だと突然ひらめいたのです。 ただでさえ、Haskell は遅いと誤解されているのに、このような悪意さえ感じらえる訳だと、さらに誤解が深まりそうです。原文にはこう書かれています。 Dahl: Originally I didn’t. I had several failed private projects doi

                                                                                  Haskell から見た node.js - あどけない話
                                                                                • OCaml プログラミング入門

                                                                                  OCaml のすすめ OCaml とはフランスの 情報技術系の研究機関の INRIA で開発されている関数型言語 ML (の方言) です。ML には多相型、型推論、ガーベージコレクション (GC)、 データ構造のパターンマッチング等、プログラミング言語理論の研究の 成果 (すごく最新のものと言うわけでは無いそうですが) が詰め込まれ ています。これらの目的・効用は、 コードの再利用の範囲が大きい (多相型) コードの記述量が短かくなる (型推論・データ構造のパターンマッチング) バグの入り込む余地が少なくなる (GC、関数的(副作用の少ない)プログラミング) 等です。私は OCaml を研究でのデータ処理をはじめ、作成するプログラムほとんど 全てにおいて日常的に使っているのですが、 とにかく開発効率が良いです。 コンパイル時の型チェックの厳しさには慣れないとちょっと面倒に感じる かもしれま