こういった記事って、ネーミング規則や慣習の視点から書かれていることが、多いんですけど、この記事では、この中から英文法に関することをいくつかピックアップして、書いてみたいと思います。 「省略形は使わない」などの規約的なものは、各プロジェクトのル... 続きを読む
Jeff Atwood / 青木靖 訳 2007年3月22日 以下に私の選ぶプログラミングの6大10項目リストを挙げておく。取り上げた順序には特に意味はない。このエントリを簡潔なものにしておきたいので、それぞれの項目は短い要約を引用するに留める。興味を引くものがあれば... 続きを読む
前回はPOSIX AIOとLinuxカーネルのAIOサポートについて解説しました。今回は、このAIOの使い勝手を良くするため、POSIX AIOインタフェース準拠のライブラリを作成しています。 LinuxネイティブAIOライブラリliblaioの試作 Linux AIOを使用する場合、現在では前... 続きを読む
前回までファイル I/O 全般について簡単に振り返りました。いよいよ本題のAIOに取り掛かります。今回は、POSIXのAIOインタフェースと、LinuxカーネルのAIOサポートについて紹介します。 POSIX AIO インタフェース バッファキャッシュにより緩和されるとはいえ、... 続きを読む
プロセスがブロックする要因の一つにファイルI/Oがあります。これを同期I/Oと言いますが、POSIXではAIO(非同期 I/O、Asynchronous I/O)も定義しており、I/O中でもプロセスがブロックせず他の処理を進められるようになります。 今回は、バッファキャッシュを意... 続きを読む
CODICはプログラムやHTMLコーディングなどのデジタル業種に特化した英語辞書ですメソッド名、データベースのカラム名に悩んだことはありませんか? CODIC はシステム開発やプログラムなどで利用する命名に特化した英語辞書です。 さらに詳しく≫ 続きを読む
0-1. 前書き この世にはたくさんのプログラミング言語が存在します。Wikiepdiaのプログラミング言語一覧を見ると、実に200個以上というわけの分からない数の言語が並んでいたりします。 【参考URL】プログラミング言語一覧 - Wikipedia http://ja.wikipedia.org... 続きを読む
プロセスがブロックする要因の一つにファイルI/Oがあります。これを同期I/Oと言いますが、POSIXではAIO(非同期 I/O、Asynchronous I/O)も定義しており、I/O中でもプロセスがブロックせず他の処理を進められるようになります。 本記事ではバッファキャッシュか... 続きを読む
2010年8月21日土曜日 プログラミングについてあまり知られていない7つのこと ソフトウェアを書くにあたってプログラマーとしての経験が教えてくれたいくつかのことがあります。コードを書くことについて、人々が驚き意外に思うことをいくつかここに紹介します... 続きを読む
情報工学においてリフレクション (reflection) とは、プログラムの実行過程でプログラム自身の構造を読み取ったり書き換えたりする技術のことである。通常リフレクションというと動的(実行時)リフレクションのことを指すが、静的(コンパイル時)リフレクショ... 続きを読む
Previous Next Table of Contents 2. クライアントとサーバ(TCP/SOCK_STREAM)両方に関する質問 2.1 相手側のソケットが閉じられたことをどうやって知ることができますか? Andrew Gierth 氏 ( andrew@erlenstar.demon.co.uk) より: 私の知る限り… 相手側が (SO_... 続きを読む
I have a small server program that accepts connections on a TCP or local UNIX socket, reads a simple command and, depending on the command, sends a reply. The problem is that the client may have no interest in the answer sometimes and exits e... 続きを読む
id:iwiwi さんからご紹介に与りまして、JOI春合宿にて講義をさせて頂きました。テーマはなんでも良いとのことでしたので、関数プログラミング入門ということで話させて頂きました。スライドを以下に公開しております。関数プログラミング入門View more presenta... 続きを読む
languageたとえば PHP で、 if ($hoge) { ... } とか書いてあったら、 $hoge がどんな値のときに if の中身が実行されるのか即答できますか。こういう書き方は多くの言語で可能ですが、言語によって何が真で何が偽になるのかが異なるので、それぞれまとめてみま... 続きを読む
7行テトリス (javascript) いくつかバージョンがありますが、最新版(2006/10/17)より。 解説については、ひとまずこちらをご覧ください。 7行テトリスの解説 最初の七行達成版は 2002/4/27 でした。 モノクロテキストバージョン - 遊ぶ <body id=D onKeyDown=K... 続きを読む
Under construction This is a test of golf server. You can enjoy short coding here in several languages (60 languages). The purpose of this server is not serious competition. Joke problems are welcomed and you can speak freely about problems a... 続きを読む
末尾再帰(まつびさいき)とは、プログラミング手法のひとつで、再帰のある関数またはプロシージャのおこなうべき最後のステップが、関数またはプロシージャの再帰的な呼び出しになるようにすることである。再帰にかかわらず一般には、末尾呼び出し (en:Tail c... 続きを読む
仕事の単位 何かアイディアを思いついて実装しようとして、作業がだいたい2日を越えてしまうと、 スループットが急激に落ちる気がする。そのタスクに関する効率だけでなく、 全体の効率が落ちてしまうのだ。もっと言うと、おそらく数時間で実装できる 単位がス... 続きを読む
この文書ではまず、関数ポインタとその型チェックについて述べた後で、UNIXのシグナル機能について解説する。そして、ウィンドウシステムのプログラミングで多用される「コールバック」について解説する。 ちなみにシグナルの機能は本質的には UNIX に固有であ... 続きを読む
セマフォ(Semaphore)は、コンピュータにおいて、古典的でかつ現在も利用される同期機構の一種。エドガー・ダイクストラが考案した。 一般には、並列処理の実行環境において、排他区間を確保し、資源に同時アクセスできる上限を規定したい時に用いる。 語源のSem... 続きを読む