タグ

programmingに関するpeo3のブックマーク (78)

  • Python インタプリタの拡張と埋め込み — Python v2.6.2 documentation

    このドキュメントでは、Python インタプリタを拡張するために C/C++ でモジュールを書く方法について述べます。 拡張モジュールでは、新たな関数を定義できるだけでなく、 新たなオブジェクト型とそのメソッドも定義できます。 このドキュメントではまた、Python インタプリタを別のアプリケーションに 埋め込み (embedding)、拡張言語として使う方法についても述べます。 また、動的に(実行時に)拡張モジュールをロードする機能をOSがサポートしている場合に、 動的ロード可能な拡張モジュールをコンパイルしてリンクする方法を示します。 このドキュメントでは、読者は Python について基礎的な知識を持ち合わせて いるものと仮定しています。形式ばらない Python 言語の入門には、 Python チュートリアル を読んでください。 Python 言語リファレンス を読めば、 Pyth

  • ゲーム開発者を問い詰める会 in Twitter

    出来る限りQ&A対応させました。 リアルタイムに編集しているため、抜けや間違いも含まれます。 時系列のまとめは、以下の方のまとめを参照。 http://togetter.com/li/113966

    ゲーム開発者を問い詰める会 in Twitter
  • C#のイベントについて - 2009/12 (かー) [tabesugi.net]

    池位 他泣 /31 [4] (09:51) ふと思ったこと。「オール讀物」という書物を 「オールどくぶつ」と呼んだら、 ヘンな奴だと思われた (←慣れてますが)。 なに、小説などというものは人民を堕落させる毒物であるから、 容赦なく焚書すべきである。 今日は喪中だけど二年詣りに行っちゃうぞ。 なぜなら去年は行けてないから! へへんn (14:55) ワオ!! いつのまにか大雪!! (16:26) これはすごい雪だ。しかもぜんぜん除雪してない。 今年は大量の年賀状が投棄されるぞ、きっと。 /28 [1] (21:06) Pygame実況中継4 (Part 1〜10) 全部で2時間近くもかかっている。が、まだきちんと完成してない。 正月あけに気がむいたら続きを作る予定。 いま、この日記はじつは東京で書いていないのである。 といって実家にいるわけでもない。さてどこでしょう? きょうの教訓: 新潟

  • inforno :: 個人的Go雑感&メモ

    GoogleGoという新しいプログラミング言語 を出したようで。早速、インストールして軽くドキュメントを流し読みしてみました。 英語なんて読みたくないよ、という人もいるかもしれないし、誰かの役に立つかもしれないので自分用メモおいときます。完全に自分用なんである程度他の言語の知識がある人向けな上、ざっくり流し読みなんで間違ってるかも。 どんな言語? ネイティブコードを吐く、コンパイル型。 速度はCレベル。 GC搭載。ポインタはあるけど、ポインタ演算はできません。 各種アーキに最適化された、それぞれのコンパイラセットを持ちます。例: 6g, 6l : amd64 8g, 8l : i386 linux, mac, naclに対応。 動的型言語と静的型言語のおいしいとこどり。 concurrent処理が組み込まれてます。 個人的雑感 こんな言語設計思想かなあと感じたり とにかく、シンプルな言

  • JavaScriptの最適化について、code.google.comの記事の適当訳 - それ図解で。・・・tohokuaikiのチラシの裏

    GoogleがWeb全体のスピードアップにいよいよ格的に着手, 一社だけではできないと強調 からリンクのあった、 http://code.google.com/intl/ja/speed/articles/optimizing-javascript.html が日語かと思ったら日語じゃなかった・・・・。 いやー、意外とというか文字列については、全然知らんかった。 Closureって便利だし、「おぉ〜俺って使ってるジャン」みたいな気になれるからついつい使っちゃうんだけど、高コストなのね・・・・。反省。 ということで、超適当翻訳。どっかの誰かが書いてるかも。 前おき 著者: Google Chromeエンジニア Gregory Baker, Software Engineer on GMail & Erik Arvidsson 推奨される経験:JavaScriptの実践的な知識 クライ

    JavaScriptの最適化について、code.google.comの記事の適当訳 - それ図解で。・・・tohokuaikiのチラシの裏
  • evalで変数名を変数にする@bash

    シェルスクリプトで変数を使用していると、変数名を変数にしたい場合が出てきます。 しかし、以下のようなシェルを書いてもエラーになってしまいます。 #!/bin/bash HOGE_1=1 HOGE_2=2 for i in 1 2; do echo ${HOGE_$i} done ?$ ./hoge.sh ./hoge.sh: line 6: ${HOGE_$i}: bad substitution そこで、evalの登場です。evalは、引数を一度評価してから実行します。つまり、 HOGE="echo hoge" eval $HOGE を実行すると、evalは$HOGEの内容を評価し、”echo hoge”に変換します。さらにこれを実行するので、hogeと表示されます。これを使えば変数名を変数にできます。具体的には、以下のようにします。 #!/bin/bash HOGE_1=1 HOGE_

    evalで変数名を変数にする@bash
  • ネットワークプログラムのI/O戦略 - sdyuki-devel

    図解求む。 以下「プロトコル処理」と「メッセージ処理」を分けて扱っているが、この差が顕著に出るのは全文検索エンジンや非同期ジョブサーバーなど、小さなメッセージで重い処理をするタイプ。ストリーム指向のプロトコルの場合は「プロトコル処理」を「ストリーム処理」に置き換えるといいかもしれない。 シングルスレッド・イベント駆動 コネクションN:スレッド1。epoll/kqueue/select を1つ使ってイベントループを作る。 マルチコアCPUでスケールしないので、サーバーでは今時このモデルは流行らない。 クライアントで非同期なメッセージングをやりたい場合はこのモデルを使える: サーバーにメッセージを送信 イベントハンドラを登録;このときイベントハンドラのポインタを取っておく イベントハンドラ->フラグ がONになるまでイベントループを回す イベントハンドラ->結果 を返す 1コネクション1スレッ

    ネットワークプログラムのI/O戦略 - sdyuki-devel
  • qwik.jp - qwik リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

  • Git Cheat Sheets JP

    設定 基ランチ リモート・リポジトリ git-stash git-svn 参考 修正履歴 設定 Git には様々なオプション設定がある。中には挙動を大きく変えるものもあるので注意が必要である。 設定をすべて表示する $ git config --list システム (/etc/gitconfig) の設定 $ git config --system --list や、ユーザーごと (~/.gitconfig) の設定 $ git config --global --list など表示する対象を絞ることもできる。 ユーザ名とメール・アドレスを設定する $ git config --global user.name "John Doe" $ git config --global user.email "john.doe@example.com" コミットする時に記録されるユーザー名とメ

  • Infrastructure/Fedorahosted-retirement - Fedora Project Wiki

    peo3
    peo3 2009/05/24
    libvirtとNetworkManagerが使ってる(使う予定?)とか
  • RubyでHadoopをラップ、分散処理ツールキットが登場 - @IT

    2009/05/12 米新聞社大手のニューヨーク・タイムズは5月11日、Rubyによる大規模分散処理のツールキット「Map/Reduce Toolkit」(MRToolkit)をGPLv3の下にオープンソースで公開したと発表した。MRToolkitは、すでに稼働しているクラスタ上のHadoopと合わせて使うことでRubyで容易にMap/Reduce処理を記述することができる一種のラッパー。処理自体はHadoopが行う。すでにHadoopを使っているユーザーであれば、中小規模のプロジェクトに対して、すぐにMRToolkitを適用可能としている。 デフォルトで有用なMap、Reduceの処理モジュールが含まれていて、数行のRubyスクリプトを書くだけで、例えば膨大なApacheのログからIPアドレス別の閲覧履歴をまとめるといった処理が可能という。独自にMapやReduceの処理を定義することも

  • 基盤系プログラマの実践的教育が必要だ - 未来のいつか/hyoshiokの日記

    ここで言う基盤系というのは、OSとかRDBMSとかプログラミング言語処理系とか、そーゆー奴ね。アプリケーションプログラムとかWebサービスとかを支える縁の下の力持ち。その基盤を作るプログラマをどのように育てるかというお話。 まあ、ハッカー予備軍をどのように育成するか。ハッカーって、育てるとか教育するとか、そーゆーものではなく勝手になるものだから、そもそも、そんなものはありえないという議論もある。確かに天才というのは、天才なので、教育がどうだこうだということはないのだけど、一般的なプログラマというのは、一般的な教育プログラムである程度底上げ的なことは出きると思う。 例えば、PostgreSQLの開発者を考えてみる。ちょっとRDBMSに興味がある、だけどどこからとっかりをつけていいのかよく分からないという初心者がいたとする。今ある、OSS利用者教育プログラムをいくらやったところで開発者にはなれ

    基盤系プログラマの実践的教育が必要だ - 未来のいつか/hyoshiokの日記
    peo3
    peo3 2009/04/29
    ぶっ壊れてもいいPC(ネットブック)を大学が全学生に支給してくれたらなぁ。1万円ぐらいで。学生って自由に無茶できる環境を持ってないことが多い気がする。
  • 新人プログラマーがプロのプログラマーとして独り立ちするための7つの条件 - ハックルベリーに会いに行く

    ぼくは以前にIT関連の仕事をしたことがあって、ぼく自身はプログラムを組めるわけではないのだけれど、何人かのプログラマーさんと一緒にお仕事をさせて頂く機会があった。その中で生まれて初めてプログラマーという職業の方と交流させて頂いたのだけれど、彼らはなかなかにユニークで特異な個性の持ち主たちであった。もちろんプログラマーと一口に言っても色々なタイプがいて、必ずしもひとくくりにできるわけではないのだが、共通していたのは好奇心が旺盛で新しい物好きだということだった。そして少々気難しい面がありつつも、基的にはポジティブで、明日に向かって色々なことを前向きに、精力的に取り組んでいる人が多かった。 そんな中で、特に親しくお話しさせて頂いたTさんというプログラマーがいて、この方もなかなかに個性的で、ご自分の意見や主張というものをはっきりと持っており、ITのみならず世の中に対しても一家言お持ちであった。そ

  • 革命の日々! glibc 2.10 news

    元はUlrichのBlog 時期的に考えると、Fedora11/RHEL6用のlibcになるのかな? http://udrepper.livejournal.com/20948.html 以下、要約 ・strchrの実装を変えたよ。 strchrは規格上 char *strchr(const char *, int) のようなプロトタイプをもつけども、これはCがオーバーローディングをサポートしない事による制限で 来は char *strchr(char *, int) const char *strchr(const char *, int) の2つをサポートするべき。gccトリックによってCでこれを実現したよ。 ・C++ 201x support デストラクタを呼ばない quick_exit() とそれ用のat_exit()の変種、at_quick_exit()が追加されたので実装した

  • Efficient data transfer through zero copy

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Efficient data transfer through zero copy
  • BiwaSlide

  • C++ のプログラムのデバッグを楽にする方法

    Google が公開しているソフトウェアの解説シリーズ(→その1 , その2)の続きです。今回は google-glog を使ってスタックトレースを表示する方法についてご紹介します。 C++ でプログラムを書いているとよく遭遇するのがセグメンテーション違反というエラーです。不正なアドレスへのアクセスなどによりセグメンテーション違反が起きると、通常、 UNIX 系の OS では SIGSEGV というシグナルによってプログラムが終了するとともに、 core というファイルが作られます。 core ファイルにはデバッガから参照できるいろいろな情報が残っていますが、多くの場合に役に立つのは、スタックトレースという情報です。スタックトレースを見れば、プログラムがどこでクラッシュしたのか、どのような関数を経由してそこにたどり着いたのかがわかります。プログラムがクラッシュした箇所を特定できれば、単純な

    C++ のプログラムのデバッグを楽にする方法
  • 常駐型サーバープログラムのデバッグ手法

    BOOK: WEB+DB Press TITLE: 常駐型サーバーのデバッグ手法(ドラフト版) AUTHOR: (株)プリファードインフラストラクチャー 太田一樹 *注: この文章はWEB+DB PRESS Vol.48に掲載された記事のドラフト版です はじめに 今回はデバッグ関連特集ということで、常駐型サーバープログラムを作成する際のハマりどころやそれに対する解析方法・解析ツール・対策を、実際の経験を交えながら紹介したいと思います。 筆者は(株)プリファードインフラストラクチャーでインメモリ分散検索エンジン「Sedue (セデュー)」を開発しています。モバイル向け検索エンジン「エフルート」や、2008/11/6にリニューアルされました「はてなブックマーク2」などの検索バックエンドとして使われております。 この検索エンジンはいくつかの常駐型サーバープログラムから構成されており

  • Super Mario Bros. 1 Drag & Drop (FCEUX 2.1 + Lua)

    Forum thread: http://jul.rustedlogic.net/thread.php?id=4271 FCEUX is a NES emulator. It has Lua scripting support, and in the latest versions, a feature that allows you to grab input from the mouse and keyboard, outside of the "game input". This version isn't finalized, and the script may still need to be re-written -- check http://fceux.com , and when the new version is up you can count on

    Super Mario Bros. 1 Drag & Drop (FCEUX 2.1 + Lua)
  • Linus「C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが 簡単に生産されるようになってる」

    /15 [4] (21:54) 原文: http://lwn.net/Articles/249460/ From: xxx To: xxx Subject: Re: [RFC] builin-mailinfo.c をマシな文字列ライブラリを使うようにすること Date: Thu, 6 Sep 2007 18:50:28 +0100 (BST) Message-ID: <alpine.LFD.0.999.0709061839510.5626@evo.linux-foundation.org> On Wed, 5 Sep 2007, Dmitry Kakurin wrote: > > Git のソースコードを最初に見たとき、ヘンだと思ったこと: > 1. C++ じゃなくてただの C を使ってる。理由は謎。移植性がどうとか言わないで、 > そんなのウソに決まってるから。 *あんた* のほうこそ