2015年3月7日のブックマーク (3件)

  • 第3章 リストと文字列―最長重複文字列問題で知るリストプログラミング | gihyo.jp

    前章に引き続き、この章でも永続データの代表選手であるリストについて説明します。そして、実践的な文字列プログラミングの例として、最長重複文字列問題を解きます。 永続データとしてのリスト 関数プログラミングの入門書では、説明をリストから始めることが多いようです。その理由は、リストが最も簡単な永続データだからです。ここでいうリストとは、図1に示すような一方向リストのことです。ここに示されているのは文字のリストであり、[]はHaskellでの空リストです。 図1 リストの構造 関数プログラミングの説明をリストから始めるのはよくないと主張する人もいます。なぜなら、リストの処理は遅いため、実践的にはほかのデータ構造[1]を用いることが多いからです。しかし筆者としては、リストがわからない人がほかの永続データを理解できるとは思えないので、慣習通りリストから始めます。 リストには3つの基的な操作があります

    第3章 リストと文字列―最長重複文字列問題で知るリストプログラミング | gihyo.jp
    nnno
    nnno 2015/03/07
  • 第1章 関数プログラミングは難しくない!―初めて学ぶ人にも、挫折した人にもきちんとわかる | gihyo.jp

    [入門]関数プログラミング―質の高いコードをすばやく直感的に書ける! 第1章関数プログラミングは難しくない!―初めて学ぶ人にも、挫折した人にもきちんとわかる マルチコア環境が身近になった影響からか、勉強熱心なプログラマの間で関数型言語が話題になっているようです。関数型言語が奨励する関数プログラミングでは、これまで命令型言語で習得した、命令プログラミングの再代入を使う技法があまり通用しません。そのため、「⁠関数型言語は難しい」と言って途中で投げ出してしまう人も多いようです。 この特集では、関数プログラミングの習得を一度諦めてしまった人や、これから始める人のために、関数プログラミングのポイントをできるだけわかりやすく説明します。 筆者がわかるようになるまで 実は筆者も長い間、関数プログラミングを習得できませんでした。筆者は、長年Emacs Lispを使って、Mewというメールリーダーを開発して

    第1章 関数プログラミングは難しくない!―初めて学ぶ人にも、挫折した人にもきちんとわかる | gihyo.jp
    nnno
    nnno 2015/03/07
  • 大規模並列処理:PythonとSparkの甘酸っぱい関係~PyData.Tokyo Meetup #3イベントレポート

    ロゴステッカーの作成計画も進行中です。近々イベント会場でお配りできるかも知れません。 チュートリアルおよび次回勉強会のお知らせ この度PyData.Tokyo初の試みとして、初心者向けのチュートリアルを3月7日(土曜日)に行います。また、次回勉強会はデータ解析に関する「高速化」をテーマにし、4月3日(金曜日)に開催します。詳細は記事の最後をご覧下さい。 Sparkによる分散処理入門 PyData.Tokyo オーガナイザーのシバタアキラ(@madyagi)です。 ビッグデータを処理するための基盤としてHadoopは既にデファクトスタンダードになりつつあります。一方で、データ処理に対するさらなる高速化と安定化に向けて、新しい技術が日々生まれており、様々な技術が競争し、淘汰されています。そんな中、Apache Spark(以下Spark)は、新しい分析基盤として昨年あたりから急激にユーザーを増

    大規模並列処理:PythonとSparkの甘酸っぱい関係~PyData.Tokyo Meetup #3イベントレポート
    nnno
    nnno 2015/03/07