「プログラマの嫁が知るべき97のこと」をまとめていきます。97越えてもキニシナイ! 誰でも編集できますので追加にご協力ください>< 元ネタ: 「プログラマが知るべき97のこと」 http://amzn.to/fqBF5H 関連: 「プログラマが知るべきじゃない97のこと」 http://togetter.com/li/78505 続きを読む
「プログラマの嫁が知るべき97のこと」をまとめていきます。97越えてもキニシナイ! 誰でも編集できますので追加にご協力ください>< 元ネタ: 「プログラマが知るべき97のこと」 http://amzn.to/fqBF5H 関連: 「プログラマが知るべきじゃない97のこと」 http://togetter.com/li/78505 続きを読む
(この記事は Functional Ikamusume Advent Calendar jp 2010 の為に書かれました) 侵略!侵略!侵略!侵略!侵略!侵略!イカ娘! 再帰しなイカ? main = putStrLn $ f 6 where f 0 = "イカ娘!" f n = "侵略!" ++ f (n-1) 古風に再帰しなイカ? main = putStrLn $ f 6 where f 0 = "イカ娘!" f (n+1) = "侵略!" ++ f n 左派じゃなイカ? main = putStrLn $ foldl (\a _ -> "侵略!"++a) "イカ娘!" [1..6] 右派じゃなイカ? main = putStrLn $ foldr (\_ a -> "侵略!"++a) "イカ娘!" [1..6] 右派に見せかけた左派じゃないか? main = putStrLn $
perldelta - perl 5.10.0 の新機能 perldelta - what is new for perl 5.10.0 名前 NAME perldelta - perl 5.10.0 の新機能 perldelta - what is new for perl 5.10.0 説明 DESCRIPTION このドキュメントでは 5.8.8 リリースと 5.10.0 リリースとでの相異点を 説明します. This document describes the differences between the 5.8.8 release and the 5.10.0 release. 5.10.0 でのバグ修正の多くは既に 5.8.X メンテナンスリリースで見ることができます; それらはここには重複しないで, perl58[1-8]?delta の マニュアルページ群に記載し
Useful Links Forums LLVM Discourse Mailing Lists: Commits List Discord (Real-time Chat): Discord IRC Channel: irc.oftc.net #llvm Calendar: LLVM Community Calendar Dev. Resources: doxygen Sources (GitHub) Code Review Blog Bug tracker Buildbot Green Dragon LNT Scan-build llvm-cov Compile-time tracker Release Emails 18.1.1: Mar 2024 18.1.0: Mar 2024 17.0.6: Nov 2023 17.0.5: Nov 2023 17.0.4: Oct 2023
2008年4月6日 Frozen Perl 2008メモその6:Perl::Critic and Perl::Tidy, Your guide to better programming practices.(Perl::CriticとPerl::Tidyの紹介) 資料が公開されている。Perl::Tidyの紹介perltidyコマンドでソースを見やすく整形してくれる% perltidy [スクリプト名]デフォルトの状態では書き直したものを[スクリプト名].tdyというファイルに書き出す。元ファイルは書き替えないperltidyのコマンドラインオプションほとんどの場合はデフォルトの設定で構わないが、カスタマイズもできるようになっている。perltidy -ceでcuddled-elseモード、つまりelseの前で改行しないようにする。# perltidy標準の出力 if ($x == $y
時間が空いているときに Catalyst のお勉強をしていたのですが、なかなか情報をまとめる時間がとれないのです・・・。思ったより苦戦したので少しずつでもお勉強の情報をまとめていこうと思ってます。今回はその1ってことで。Catalyst をこれからお勉強してみようって方の参考にでもなれば幸いです。 実際には、アプリケーションを1つ作ってみるってところまで既に2週間前に終わっていたりするのですが、その解説に至るまでどれくらい時間かかるんだろう・・・ (。・x・)ゝ Catalyst の基礎知識 Catalyst のフレームワークの構成は上図のような構成になっています。純粋な MVC ではなく、MV C + A(Apprication) のような構成になっていますが、Application の部分は Dispatcher 機能に相当する部分で、実装時には MVC の考え方で問題ありません。 M
ソースコードで発見した奇妙なコメント集 | Webクリエイターボックス 既に誰かがやってそうなネタだが大丈夫か? /** * このコードは開発中のものであり、製品版とは異なる場合があります。 */ # このメソッドには 72 通りの名前があるから、なんて呼べばいいのか・・・。 alias_method ... // そう。こいつは最初からコンパイルを通らなかった。 // まあ・・・いいコードだったよ。 try { : throw new Exception(); // そんなコードで大丈夫か? : } catch (Exception e){ // 大丈夫だ、問題ない。 } : exit(0); // 神は言っている、ここで死ぬ定めではないと。 :
Perl で、スクリプトをデーモン化するのはそんなに難しくない。 Proc::Daemon というモジュールを使えば簡単にできる のだが、それには小さなフレームワークに沿ってスクリプトを書かねばならない。次のサンプルに空のフレームワークを示したので、既存のスクリプトがある場合にはこれに沿って自分のスクリプトを少々改造すればよい。基本的には action サブルーチンにロジックを書けばいいようになっている。 使用するモジュール use Proc::Daemon; #/usr/bin/perl -w use Proc::Daemon; our $DAEMON = 1; # デーモンにするか?: 1(オン) / 0 (オフ) our $SLEEP_INTERVAL = 60; # スリープの間隔(秒) &init; &run; sub action { # ここ
「飛ばねぇプログラマーはただのプログラマーだ」(紅の豚) 「夢だけど、バグじゃなかった!」(となりのトトロ) 「見ろ!人員がゴミのようだ!」(天空の城ラピュタ) 「前は何も考えられなくなって、飛べたの」(魔女の宅急便) 「40秒でコミットしな!」(天空の城ラピュタ) 「ようやく守らなければならないものができたんだ。納期だ」(ハウルの動く城) 「ポニョ、ソースコード!好きー!」(崖の上のポニョ) 「ヤな部長! ヤな部長!! ヤな部長!!!」(耳をすませば) 「黙れ小僧!お前にサンが救えるか?」「わからない。だが、オラクルと共に生きることはできる!」(もののけ姫) 「逝ってしまわれた…」(風の谷のナウシカ) 「違う部署で働かせてください!」(千と千尋の神隠し) 「変数名を大切にしないやつなんて大っ嫌いだ!」(ゲド戦記) 「あの子を解き放て!あの子はプログラマーだけど人間だぞ」(もののけ姫) 「
Phrack Magazine (http://phrack.org/phrack/55/P55-08) の off-by-one exploit を読みました。要約しておきます。 void func(const char* sm) { char buffer[256]; for(int i=0; i<=256; ++i) { // 255が正解 buffer[i] = sm[i]; } } int main(int argc, char** argv) { func(argv[1]); return 0; } このような、1バイトだけオーバーフローするbugのあるコードを書いてしまい、更に引数 sm に自由なバイト列を設定できる場合、それがどのようにして arbitrary code execution に繋がるかが書いてあります。 以下、簡単な解説です。 buffer[256] には
Web applications have evolved from simple HTML pages into rich, interactive applications that provide a great user experience. Today's web apps pose a challenge for developers, however: how do you create and maintain efficient JavaScript code that downloads quickly and works across different browsers? The Closure tools help developers to build rich web applications with JavaScript that is both pow
2009年11月5日,Googleは自社サービス製品であるGmail,Google Maps,Google Docsなどの開発に使用しているJavaScriptアプリ開発ツール群「Google Closure Tools」を一般公開しました。 "Closure"は一般的に,閉鎖や閉店といった意味で使われます。ツールの命名としては少しネガティブなニュアンスを感じますが,Google Closure Toolsの場合は,終結といった意味で,開発プロジェクトにおける最終ステップの仕上げ用ツール。すなわち“栓”という意味で中身があふれ出さないようにキッチリ閉めておくものといった意味合いから命名されているようです。 Ultimate(究極)に近い意味でGoogleの自信の表れと受け取った方がいいかもしれません。Googleで新規公開になったプロジェクトとしては珍しく,ベータ版の表記もありません(Go
先日、「JavaScriptのオブジェクトについて考察してみた - あと味」を書いてから、chikuraさんからコメントいただいたり、id:dankogaiさんから「404 Blog Not Found:javascript - にはクラスはない」という記事で言及いただいたり、JavaScript: The Good Partsを読み返したりした結果、newについて調べたいという衝動にかられましたので、その調べた結果を書いてみたいと思います。 newを調べようと思ったキッカケを整理 まずは、そのキッカケから整理します。 chikuraさんのコメントより 押さえるべきポイントは、new演算子の際に何が行われるか?だと思うので、こちらのページもぜひ読んでみてください。 JavaScript の new 演算子の意味: Days on the Moon http://nanto.asablo.j
昨日の「プログラマのためのJavaScript (11):継承についてもう少し」に、いくつかのコメントをいただきました。そのなかで、nanto_viさんに素晴らしいヒントを提供していただいたので紹介し、クラス(もどき)の継承への補足とします。 まずは、nanto_viさんが教えてくれたコードを再掲: var Traits = function () {}; Traits.prototype = SuperClass.prototype; SubClass.prototype = new Traits(); Traitsは一時的なコンストラクタですが、SuperClassのトレイツ(共通性質の定義)をそのまま持ち、余分な(おそらくは弊害を生むであろう)初期化実行コードは持たないものです。(こんなトリックがあったんだ、フーム、ムムム。) この手続きを関数にしてみます。(ちなみに、名前exten
※お知らせ※ •2018年3月31日をもって、auの3Gケータイ向けの以下のサービスが終了となりました。 ・EZアプリ(B)の配信(ダウンロード・バージョンアップ) ・au世界サービス(旧:グローバルパスポート ※技術資料の中では「国際ローミング」と称しています) それに伴い、関連する技術情報を修正いたしました。 ・「公式コンテンツで提供するサービス」メニューおよびその配下の技術情報提供の終了 ・技術情報資料『【EZweb 全般】EZweb コンテンツ制作ガイド』の修正 •「WEBページ」メニュー配下にある「SHA-2対応ケータイアップデートについて」の項目を 「【EZweb全般】EZブラウザ搭載機のSHA-2対応について」に改称し、本文中の関連する記述も修正しました。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く