タグ

programmingに関するkicchomu3のブックマーク (184)

  • プログラミング言語の特徴を視覚的に比較する - Radium Software

    The Computer Language Benchmarks Game のページでは,計 32 個のプログラミング言語処理系のベンチマークを集計して,そのパフォーマンスを比較している。そして最近,このページに新たなプロットが追加された。単純にパフォーマンスだけの比較を行うのではなく,パフォーマンスと「コードの長さ」を関連付けて比較を行うというものだ。上はそのプロットから一部を転載したもので,全体はこのページで見ることができる。 このプロットでは,縦軸が処理時間(上にいくほど遅い),横軸がコードの長さ(右にいくほど冗長)に割り当てられている。このようなプロットを行うと,多くの言語は3通りの偏り方を見せる ― 左上(簡潔だけど遅い)に偏る「スクリプト系」,右下(速いけど冗長)に偏る「システム系」,そして,左下(速くて簡潔!)に偏る「理想系」だ。ちなみに,右上(遅くて冗長)に偏る言語は無い…

    プログラミング言語の特徴を視覚的に比較する - Radium Software
  • 情報処理推進機構:情報セキュリティ:調査・研究報告書:情報セキュリティ技術動向調査(2008 年下期) 5 テンポラリファイルの扱い

    2008年下期には、Perl の File::Path モジュールの rmtree 関数に関する CVE が 3件発表された。 (CVE-2008-2827, CVE-2008-5302, CVE-2008-5303)また、symlink attack に関する CVE は 100件以上出ている。 テンポラリファイルの扱いに関する問題は古くからあるが、いまだに多くの問題が発生する。そこで稿ではテンポラリファイルの扱いかたについて解説する。また、安全な削除に利用できる新しいシステムコールが提案されているので、それについても触れる。 テンポラリファイルはプログラムが一時的に利用するファイルである。 Unix においては /tmp や /var/tmp というディレクトリが提供されており、すべてのユーザがそのディレクトリ下にテンポラリファイルを生成・削除するのが慣習である。稿では、これらのデ

  • Blue ... the programming language

    This domain may be for sale!

  • IBM Developer

    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.

    IBM Developer
  • Title Here

    1/61 自己紹介 • なまえ: k.inaba (けーいなば) • なにもの?: 珍妙言語機能妄想日記書き – http://www.kmonos.net/wlog/ – 「タグストラクチャル型」 「お気楽非決定性」「return[f→g]」 「物知りなぬるぽ」「Я9Я∽」 「手続型リアクティブ」「Int./¥d+/」 「名前推論」「Aspect指向Yコンビネータ」 … 2/61 プログラミング言語の過去 • 1954 FORTRAN • 1958 LISP, ALGOL • 1959 COBOL • … 3/61 プログラミング言語の過去 • BC7000~4000 印欧祖語 • BC5000~0 日語 • AD410~500 英語 • 1954 FORTRAN • 1958 LISP, ALGOL • 1959 COBOL • … これら数千年の歴史をもつ言語を 「プログラミング言

  • Luaプログラミング入門

    著作権を明記すれば,このの内容を自由に利用・配布・変更してもかまいません. Lua5.1に対応しています. C言語プログラミング入門に比べて執筆スピードは遅いと思います. まずはC言語の方を完成させないと.

  • 軽量データクラスタリングツールbayon - mixi engineer blog

    逆転検事を先日クリアして、久しぶりに逆転裁判1〜3をやり直そうか迷い中のfujisawaです。シンプルなデータクラスタリングツールを作成しましたので、そのご紹介をさせていただきます。 クラスタリングとは クラスタリングとは、対象のデータ集合中で似ているもの同士をまとめて、いくつかのグループにデータ集合を分割することです。データマイニングや統計分析などでよく利用され、データ集合の傾向を調べたいときなどに役に立ちます。 例えば下図の例ですと、当初はデータがゴチャゴチャと混ざっていてよく分からなかったのですが、クラスタリングすることで、実際は3つのグループのデータのみから構成されていることが分かります。 様々なクラスタリング手法がこれまでに提案されていますが、有名なところではK-means法などが挙げられます。ここでは詳細については触れませんが、クラスタリングについてより詳しく知りたい方は以下の

    軽量データクラスタリングツールbayon - mixi engineer blog
  • コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ

    誰に教えられたのでもないのですが、ぼくは冬眠前のリスのようにコード片を溜め込んでいます。 コード片とは、ライブラリにするほどまとまった大きさではない、数行〜十数行のコードのことで、溜め込んだコード片は、アプリケーションやツールを作るときに使っています。 例えば「Perlでメール送るのどう書くんだっけかな」とか「Pythonでファイル開いて全部読むのどう書くんだっけかな」とかというときに、溜め込んだ中からコード片をさっと取り出してコピペした後、なじむようにちょっと修正して使っています。 コードポケット コードを溜め込んでいるディレクトリをぼくは「コードポケット」と名付けていて、コード片を取り出すことを「ポケットからコードを取り出す」と呼んでいます。先日、知り合いが似たようなことを実践していて、その人は「コードスケッチ」と呼んでました。いい名前ですね。 ぼくの場合、コードポケットは ~/lan

    コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ
  • PC覚え書き | プログラムのデーモン化

    VvZX(qvZX)Afork()VXeR[gpBVXeR[oAovZXmAvZXRs[B ovZXevZXARs[VvZXqvZXBevZXAqvZXfork()lpB evZXAfork()qvZXvZXIDpAqvZX0pBplAevZXqvZXッBlBAqvZXPvOヲB int main(void){ pid_t child // fork()li[ if( !(child=fork()) ){ // child=0qvZX printf("inchildprocess\n"); exit(0); } // evZXqvZXID\ヲ prinft("inparentprocess:childprocessID=%d\n,child); return 0; }

  • オープンソースソフトウェアの育て方

    製作著作 © 2005-2013 Karl Fogel, 高木正弘, Yoshinari Takaoka(a.k.a mumumu), under a CreativeCommons Attribution-ShareAlike (表示・継承) license (3.0, 2.1-jp)

  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • My Codex Leicester » SuperCollider Code Reading

    SuperColliderのソースコードを読み解き,応用を目指して日々Code Reading! Webアプリケーション全盛時代に時代錯誤な(いやしかし確実に必要な)技術鍛練を目指す. 最初から読む Code Readingとは 簡単に言えば,先人の知恵をCodeを通じて学ぶということです. もっと詳しく知りたい人はこれを買ってください. ナイスなガイドです. コードリーディングについて ソースコードを読むための技術 も参考になります. 目標は SCのDSPコード(Plugin)をAudio Unitに移植 SCは音がいい音がいいと評判だが,なんで音がいいのかソースコードレベルで解明自分で改造 SuperCollider Languageの解説ではないです.しかし,内部構造を知るきっかけにはなるかもしれません.C++がちょっとぐらい分かる人向け. 読み方 Xcode3.

  • OOコード養成ギブス - rants

    Binstock on Software: Perfecting OO's Small Classes and Short Methods The Pragmatic Programmersシリーズの新しい、The ThoughtWorks Anthologyの中に 興味をそそるエッセイがある。Jeff Bayの"Object Calisthenics"だ。 これは良いオブジェクト指向の性質を実証する小さなルーチンを書く方法をマスターするための 詳細にわたるエクササイズだ。オブジェクト指向なルーチンを書く能力を向上させたい開発者がいるなら このエッセイに目を通すことを勧める。ここにBayのアプローチを要約してみよう。 彼は次にあげられる制約のもとに1000行のプログラムを書くことを勧めている。 これらの制約は意図的に過剰な制限となっているが、これは開発者を手続き的なやり方から脱却させるた

    OOコード養成ギブス - rants
  • プログラミングは「設計」である - モジログ

    「設計」を、以下のように定義してみる。 ・設計とは、設計図をつくることである。 ・設計図とは、「それに従えば、誰が作っても同じものができる」ものである。 ここで「誰が作っても同じ」というのはもちろん、作る人に一定のスキルがあるというのが前提で、また「同じ」といっても、許容しうる程度の違いはあるものとする。 建築の場合、建築家が「設計」し、工務店などの施工業者が「施工」する。 設計がきちんと作りこまれていれば、施工業者が作り出すものにはそれほど大きな開きは出ない。 しかしソフトウェアでは、「設計」と「実装」をそれほど明確に切り分けられない。 ソフトウェア開発において、「そこから先は、誰が作っても同じものができる」レベルとは、一体どのあたりだろうか。 モジュールやクラスを決めるくらいでは、「そこから先は、誰が作っても同じものができる」レベルにはほど遠い。 では、関数やメソッドのインターフェイス

  • はてなブログ | 無料ブログを作成しよう

    文学フリマ東京38に行ってきました bunfree.net文学フリマに遊びに行ってたくさんお買い物をし、大変刺激を貰ったのち、そういえば最近ブログの更新ができてないなと思ったら最終更新が2月で止まっていることに愕然としました。ので、熱い気持ちのうちに更新しておきます。もちろんまだほぼ読んでいない…

    はてなブログ | 無料ブログを作成しよう
  • MOONGIFT: » VMWareの開発でも利用されているソースコードレビュー共有ソフトウェア「Review Board」:オープンソースを毎日紹介

    ※ 画像は一部公式サイトデモより Web2.0(?)の特徴はCGMや共有と言ったキーワードだ。サイト側から与えられるコンテンツではなく、ユーザが皆で協力してコンテンツを作り上げていく楽しさがある。ブックマーク、ニュース、コミュニティ…様々な要素がシェアされている。 そうした中、これもまた新しい共有の要素になるだろう。それはソースコードだ。 今回紹介するオープンソース・ソフトウェアはReview Board、ソースコードレビュー共有サービスだ。 Review Boardはリポジトリを登録し、そのDiffファイルを使ってReview Board上でソースをグラフィカルに表示する。そして差分に対して皆でコメントしていくのだ。ソースの一部分に対して的確にレビューできるので、分かりやすい。 SubversionやCVS、Perforce、Git、Mercurialのリポジトリに対応している。興味深い

    MOONGIFT: » VMWareの開発でも利用されているソースコードレビュー共有ソフトウェア「Review Board」:オープンソースを毎日紹介
  • ActivePerlの開発元、ActiveState製エディタがオープンソース化·ActiveState Komodo Edit MOONGIFT

    プログラマにとって、エディタは生産性に大きく関わる重要な要素だ。Windows向けのキーバインドのエディタを使っていても良いが、サーバにつないで修正を行おうと思うとviやEmacsなどでキーバインドが慣れない、なんてこともある。 特にviやEmacsが良い、という訳ではないがマルチプラットフォームで動作するエディタを選ぶのは大事だと思う。そこでこれを試してみてはいかがだろう。 今回紹介するオープンソース・ソフトウェアはActiveState Komodo Edit、ActiveState社製のプログラマ向けエディタだ。 ActiveState Komodo Editは元々シェアウェアだったようだが、最近オープンソース化された。ActivePerlの開発もとだけあって、相当に優秀なソフトウェアだ。WindowsMac OSXLinux版が提供されている。 各種言語(Perl/PHP/Ru

    ActivePerlの開発元、ActiveState製エディタがオープンソース化·ActiveState Komodo Edit MOONGIFT
  • プログラマの壁 - あどけない話

    プログラマに向いている人と向いていない人がいるそうです。 Jeff Atwood さんの「どうしてプログラマに・・・プログラムが書けないのか?」: プログラムを書ける者とプログラムを書けない者の間にある大きな溝についてはよく知られているが、プログラマの職に応募してくる人間は、すでにこの溝を飛び越えているものだとばかり思っていた。明らかにこれは妥当な仮定ではないらしい。プログラムを書けないプログラマの面接で時間を無駄にしないために、FizzBuzzスタイルのふるい分けが必要ということだ。 どんなことでも向き不向きはあるでしょうから、これには納得いきます。しかし、プログラマになれる人の中にも、溝があるようです。 Joel Spolsk さんの「Javaスクールの危険」: 私のささやかな経験から言わせてもらうと、伝統的に大学のコンピュータサイエンスのカリキュラムで教えられているもので、多くの人が

    プログラマの壁 - あどけない話
  • wxWidgets でクロスプラットフォーム GUIアプリを作ろう

    最終更新日: 2004-10-08 (公開日: 2004-10-08) UNIX USER誌 2004年8月号 に掲載された記事の元の原稿です。 文中の「原稿執筆時点」は「2004年 6月半ば」を指します。 wxWidgets は Linux, Windows, Mac OS X など多くのプラットフォー ムに対応したオープンソースの GUI ツールキットである。稿で は wxWidgets を用いてクロスプラットフォーム対応の GUI アプリ ケーションを開発する方法を紹介する。 はじめに Unix の大きな魅力のひとつに、強力なコマンドライン処理がある。 zsh などのシェルと perl などのワンライナーを組み合せて、大量 のファイルを一気に処理するときなどは、「これぞコマンドライン の醍醐味」と感じる瞬間である。 一方、Unix の大きな不満のひとつに、凶悪なコマンドライン書法

  • Webアプリのセッション管理はデスクトップアプリのメモリ管理と同じ - プログラマの思索

    Webアプリ開発で必ずぶち当たる課題、Webアプリ特有の技術、アーキテクチャについて考えてみる。 古くから続く課題を知れば、次世代Webフレームワークがどのように解決しようとして、何を提示しようとしているか分かりやすくなるだろう。 #以下、セキュリティ関係などを除く。 Webアプリは、Ajaxが登場するまで、UIがブラウザで制限されているため、それほど難しい機能を実装できなかった歴史があった。 古くはPer/PHP、そしてJavaに至るまで、Webアプリはステートレスだったから、殆どの機能は閲覧機能とマスタメンテナンス機能にすぎなかった。 なぜなら、Webアプリでは、6時間以上もかかるようなバッチ処理を実装したとしても非現実的だから。 しかし、以前から知られているアーキテクチャ上の課題はあるし、Ajaxの出現によって更にその課題が複雑になった現状もある。 Webアプリを作る時はいつも、下記

    Webアプリのセッション管理はデスクトップアプリのメモリ管理と同じ - プログラマの思索