
文字列 文字列を数値に変換する list_to_integer("123"). % 123 list_to_integer("-10"). % -10 n進数の文字列を数値に変換する u は指定した基数で変換、# は文字列が表現している基数で変換します。 io_lib:fread("~16u", "100"). % {ok,[256],[]} io_lib:fread("~2u", "100abc"). % {ok,[4],[abc]} io_lib:fread("~36u", "100%%%"). % {ok,[1296],"%%%"} io_lib:fread("~#", "16#100"). % {ok,[256],[]} io_lib:fread("~#", "2#100abc"). % {ok,[4],[abc]} io_lib:fread("~#", "36#100%%%").
まあ、プログラミングキャンプの収穫というかなんというか。 これを作った時に使ったものなんですが。 Processing で Webcam テトリスな感じ。 最近 Processing と戯れたりしています。 今まで、画像処理とかあまり触ったことなかったんですが、やってみると面白いです。 なわけで、今日は Processing を使って、Webcam を使ってリアルタイムに動画処理とか。 あ、Processing って前も言ったけど、そういうプログラミング言語です。 Processing 1.0 (BETA) Processing は、まだまだマイナーな言語だけど、結構使えます。 プログラミング初心者・無経験者でも、こういうものからいじり始めるのもいいかも? とか思ったりもして、ちょっと親切に書いてみようかな。 どんなものができるの? 僕が軽く作ってみたりしたやつ。 まあもっとたくさんあるん
コードを読むな理解しろ。http://blog.miraclelinux.com/yume/2006/10/post_e3d6.html というわけでもないが、どのようにコードを読むかということはプログラマにとって大変重要な関心事の一つだと思う。誰もが良き読み手になりたいと願うが、誰もそのことについて系統的に教えてはくれない。それこそ一子相伝の謎めいた読み方がハッカーコミュニティの中で受けつがれていたりする。昨今でこそコードリーディングだなんだとその重要性を喧伝する人々が出てきたが、かつてはやはり黒魔術の世界であったりした。そもそも、良き読み手になるであろう脂の乗りきったプログラマを使いすてにするような社会では、良き読み手になる前に35歳定年だなんだで継承すべき技術を獲得するまえに一線を退いてしまう。人材の使いすての極みであるが、そのような事をここで嘆いてもしょうがない。 例えば、セキュリ
[WebService] del.icio.us API にチャレンジ del.icio.us API とは ソーシャル・ブックマークサービスの del.icio.us が公開している API。 ブックマークの登録、削除などの操作ができる。 方式は Yahoo! 同様 REST を採用している。 del.icio.us http://del.icio.us/ del.icio.us - Reference http://del.icio.us/help/api/ 試してみる 試してみた。 最初に del.icio.us トップ から del.icio.us のアカウント登録を行う。 リクエスト用の URL を作成する。 早速リクエストを送ってみる。リクエスト URL 実行時に BASIC 認証によるログインが要求されるので 1 で登録したアカウントで認証を行う。 ブックマークの登録 htt
Originally uploaded by snapperwolf* Your Code Sucks and I Hate You: The Social Dynamics of Code Reviews Twistedを開発するDivmod, Inc.のJonathan Lange氏がOSDC Sydney 2008で行った発表の資料が公開された。「Your Code Sucks and I Hate You: The Social Dynamics of Code Reviews」というタイトルでコードレビューにおける人間同士の関わりとその影響をまとめた内容になっており、オープンソースプロジェクトに限らず、企業内でのコードレビューにおいても考慮すべき点が色々と解説されている。 翻訳しようとして挫けたので、とりあえず見出しだけ日本語で書き出してみた。 コードレビューとは何か? (Wha
(To follow my compiler related posts, either subscribe to my main RSS feed, or the compiler specific one ) Back in March 2008 I started publishing a series on how to write a compiler in Ruby, bottom up, that is, starting with the code generator and working my way up instead of the more traditional approach of writing the parser first. Here are the parts I've published on my blog so far. (The bits
とりあえず思いついたもののまとめ。 まずは、ベーシックなものから。 変数のスコープをなるべく狭くしろ 他はグローバル変数を使うなとか、モジュール化と界面を意識せよなど。とにかくスコープは重要かつ意外と奥が深い。スコープに関係する機能は、モジュール(パッケージ)、クロージャ、ローカル関数、ローカルクラス、変数の種類、アクセス制御など。 同じロジックのコードを2度以上書くな 他はDRY原則、コピペをするななど。自分の場合、2度書く方がシンプルになる場合、2度書くこともある。特に、ifやswitchなどのロジックの中で同じコードが2度現れる場合、ちょっとしたコードでわざわざ別のところで関数やブロックにまとめて、それを参照するのは面倒。但し3度以上現れる場合は関数などにまとめるケースが多いかも。 汎用コード内で条件分岐コードを減らせ 他はifをポリモーフィズムによりなくせなど。条件分岐は汎用性を損
メモリ破壊と言えば…… Core War (コア戦争)というプログラミング・ゲームの一種がある。 Core War では Redcode と呼ばれる仮想アセンブリ言語が用いられる。この言語を使って書かれたプログラムを,同一のメモリ空間上で実行し,互いのプログラムを破壊し合う。それで,最後まで止まらずに生き残ったプログラムが勝ちとなる。詳細については Coding Horror の紹介記事がまとまっていて参考になる。 面白いのは,とにかく自己複製を行いまくるプログラムが強い,というわけではないこと。複製は行わず,たくさんの停止命令をメモリ上にバラ撒いて,相手がそれを踏んで止まるのを待つという戦略もある。あるいは,相手のコードの位置を特定してから破壊しにかかる手もある。 Core War とバグによるメモリ破壊は色々とわけが違うけれど,デバッガーのメモリダンプと睨めっこしながらステップ実行でメ
By Ilya Grigorik on January 07, 2008 Your Family Guy fan-site is riding a wave of viral referrals, the community has grown tenfold in last month alone! First, you've deployed an SVD recommendation system, then you've optimized the site content and layout with the help of decision trees, but of course, that wasn't enough, and you've also added a Bayes classifier to help you filter and rank the cont
ようこそ、無作為研究所へ! 無作為研究所は、コンピュータソフトウェア・ハードウェア・電子工作などの分野で、 思いつくまま、イロイロな研究を行っているところです。 大した情報はありませんが、ごゆっくりご覧ください。 画像処理関連 回転・縮小・欠落OKのパターンマッチング(2007-05-09) いまさら正規化相関サーチ(2011-09-18 書きかけ) 簡単なオートフォーカス(2008-01-16) 詳細サーチ サブピクセル推定(2011-09-18) 画像処理関連のトピックを全て見る アルゴリズム 簡単な木構造でのキー検索(2007-05-01 書きかけ) ハッシュ木、アスキー木検索(2010-11-13) atoi()関数の高速化(2011-10-01) ハードウェア フォトトランジスタを使ってみる(2007-05-20) ネット時代のパーツ選択(2007-06-01) 良いトランジスタ
共にEncode::JP::Mobileのdat/*-table.yamlのデータで検証。 SoftBankのShift_JISからUnicode規則が分かったのでスッキリした。これでShift_JIS(cp932)⇔Unicode⇔UTF-8を機械的に変換できる。 def softbank_sjis_to_unicode(sjis): high = sjis >> 8 low = sjis & 0xff if high == 0xf7: if low else: base = 0xe200 elif high == 0xf9: if low else: base = 0xe300 elif high == 0xfb: if low else: base = 0xe500 else: raise ValueError("not softbank emoji") if low elif lo
なにか問題を見つけられた方はnari(authornari at gmail.com)までご報告ください。 Boehm GC Hackers † 初めての方は一読ください。 BoehmGCHackersの概要 ↑
JavaScript is disabled on your browser. Please enable JavaScript to use correctly mesosadmin frontend Please login Login Password Forgot your personal password ? We can remind you
Ruby版作るために部分的に訳してたので、せっかくだから完成させました。Protocol Buffersのバイナリエンコーディング詳細です。この情報が必要な人はあんまりいないとおもいますが、よろしければどうぞ。 http://code.google.com/apis/protocolbuffers/docs/encoding.html エンコーディング このドキュメントはプロトコルバッファメッセージのバイナリ・ワイヤ形式について説明しています。アプリケーションでプロトコルバッファを使用するだけであれば気にする必要はありませんが、プロトコルバッファの様々なフォーマットがエンコードされたメッセージのサイズにどう影響するかを理解することは非常に役に立つでしょう。 簡単なメッセージ 次のとても簡単なメッセージ定義があるとしましょう: message Test1 { required int32 a
The previous post described [motherboards and the memory map] memory-map in Intel computers to set the scene for the initial phases of boot. Booting is an involved, hacky, multi-stage affair - fun stuff. Here’s an outline of the process: Things start rolling when you press the power button on the computer (no! do tell!). Once the motherboard is powered up it initializes its own firmware - the chip
This program features in "Dr.Dobbs", Feb. 2007 An explanation If you are not familiar with Convey's Game of Life or APL programming language, I recommend to consult the very short description of APL and the description of Conway's Game of Life. Besides, on this page you will find IBM APL2 interpreter and several language references. This detailed explanation of the APL program that prints out N ge
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く