タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

Programmingとfunctionalとtipsに関するjjzakのブックマーク (10)

  • リストの内包表記 - みずぴー日記

    30分プログラム、その56。リストの内包表記 for Scheme。 実際は、40分ちょっとかかってたりする。 内包表記(list comprehension)って? 内包表記がこれであっているのかちょっと自身がないので詳しめに、動作解説をしてみる。 Haskellのやつと動作が違うようならツッコミ希望。 まずは、単純にリストから要素をとってくる場合は次のように書ける。 (list-of x (<- x (iota 10))) ; => (0 1 2 3 4 5 6 7 8 9) またとってきたやつに対していろんな演算を行なうこともできる。 (list-of (* x 2) (<- x (iota 10))) ; => (0 2 4 6 8 10 12 14 16 18) (list-of (+ x 1) (<- x (iota 10))) ; => (1 2 3 4 5 6 7 8 9

    リストの内包表記 - みずぴー日記
    jjzak
    jjzak 2010/08/24
    リストの内包表記 for Scheme
  • さあ、Yコンビネータ(不動点演算子)を使おう! - よくわかりません

    前回、おとうさんにもわかるYコンビネータ!(絵解き解説編) - よくわかりませんというエントリで、Yコンビネータ(不動点演算子)と再帰の絵解き解説をしました。 Yコンビネータ自身は、結局のところ再帰を産み出してくれるだけです。関数(正確にはλという単純な文字列変換ルール)だけで出来て、プログラミングに関するいろんな原理の研究を可能にするのが凄い訳です。その辺のさわりを、きしださんが解説されています。しかし、単なる再帰なら、実際のプログラミングではYコンビネータなんて使わなくても出来ます。 じゃあ、Yコンビネータとか不動点とかは、偉い学者さんとかが研究に使えばいいもので、普通のプログラマには何の意味もないモノなのでしょうか? というわけで、今回はポジティブに、Yコンビネータや不動点で出てくる考え方を、理論だけじゃなく、実際のプログラミングに応用する例を見てみましょう。 今回、プログラムの例を

  • 無名クラスへのパラメタの渡し方

  • Clojure Programming - Wikibooks, open books for an open world

    People come to Clojure from a variety of backgrounds. The purpose of this book is to help everyone get the most out of the Clojure language. It is not meant as a replacement for the documentation, found at the Clojure site. Please do not copy material from there to here! Feel free to post your own code, written in the Clojure language, here. However, please do not post excerpts, patches or other m

  • Erlang Tips

    Erlang に関する情報を,自分用メモを兼ねて作成しました. 間違い等見つけた方はブログのエントリまで連絡いただけるとうれしいです. 最終更新:2007/07/04 23:56 目次 Erlangの特性 Erlangは以下のような特徴があります. 簡単に言うと,ネットワークサーバを書くのに向いています. 得意なこと ・大量の並列処理 ・複数サーバでの分散処理(ただしEthernet経由で通信するので専用インターコネクトほどは速くないと思います) 苦手なこと ・純粋な計算処理(C言語の10倍程度遅いようです) ・GUIアプリケーション(WingsというErlangでかかれたGUIアプリはあるが,GUI周りの情報は少ないです) ありそうな勘違い ・マルチコア・SMP環境にすれば,コア数に比例して性能が向上する. →もちろん条件によるので,必ず比例するわけではありません. SMPサポートは条件

  • Common Lisp

    Common Lisp クックブック ●ポイミスライムにもわかる Common Lisp ●Common Lisp と AllegroServe(Aserve) で作る Web アプリケーション ●series を使ってみる ●detachtty ●clg(Common Lisp で Gtk)

    jjzak
    jjzak 2007/12/21
    ポイミスライムにもわかる Common LispCommon Lisp と AllegroServe(Aserve) で作る Web アプリケーションseries を使ってみるdetachttyclg(Common Lisp で Gtk)
  • まつもと直伝 プログラミングのオキテ---目次 - まつもと直伝 プログラミングのオキテ:ITpro

    第0回 あらためてRuby入門 まつもとゆきひろ氏自身による「Ruby入門」をお届けします。日経Linuxの連載開始前の特別企画(2005年4月号)として,Rubyが他のスクリプト言語やオブジェクト指向言語とどこが違うのか,なぜ便利なのかを中心に解説してもらったものです。 ● 基と他言語との違い ● 実装とRuby誕生の秘密 第1回 プログラミングとオブジェクト指向の関係 プログラマを目指す人々の中にも,「オブジェクト指向は難しい」とか,「なかなか分からない」という印象を持つ方が多いようです。そこで,Rubyを題材にオブジェクト指向という考え方について説明していきます。 ● その1 ● その2 ● その3 第2回 抽象データと継承 オブジェクト指向プログラミングを構成する3原則のうち,前回は「ポリモーフィズム」を学びました。今回はオブジェクト指向の歴史を復習した後,残りの「データ抽象」と

    まつもと直伝 プログラミングのオキテ---目次 - まつもと直伝 プログラミングのオキテ:ITpro
  • 魔法言語 リリカル☆Lisp

    About ★「魔法言語 リリカル☆Lisp」はノベルゲーム風のLispチュートリアルです。 "アリサ"や"すずか"達と楽しくLispを学べます。 全12話構成で各話の最後には練習問題が用意されています。 Lisp処理系にはNScripter上で動作するLispインタプリタであるNScLisperを使用。 別の処理系をインストールする必要はありません!! Lispとは ★CやC++Java、BASIC、PerlRubyPHPPython、ML、Haskellなどと同じプログラミング言語の一つです。 マサチューセッツ工科大学のJohn McCarthy教授を中心とする研究グループによって開発され、1962年に発表されました。 LispとはList Processorの略で名前通りリストの処理を得意とします。 このことから人工知能の開発に多く用いられています。 NScLisperとは

  • はてなブログ | 無料ブログを作成しよう

    無名の遺跡15 建物が解体された土地を訪れると、時々、塀やコンクリートの基礎などが撤去されずに放置されているのを見かける。 このような過去の痕跡が残されている空き地を、ブログでは"無名の遺跡"と呼んでいる。 無名の遺跡が生み出される原因の多くは、解体や撤去費用を抑え…

    はてなブログ | 無料ブログを作成しよう
  • Super Technique 講座〜再帰関数の技

    C言語初心者が戸惑うものとして、「再帰」に関する技法がある。まあ、今時の言語で「再帰関数」を書けないのは、COBOL と FORTRAN, 古典的BASIC くらいのものだが、一般的な言語解説書での説明は大変おざなりなものである。だから、これは意識して憶えないことには、やはり身に着かない。 そこで「Super Technique 講座」では、再帰の技法を、再帰という発想の親玉である Lisp(Scheme) を利用して理解する、という無謀な企てをしてみることにする。「ある言語を理解するのに、何で別な言語を勉強するの?」という当然の疑問が湧くことだろう。しかし、しかし、「それがハッカーというものである」。筆者は MS-DOS の時代に、UNIXのテキストツールの使い方を理解するために、それらを自分で実装した。一見「無駄」に見える技術投資は、ことプログラマにとっては決して「無駄」ではない。Li

  • 1