タグ

programmingに関するdewdropのブックマーク (15)

  • 関数型言語の技術マップ

    要求開発アライアンスの定例会で『Object-Functional Analysis and Design: 次世代モデリングパラダイムへの道標』というタイトルでセッションを行うことになりました。 セッション時間が50分なので、かなり俯瞰した形での全体像の説明になりそうですが、関連する要素技術の数が多いのと、内容が込み入っているので、ブログで補足説明をすることにしました。 今回はその第一弾です。 「関数型言語の関連技術」として用意した以下の図を説明します。関数型プログラミング言語レベルの説明はScalaを対象にします。 Disclaimer2008年にScalaをはじめて足掛け4年、関数型プログラミングとは、どうも数学を使ってプログラミングしていくことらしい、ということが分かってきました。 ScalaをBetter Javaとして使うのであれば、そこまで頑張らなくてもよいのですが、関数型言

    関数型言語の技術マップ
  • 『なぜ、プログラミングは楽しいのか?』に対する素晴らしい答え | naglly.com

    『なぜ、コンピュータープログラミングは楽しいのか。なぜ、僕を含めプログラミングに携わる人々は、何度も辛い目に遭いながらも、この職種から遠ざかる事が出来ないのか・・・?』 この問いに対する答えが下記のサイトに載っていました。ここには、プログラミングの質的な楽しさが書かれています。 Why is programming fun? An extract from Fred Brooks' (Frederick P. Brooks Jr.) book, The Mythical Man-Month http://www.grok2.com/progfun.html この書籍の日語訳「人月の神話」はこちらです。 人月の神話【新装版】 評価: 4.7点 著者:Jr FrederickP.Brooks,Jr.,Frederick P. Brooks,滝沢 徹,牧野 祐子,富澤 昇 発売日:2014-

    『なぜ、プログラミングは楽しいのか?』に対する素晴らしい答え | naglly.com
  • 原文Bjarne Stroustrupへのインタビュー

    新しいプログラミング雑誌、プログラミングの魔導書 vol.1では、C++の設計者にして最初の実装者であるBjarne Stroustrupへインタビューを行った。インタビューは、英語が使われた。その英語は、日語に翻訳されて、雑誌に載せ、すでに発行されている。 しかし、翻訳というものを信用していない人もいるだろう。第一、ほかならぬ私自身でさえ、翻訳は嫌いなのだ。このたび、Bjarne Stroustrupが、自信のWebサイトで、原文を公開した。以下で落として読むことができる。 Stroustrup: Interviews Interview by Royo Ezoe C++0x from now to the release of the Standard for a new Japanese mazagine called Programmers' Grimoire. April 20

  • まいは on Twitter: "existsなら、readもreadsにすべきだろ!バカじゃね?と思ってたら「booleanだけは三単元」という英語圏のコーディング文化があるらしい。ならいいけどさ。逆にアノテーション用途としても便利じゃん。天才じゃね?(掌返し)。結論:「三単元はRubyの"?"だと思うべし」"

  • プログラミング言語の速度とアプリケーションの速度がいかに関係ないかがわかるグラフ - kなんとかの日記

    まずは次の表をご覧あれ。これはプログラミング言語のベンチマークとして有名な Computer Language Benchmarks Game のベンチマーク結果。上にいくほど高速で、下に行くほど遅い言語になる。 これを見れば、最速な言語は C/C++ であり、Java や Haskell や OCaml といった静的な言語は軒並み上位に登場する。これに対し、RubyPythonPHP といったスクリプトは全部下のほう (つまり遅い)。その速度差は非常に大きく、このベンチマークで見ると Python3 や Ruby1.9 は C/C++ の約50倍から60倍遅く、Perl は約90倍、PHP にいたっては約130倍遅いことになる。 (ちなみに JIT つきの Lua が驚異的に高速なのが目をひく。この結果が当だとしたら、言語の速度に大きく関係するのは動的か静的かではなく、どれ

    プログラミング言語の速度とアプリケーションの速度がいかに関係ないかがわかるグラフ - kなんとかの日記
  • Alcor の Abbreviation Scoring - steps to phantasien(2009-09-12)

    同僚の生産性ツール愛好家が熱に浮かされて言った. "QuickSilver の検索がすごいんだよ!" どう凄いのかというと, たとえば "Skype を検索するのに <sp> でいい!" らしい. それは凄いのかも. 私もいちおう QuickSilver を使っているけれど, 素敵機能の類はまったく活用していない. だいたい私の使うアプリケーションはどれも一文字で特定できる. Firefox, Emacs, iTerm, Activity Monitor... そういえば iTunes は iTerm と被ってる. ためしに <iu> と打ってみたら iTunes にマッチする. なんとなく凄い気がしてきた. 同僚はこのアルゴリズムが気になるらしい. 編集距離の仲間かとも思ったけれど, 違う気がする. とりあえずぐぐってみたところ, QuickSilver は 2007 年に オープンソー

    dewdrop
    dewdrop 2009/09/19
    QuickSilverの検索アルゴリズム
  • コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ

    誰に教えられたのでもないのですが、ぼくは冬眠前のリスのようにコード片を溜め込んでいます。 コード片とは、ライブラリにするほどまとまった大きさではない、数行〜十数行のコードのことで、溜め込んだコード片は、アプリケーションやツールを作るときに使っています。 例えば「Perlでメール送るのどう書くんだっけかな」とか「Pythonでファイル開いて全部読むのどう書くんだっけかな」とかというときに、溜め込んだ中からコード片をさっと取り出してコピペした後、なじむようにちょっと修正して使っています。 コードポケット コードを溜め込んでいるディレクトリをぼくは「コードポケット」と名付けていて、コード片を取り出すことを「ポケットからコードを取り出す」と呼んでいます。先日、知り合いが似たようなことを実践していて、その人は「コードスケッチ」と呼んでました。いい名前ですね。 ぼくの場合、コードポケットは ~/lan

    コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ
  • 5年後に後悔しないJavaプログラムの書き方 - L'eclat des jours(2009-07-02)

    _ 5年後に後悔しないJavaプログラムの書き方 ここ数日、死ぬほど後悔しまくっているので、あらためて(というのは、数年前にも一度後悔しまくって、そのときの知見はあらかた処方箋とかコーディングの掟に書いているからだが)後悔しないための書き方をいくつか紹介する。 とにかく、ファクトリメソッドパターンを使うこと。 これは当に重要。しかも簡単でありながら効果は絶大。 だめな例。 public class FooBar { private Connection conn; ... protected void setup() { ... conn = DriverManager.getConnection(url); ... } urlを指定することや、DriverManagerの実装を交換すれば良いだろうと想定していても(というか、Connectionならそういう方法もあり得るが、そうはいかな

  • コメント内の TODO, FIXME, XXX の意味とか。 - public class Monry extends Dairy implements Hatena

    今迄あまり意識していなかったけど、ちゃんと定義があるらしいですよ。 まぁ、相も変わらず知識不足なので、備忘録として書き殴ってみる。 XXX: その部分のコードが正しくないが多くの場合動いてしまう FIXME: コードが間違っていて修正を要する TODO: 将来強化すべき箇所の表示 仕事でガッツリソース直す時とか、基的に TODO しか使っていなかったけど、ちゃんと分けなきゃいけないなぁ、と感じた一日でした。

    コメント内の TODO, FIXME, XXX の意味とか。 - public class Monry extends Dairy implements Hatena
  • Martin Fowler's Bliki in Japanese - 流れるようなインターフェース

    http://www.martinfowler.com/bliki/FluentInterface.html 2005/12/20 数ヶ月前、Eric Evansと一緒にあるワークショップに参加した。 そこで彼がとあるインターフェースのスタイルについて語ったのだが、 我々はそれを「流れるようなインターフェース(fluent interface)」と名づけることにした。 一般的なスタイルではないが、もっと評価されるべき代物だ。 おそらく例を示したほうがいいだろうから、そうしてみることにする。 一番簡単な例は、EricのtimeAndMoneyライブラリだろう。 時間の間隔を作るには、通常は、以下のようにする。 TimePoint fiveOClock, sixOClock; ... TimeInterval meetingTime = new TimeInterval(fiveOClock,

    dewdrop
    dewdrop 2007/10/19
    セッターが値を返す
  • とあるSEの日常 : インデントスタイル

    ごく一般的なサラリーマン(SE)の平凡(?)な一日を綴る日記PGやSEの方で必ず経験するインデントスタイルの違い、自分と異なるインデントスタイルのコードは違和感感じますよね。 そんなインデントスタイルについて、ハッカーズ大辞典に4つのタイプについて書かれていましたのでちょっと抜粋してみます。 K&Rスタイル C言語で有名なKernighan&Ritchieのサンプルコードがこのように書かれていたことから名づけられたスタイル。 UNIXのカーネルもこのタイプ。 main (void) { printf("Hello World!!"); } Allmanスタイル Pascal等でよく見るスタイル。BSDスタイルとも言うらしい。 ちなみに私はこのタイプです。 main (void) { printf("Hello World!!"); } Whitesmithsス

    dewdrop
    dewdrop 2007/04/06
    へー。Sunが出してるJavaのコーディング標準がK&Rスタイルだった気がする。ので自分はK&Rスタイルになった。
  • Lily

    dewdrop
    dewdrop 2007/03/09
    モジュールつなぐ系。デモビデオたのしい。
  • 浮動小数点演算ではまった話 - bkブログ

    浮動小数点演算ではまった話 浮動小数点演算のありがちな問題ではまりました。 いろいろ調べているうちに x86 特有のちょっとおもしろい 現象に遭遇したので紹介したいと思います。 パーセンテージの計算 簡単な C のプログラムでパーセンテージを計算しようと思い、 次のようなコードを書きました。 int x, y; ... int a = (double)x / y * 100; int a = x * 100 / y としないのは、 x が大きい場合に x * 100 が オーバーフローを起こす (INT_MAX を越える) ためです。 このコードは一見、期待通りに動いていたのですが、 しばらく使っていると、手元の環境では x = 53, y = 100 のときに a は 53 ではなく 52 になることに気づきました。 これは次の理由によります。 式の最初の (double)53 / 10

  • このごろ Standard ML の入門を読んでいる - Backnumbers: Steps to Phantasien

    2007-01-27 近況 このごろ Standard ML の入門を読んでいる. 新しいプログラミング環境, 言語やライブラリを試すと, 少し調べたあとは何か作りたくなる. さて, 何をつくろう. 悩ましい. あまり難しくないものがいい. なにしろ覚えたてのよちよち歩きだから. かといってあまり味気ないのも寂しい. fib, hanoi や tarai はもってのほか. データ構造も動きがなくつまらない. もっとアプリケーションぽいのがいい. オリジナリティはいらないけれど, 完成したものが動くヨロコビは捨て難い. 端的にいえば入門書の最終章に作るプログラム. 新人研修の締め括りにつくるプログラム. きみはもう一人で歩けると言ってほしい. わたしは一人で歩けると言いたい. イニシエーションとコングラチュレーション. そんな欲求を見たす "トイ・プログラム" のコレクションがないものか.

    dewdrop
    dewdrop 2007/01/28
    トイプログラム
  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

    dewdrop
    dewdrop 2006/02/21
    rubyに限らず参考になる
  • 1