タグ

プログラムに関するXrayのブックマーク (12)

  • 第19回 アクターで楽々並行プログラミング(1)

    有限会社ITプランニング勤務のプログラマーScala、OCaml、F#などの静的型付け関数型言語を利用したシステム開発業務に従事。定理証明支援器Coqやモデル発見器Alloyといった形式手法ツールの業務への応用にも興味を持っている。 Scalaの標準ライブラリは、Java程大きくありませんが、パーサーコンビネーターを筆頭に小粒でもぴりりと辛い逸品が揃っています。この記事でご紹介する「アクター」もその一つ、マルチスレッドのスパゲッティをおいしいペペロンチーノに変えてくれる、魔法のスパイスです。new Threadとしたくなったら、一歩立ち止まってscala.actorsパッケージの扉を叩いてみてください。 なお、稿では2回にわたって、アクターとは何なのか、アクターを使うとどのような事が可能なのかをご紹介する予定です。並行処理に興味があったり、なんらかの形で並行処理に触れたりしたことがあれ

    第19回 アクターで楽々並行プログラミング(1)
  • プロファイラのしくみ steps to phantasien t(2007-08-23)

    UNIX 偏向文書 artu の中で "Measure Before Optimizing" と説く Raymond は, 同時にプロファイラの計測機構 (instrumentation) がもたらすノイズについて注意を促している. 私のプロファイラ信仰に不安が翳を落とす. gprof ノイズはさておき, そもそもプロファイラはどんな仕組みで速度を測っているんだろう. gprof のマニュアル によると, GNU 一族のプロファイラは次のように実装されている: まず "-pg" オプションつきの gcc でソースをコンパイルする. この指示を受けたコンパイラは各関数の冒頭に "mcount" という名前の関数呼出しを加える. リンクする C のランタイムも専用バージョン (gcrt0.o) に差し替わる. このランタイムは裏で profil() 関数を使いタイマを仕掛ける. そのタイマは発

  • Perl基礎文法最速マスター - Perl入門ゼミ

    Perl › 基礎文法 ITの現場でPerlが必要になって、今勉強しているという方はおられませんか? 他の言語をある程度知っている方が「Perl基礎文法最速マスター」を読めば、Perlの使い方の基礎をマスターしてPerlを書くことができるようになっています。 基礎 文法チェック 文法をチェックを厳しくするために最初に必ず次の2行を書くようにします。 use strict; use warnings; 「use strict」と「use warnings」という2行を加えることで事前に文法チェックが行われるので、ソースコードを記述する作業は速くなり、コードの品質が上がります。 print関数 文字列を出力するにはprint関数を使用します。 print "Hello world"; Perlでは標準関数や事前に定義されている関数で括弧を省略することができます。 コメント Perlのコメントで

    Perl基礎文法最速マスター - Perl入門ゼミ
  • 緑のバイク ★ 初めてのC#

  • atpages.jp - このウェブサイトは販売用です! - atpages リソースおよび情報

  • 関数型プログラマにとっての副作用 - ヒビルテ(2009-12-18)

    λ. 関数型プログラマにとっての副作用 「Haskell に副作用なんて、あるわけないじゃん。大げさだなぁ」(死亡フラグ)と思っていたけれど、HAMA#3の話をみて自分の考え方を整理できた気がするので、ちょっと書いてみる。 入出力は副作用? 命令型プログラマに説明するときの便法としては、kazuさんの説明は確かに効率が良いとは思うものの、自分がこの説明をするのには結構抵抗がある。 どこに抵抗があるのかというと、その背後にある「入出力するなら副作用がある、Haskellは入出力する、だからHaskellには副作用がある。」というような考え方。 この考え方では、言語がどのようなものであろうと、最終的に実行時に計算機上の現象として入出力が発生すれば、副作用が存在するということになってしまう。 しかし、関数型プログラマにとって、副作用とはあくまでも言語や式の性質であって、実行時に計算機上で発生する

  • プログラミング言語Cについて知ろう

    プログラミング言語の基となる「C」。正しい文法や作法を身に付けよう。Cには確かに学ぶだけの価値がある(編集部) プログラミング言語Cは開発の仕事に役立つ人気のあるプログラミング言語です。 この連載では、Cでのソフトウェア開発をこれから始めようという方や、使った経験はあるが勉強し直したいという方のために、基をきちんと押さえながら勉強できるような解説をしていきます。 なるべく正しい文法や作法を身に付けていただくためにJIS規格を基に解説しますが、それだけにこだわらず実際の開発で役に立つことを分かりやすくお伝えしていきます。 Cの成り立ちと規格 まずは、Cの成り立ちと規格について知っておきましょう。ちょっと堅苦しい感じがするかもしれませんが、歴史を知っているとなぜこういう書き方をするのか、こういった機能があるのかといったことが分かります。また、規格を知っているとプログラミングをしていて何か

    プログラミング言語Cについて知ろう
  • 1次元セル・オートマトン[拡張型] - JavaScript

    2008/08/02 λパラメータとクラス4を含む領域の表示を可能とした1次元セル・オートマトンのJavaScriptによる実行プログラム。 クラス4を得るには、あるセルに対して近傍1マスではなく2マスを把握する必要がある。自分自身を含む5マスの組み合わせは32パターンで、この領域が含む全ての変化パターンは232で、4294967296パターンある。これを総当りしていては4を見つけることはできない、そのためにλパラメータを用いる。 λパラメータはセルの色が変化する確率で、近傍2マスで色彩変化が2色(白/黒)の場合、総てのパターンでセルの色が変化した数の割合が0.273となるとき、クラス4の複雑性を持つ。そこで逆に、変化するパターン数を規定した後で、残りのパターンを生成する方式をとれば、特定のλパラメータを持ったパターンを得ることができる。 試したところ、0.3~0.6程度の範囲のλ値で稀に

  • 本の虫: lambda 完全解説

    目的 この記事は、C++0xのlambdaを完全に解説せんとする目的を以て書かれた。サンプルコードは最小に留め、エラー処理等は省いた。この記事さえ読めば、今日からlambdaを恐れることなく使う物のC++0xプログラマになれるだろう。 lambdaとは何ぞや lambdaである。あるものは、lambda関数、あるいは無名関数という名称を使っている。いったいlambdaとは何なのか。 lambdaは関数である。また、特に名前はない。したがって、lambda関数、無名関数と呼ぶのは、間違ってはいない。しかしここでは、単にlambdaと呼ぶことにする。 lambdaを定義しよう lambdaは関数オブジェクトである。lambdaは関数オブジェクトである。これはとても大事なので二度書いた。lambdaは関数オブジェクト以外の何物でもない。ところが不思議なことに、皆lambdaが単なる関数オブジェ

  • FrontPage - Satoshi OHSHIMA's web site

    現在このサイトは http://aaa.jspeed.jp/~ohshima/cgi-bin/fswiki/wiki.cgi と http://www.exth.net/~ohshima/cgi-bin/fswiki/wiki.cgi のどちらでもアクセスできるようになっています。徐々に後者へ移行する予定です。 博士後期課程の大学院生 大島聡史 のwebサイトです. CPUGPUの演算能力を有効に活かすことに興味を持って活動しています. 最新情報/近況報告 2007/10/28 : 最新情報はhttp://www.exth.net/~ohshima/wordpress/にて。 コンテンツ 最新情報 http://www.exth.net/~ohshima/wordpress/にてブログ形式で実験プログラムなどを晒していく予定。 GPUPCプロジェクト GPUを「利用して」並列計算をするプ

  • タブUI詳解

    タブUIの構造や特長、設置の判断、ユーザビリティ、アクセシビリティ、実装のポイントや機能の拡張方法、実装例やスクリプト例をSmashing Magazineから紹介します。 Module Tabs in Web Design 以下、その意訳です。 ※原文では「タブモジュール」となっていますが、タブモジュールやタブUIと記載すると煩雑になるため、「タブ」と略します。 タブのみを指す場合は、「タブ コントロール」としています。 はじめに 1. タブの構造 2. タブはいつ使用するのか 3. タブのユーザビリティとベストプラクティス 4. タブのアクセシビリティ 5. タブの拡張 6. タブの実装集 7. タブを実装するためのチュートリアル集 8. タブを実装するスクリプト集 はじめに タブモジュールは複数のコンテンツを異なるパネルに配置したユーザインターフェースのデザインパターンです。 パネル

  • Vim入門した - hitode909の日記

    例えば,ペアプロしていて,ちょっと打たせてくださいとか言って,エディタがVimで全然打てない,ということがよくあったので,最低限使えるようになろうと思った. チュートリアルを読んだ.以下,そのメモ. 起動 vim 起動 vim ファイル名 ファイルを指定して起動 vimtutor チュートリアルを開く ファイル読み書き :w ファイル名 指定したファイル名で保存 :r ファイル名 指定したファイルをカーソルの位置に挿入する(これ使うことあるんだろうか) 入力 i 入力 A 行末に移動して入力 o 下の行で挿入モードになる O 上の行で挿入モードになる a カーソルの次に挿入する モード ESC ノーマルモード i 挿入 v 選択 コピー,ペースト y コピー p ペースト d 切り取り カーソル移動系 hjkl 一文字移動 w 次の単語の先頭 e 次の単語の最後 $ 行末 C-g カーソル

    Vim入門した - hitode909の日記
  • 1