Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

pgに関するlesamoureusesのブックマーク (106)

  • Gaucheでプログラミング

    Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう(編集部) 今回は、Gaucheを初めて使ってみようという方に向けて、Gaucheのインストールと、簡単なプログラムを題材に、どうやってGauche(Lisp)流のプログラムを書いていくかを取り上げてみます。 Gaucheのインストール GaucheはApacheやRubyと同様にオープンソースのソフトウェアですので、自分でダウンロードしインストールする必要があります。 GaucheのWebサイトのダウンロードページから最新のソースを取得できます。現在のところサポートされているOSはUNIX系が中心で、Windowsではすべての機能を使うことができません。この連載でも、Mac OS Xを含むUNIX系のOSで動かす前提で進めていきます。 Gaucheのインストール

    Gaucheでプログラミング
    lesamoureuses
    lesamoureuses 2008/12/23
    触ったことないのでEmacs使ってきっかけ作り
  • JPerl Advent Calendar 2008

    JPerl Advent Calendar 2008 Perl に関するちょっとした Tips をのっけてみるよ。ちゃんと続くかな?

  • 10 なら 10、 11 なら 20 になる関数を作りたい - IT戦記

    以下のエントリで質問を頂いたので http://d.hatena.ne.jp/amachang/20080827/1219815788 以下のコード x + a - (x % a || a) やりたいこと a で x を丸めること こんな感じ function round(a) { return function(x) { return x + a - (x % a || a); } } var round10 = round(10); round10(10); // 10 round10(15); // 20 round10(20); // 20 round10(25); // 30 もっといい方法あるかなあ (function(b) { return b ? x - b : x; })(x % a) うーん どっちにしろ奇麗には書けないなあ

    10 なら 10、 11 なら 20 になる関数を作りたい - IT戦記
    lesamoureuses
    lesamoureuses 2008/09/24
    Math.ceil(x / a) * a;初めて知った
  • Google Chrome JavaScriptデバッガ完全マニュアル。 - IT-Walker on hatena

    Google Chromeはシンプルに見えてオフラインやWebアプリショートカット作成などいろんな機能が搭載されています。 そんな中、JavaScriptデバッガがあるのも発見! どんなもんかと思ってみてみたら、なんとコマンドラインベースのデバッガです。Firebugみたいな物を想定していたのですが、まさかgdb(GNU製C/C++デバッガ)みたいなのがブラウザに載ってるなんて・・・しかも全然情報ないし。 でも開発者にとっては、JavaScriptをランタイムでデバッグできると言うのは非常に嬉しい事ですね。そこで、Chromeデバッガの使用法についてちょっと調べてみました。 デバッガは、開発者向けメニューの中から選択する事が出来ます。立ち上げてみると、コマンドの表示結果が表示されるエリアと、コマンドを入力するテキストフィールドが並んでいるだけ、と言うシンプルなUIが表示されます。 最下部の

    Google Chrome JavaScriptデバッガ完全マニュアル。 - IT-Walker on hatena
    lesamoureuses
    lesamoureuses 2008/09/08
    まだ使う機会ないけど、使う時に見直そう
  • バランスWiiボードでGoogleストリートビューを操作するJSONP API - blog.katsuma.tv

    先週高校の友達が家に泊まりにきたとき、バランスWiiボードを見て「これでGoogleマップ操作できたら面白そうじゃない?」とぽろっと言ったのをきっかけに「あれ、それできそうだぞ」と思ったので勢いで作ってみました。 動作としては直感的なものになっていて、足踏みするとどんどん進んでいって、左右に重心傾けると向きが変わって前後に重心を傾けるとズームが変わります。百聞は一見にしかずで、映像見てもらったほうが分かりやすいかと思います。 Google Street View by Wii Balance Board from katsuma on Vimeo. 構成 全体の構成としては次のもので成り立っています。 バランスWiiボード Bluetoothレシーバ(iMac) 信号解析モジュール(Java) ローカルWebサーバ(Jetty) Javascript(JSONP) Webブラウザ(出力)

  • 具体例で説明するデザインパターン - てっく煮ブログ

    JavaScriptデザインパターンってなんだかたいそうなものに考えられがちだけど、実は、そこかしこのライブラリや仕様に取り込まれていることが多い。「デザインパターン分からん」とか「で、どうやって使うのよ」と悶々としている人には、「どういうところで使わているのか」を知っておけばイメージも沸きやすいし、意外にたいしたことないんだな、ということが分かるんじゃないだろうか。そこで、JavaScript やその周辺の技術で、デザインパターンがどのように使われているかを紹介してみることにする。ここでは、GoFの順番に沿って、以下の11個のパターンを取り上げる。生成に関するパターン Factory MethodAbstract FactoryBuilderPrototypeSingleton構造に関するパターン AdapterComposite振る舞いに関するパターン Chain Of Respon

    lesamoureuses
    lesamoureuses 2008/08/26
    コレ読んで軽く理解して名前覚えてデザインパターン本読むってのが近道かな
  • ユメのチカラ: ソースコードの読み方

    ソフトウェア工学の標準的なカリキュラムにソースコードの読み方というのがあるのかないのか知らないが、プログラマとして最も重要な資質の一つにコードの読解力というのがある。 ついでに言えば、大学や専門学校であまり教えられているとはいえないけど、実践では常に必要とされているものとして、テストの方法論、デバッグの方法論、性能向上の方法論、メモリなど各種資源の削減方法論などなどがある。国際化、移植性なども重要な単元であるがソフトウェア工学の中で教授されていると言う話はあまり聞かない。コードのハック一般についてどこかで議論されているのだろうか。経団連あたりで議論しているのだろうか? 閑話休題。 ソースコードの読み方ということで、最近では「コード・リーディング」というそのものずばりの教科書も出ているので状況は好転しつつある。コードの読み方はオープンソースの時代になり、間違いなく広く情報を共有できるようにな

  • DECON 2006 で講演してきました: blog.bulknews.net

    DECON 2006 で講演してきました Shibuya.JS DECON で講演してきました。 私のタイトルは "Hacking Vox and Plagger" で、Xen や yum/rpm を使った Vox のアプリケーションデプロイネタとか、Plagger のオープンソース型開発モデルとテストドリブン、リグレッションテストやスモークテストなどの話をしてきました。発表資料はこちらにおいておきますのでご参考まで(一部発表内容と異なるスライドがありますがご了承を)。 発表資料 (PDF)

  • ソースコード検索の ack がよさげな件: blog.bulknews.net

    ソースコード検索の ack がよさげな件 #catalyst でちょっと話題になっていた ack をいれてみた。CPAN シェルから install App::Ack とするだけ。 基的には grep -r | grep -v .svn | grep -v \~ に飽きてしまった人むけのソースコード検索ツールです。gonzui などとは違いインデックスはつくらないでそのままディレクトリをトラバースして検索するので、あまり大規模だと時間がかかるかもしれませんが、中規模なプロジェクトなら問題なくいけるのでは。 デフォルトで CVS, RCS, .svn, blib といったバージョン管理ディレクトリを無視、-i, -v といった grep 由来のコマンドラインや、 --perlperl ソースコードだけ検索、となかなか気が利いています。デフォルトのカラーリングもイケテル。 grep -

    lesamoureuses
    lesamoureuses 2008/08/12
    >grep -r | grep -v .svn | grep -v \~ に飽きてしまった人むけのソースコード検索ツール
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    lesamoureuses
    lesamoureuses 2008/07/08
    Plagger読んでモチベーション上げる
  • addEventListenerで渡した無名関数の中でremoveEventListenerする - 今日覚えたこと

    最近は、onload属性やonclick属性に無名関数を渡すやり方ではなく、なるべくaddEventListenerを使うようにしている。 <script type="text/javascript"> window.addEventListener('load', function(){ document.getElementById('button1').addEventListener('click', function(){ alert('hello, world!'); }, false); }, false); </script> <button type="button" id="button1">hello</button> こんな感じ。 そして、一度セットした関数を削除したいことがある。addEventListenerでセットした関数を削除するには、removeEvent

    addEventListenerで渡した無名関数の中でremoveEventListenerする - 今日覚えたこと
  • Emacs で C とか Perl とか Ruby のデバッグをすると気持ちいい | フッ君の日常

    全国のprintデバッグ愛好家の皆様、こんにちは。VSとかEclipseとかのIDE以外でデバッガを使ったことのない僕がやってきましたよ。 最近、C言語でヒーコラ言ってる真っ最中な訳ですが、C言語だとprintデバッグがやりにくい訳で、デバッガ様の力を借りてみたくなった訳です。という訳で、巷で有名な gdb をちょっと試してみました。 基的な使い方は、以下を参考にしてます。gdb を用いたデバッグ方法GDBウノウラボ Unoh Labs: gdbの使い方 で、なんだか Emacsからも使えるみたいなんで、試してみたんですが、これが使いやすくてびっくり。"M-x gdb" で起動すると、Emacs のソース上に、現在の行が黒三角で、ブレークポイントが赤丸で表示されます。後は、コマンドラインでの操作と同じように、s とか n でステップ実行できます。 あー、もしかして、Perl とか Rub

    Emacs で C とか Perl とか Ruby のデバッグをすると気持ちいい | フッ君の日常
  • ファイルハンドルをめぐる冒険(ただしマニア向け) - daily dayflower

    以下は Perl 5.8.8 のソースを元に記述しました。Perl 5.10 でもそう変わってはいないと思いますが,結構内部が変更されているので違うかもしれません。大まかには同じだと思います。 イントロダクション Perl でのファイルハンドルは内部的には [http://search.cpan.org/perldoc?IO::Handle:title=IO::Handle] オブジェクトとして保持されています。そのような記述は perl5004delta くらいでしか見つかりませんでした。ラクダにもなかったような。 Internal change: FileHandle class based on IO::* classes File handles are now stored internally as type IO::Handle. The FileHandle module

    ファイルハンドルをめぐる冒険(ただしマニア向け) - daily dayflower
    lesamoureuses
    lesamoureuses 2008/06/09
    途中まで読んだけどわからなくなって断念。まとめだけ読んだ。また勉強したら読む。
  • perl - 勝手に添削 - Perl入門#1@ITPro : 404 Blog Not Found

    2008年06月03日06:00 カテゴリLightweight Languages perl - 勝手に添削 - Perl入門#1@ITPro さすがに出典が日経Linux 2003年7月号だけあって、少しトウがたってはいるけど、現在でもわずかな修正で使える記事。さすが川合さんといったところか。 第1回 Perlの文法の基ITpro というわけで、この記事の「現代化」Patchを。 全般 use strict;だけではなくuse warnings;も加えましょう。 さらに,調べても分からないことがあれば,メーリング・リストやユーザー・グループ*2に質問してみてもよいでしょう。 blogに書くのもアリです。あと私は使っていないけどIRCとか。 ビルトイン関数は()でくくらない方が視認性が上がります。 before: chomp($sLine); after: chomp $sLine;

    perl - 勝手に添削 - Perl入門#1@ITPro : 404 Blog Not Found
    lesamoureuses
    lesamoureuses 2008/06/03
    http://blog.livedoor.jp/dankogai/archives/51176081.html/>このあたりのことは、perldoc perlsecを参照のこと。
  • Unicode の文字列をソースコードに埋め込む方法 - bkブログ

    Unicode の文字列をソースコードに埋め込む方法 Unicode の文字列をソースコードに埋め込む場合、直接 UTF-8 などで文字列を書く方法と、\uXXXX などのようにエスケープして表記する方法があります。後者の方法についてまとめてみました。 \uXXXX 形式の場合 Java, JavaScript, Python, C++, C (C99から) などの多くの言語では \uXXXX という表記 (universal character names) でUnicode の文字を文字列の中に埋め込めます。たとえば、「あいう」は "\u3042\u3044\u3046" となります。 \uXXXX で埋め込んだ文字がどのように解釈されるかは言語や処理系によって異なります。 gcc/g++ の場合、 -fexec-charset オプションで、実際に使う文字セット・エンコーディングを指

    lesamoureuses
    lesamoureuses 2008/05/26
    そうだったのかー>JavaScript の場合、document.write("\u3042\u0062\u0063") などによって出力された文字列はウェブページのエンコーディングに合わせてよきにはからわれます。
  • AS-users.jp - 日本の ActionScript ユーザのためのハブサイト

    現在は自動車のジャンルが多様化の兆候を見せているのではないかと考えられています。こうしたジャンルの多様化が進行することに伴い、新しく車を購入する人からは、自分の希望する車を手にすることのできる可能性が高まると認識されるのではないでしょうか。これまでになかった、ニュータイプの車も複数のメーカーから作られる動きが見受けられるものとなってきており、その動きも関心を集めつつあるとされています。 以前から一定の支持を獲得している軽自動車やコンパクトカー、セダンなどは、現在でも需要の高い状況が続いています。それに加えて、最近ではSUVやクロカンなどの自動車も台頭してきており、ファミリー層などからの需要を一気に集めるモデルとして挙げられるのではないでしょうか。このような多彩なジャンルの自動車が販売される状態は、日をはじめとする多くのエリアで確認されており、車に乗りたいと思う人のニーズを引き出すことにも

  • Perl-users.jp - 日本のPerlユーザのためのハブサイト

    Perl Mongers Perl Mongers とは、日各地に存在する、Perl ユーザーのコミュニティのことです。各種イベントが行われていますので、是非参加してみましょう。 Shibuya.pm Fukuoka.pm Kansai.pm (@kansaipm) Yokohama.pm (@yokohamapm) Hokkaido.pm (@hokkaidopm) Nagoya.pm (@nagoyapm) Kushiro.pm (@kushiropm) Kyoto.pm (@kyotopm) Kamakura.pm Niigata.pm (@niigatapm) Sendai.pm (@sendaipm) Tokyo.pm Hachioji.pm (@hachiojipm) Chiba.pm (@chibapm) Yomitan.pm (@yomitanpm) Machida.pm

  • JavaScript文字列処理は"+="が十分高速、Safariもベター | エンタープライズ | マイコミジャーナル

    1秒でも早く動く快適なWebアプリケーションを開発することはフロントエンドプログラマやWebデベロッパが常に追い求めるところだが、SitePenにおいてTom Trenka氏による興味深い分析結果"String Performance: an Analysis"が公開されたので紹介しておきたい。同氏のドキュメントはテクニック的に参考になるものだ。 文字列処理はパフォーマンスを左右する重要な要素のひとつだ。Javaなどよく使われるプログラミング言語では文字列は変更不可能なオブジェクトとして扱われる。変更不可能にすることで文字列の重複を防ぎ、不要なデータのコピーを避けることで処理速度の向上が実現できるからだ。そのかわり文字列を編集する場合には、変更後の文字列を新しく生成するという手段をとる。このため文字列の編集という操作は新しく文字列を生成する操作と等価であるため、コストが高い処理になる。 そ

    lesamoureuses
    lesamoureuses 2008/05/15
    +=がそのうち全てにおいて速くなったりするのかな?書き直すのめんどい
  • 1日で作る全文検索エンジン - Building a full-text search engine in "ONE" day - - とあるはてな社員の日記

    最近、「Introduction to Information Retrieval」というStanfordの大学院向け教科書のドラフトを読んでいます。id:naoyaあたりが勉強会で読んでいる教科書です。この教科書には、効率のいい全文検索システムを作るにはどうすればいいか、という(まさに)教科書的手法が網羅的に書いてあり、そのあたりに興味がある人には、非常に興味深く読めるお勧めのです。 ただ、面白い面白いと言っているだけでは、エンジニアとしては価値半減ですので、GW中にrubyで一日かけて実装してみました。 さすがに実装は、一日で作ったものですから、非常に素朴です。マルチバイト文字はbi-gramで、シングルバイトはスペースなどの区切り記号で認識しています。インデックスは、rubyの処理系のHashやArrayで保持しており、外部にMarshallで書き出す、というものです。検索エンジン

  • 正規表現ベースの字句解析器を書くときは - 最速チュパカブラ研究会

    正規表現ベースの字句解析器を書くときは、narcissusというJSベースのJS処理系のコードを見るといいです http://mxr.mozilla.org/mozilla/source/js/narcissus/jsparse.js 面倒な正規表現の模範解答が載ってます。下手に自分で考えて誤爆するより、一流の人が書いたものを使いましょう 正規表現リテラル /^\/((?:\\.|[^\/])+)\/([gimy]*)/ 文字列(ダブルクォート、シングルクォート共)/^"(?:\\.|[^"])*"|^'(?:[^']|\\.)*'/ → 訂正 Cスタイルコメント(一行、ブロック共) /^\/(?:\*(?:.|\n)*?\*\/|\/.*)/ ↓narcissusについてはyukobaさんのプレゼンを(去年のShibuya.es) http://accelart.jp/shibuyajs