Quantcast
Channel: 私の小岩ホッチキス » kwatch私の小岩ホッチキス
Browsing all 23 articles
Browse latest View live

[PHP] ジェネレータ導入記念:ジェネレータ初心者向けサンプル集

きたる PHP5.5 では、Python 由来の「ジェネレータ」という新機能が導入されます。 ジェネレータが何かは、このプレゼンテーション資料をご覧ください。 はっきりいって、ジェネレータはすごい機能です。 すごい機能なんですが、初心者にとってはたいへん理解しにくい機能であることも事実です。...

View Article


[PHP] ジェネレータ導入記念:finally で終了処理

PHP5.5 ではジェネレータと同時に、「finally」節も導入されました。 これは、try-catch において、例外が発生してもしなくても必ず実行されるコードを記述できる機能です。 この機能は他の言語では当たり前のように存在するのに、なぜか PHP には実装されていませんでした。 そのため、PHP がイケてない理由のひとつとしてよく採り上げられていました。...

View Article


[PHP] ジェネレータ導入記念:再帰呼び出しを foreach 文に変換

クリスマスイブにも関わらず、ネットに張り付いちゃってるみなさん、こんばんは。 今日は、ジェネレータを使って再帰呼び出しを foreach 文に変換する方法を紹介します。 概要 たとえばツリー構造をたどって何らかの処理を行う場合、通常は再帰呼び出しを使います。 ジェネレータを使うと、この再帰呼び出しを (見かけ上は) foreach 文に変換できます。 具体的には、次のような再帰呼び出しのコードが:...

View Article

[PHP] ジェネレータ導入記念:PHP上級者こそ知ってほしい、なぜforeach文が重要か?

(PHP Advent Calendar 25日目参加エントリです。前の日は @mugeso さんによる「PHPerのMVCの一体どこが間違っていたのか」でした。) 年末三日間の聖戦に向けて聖夜は休息にあてているみなさん、こんにちは。 今日は、ジェネレータをより有効に使うべく、foreach 文のファンタスティックな使い方を紹介します。 ジェネレータの風が吹けば foreach 文が儲かる...

View Article

[ruby] Rack 1.5 新機能「ハイジャックAPI」について

みんな大好き Rack の最新バージョンである Rack 1.5.0 がリリースされました。 その新機能として「ハイジャック API」なるものが導入されたそうなので、紹介します。 なお本稿は The new Rack socket hijacking API の内容を基にしています。 ハイジャック API とは? ハイジャック API とは、ソケットを使って HTTP...

View Article


[python] 年末大感謝祭!初心者脱出のためのPythonTipsを50個紹介

(本投稿は Python Advent Calendar 2013 参加作品です。前日の記事は @atsuoishimoto 氏による「Python 3.4 のオブジェクト開放処理」でした。) Python初心者が知らないかもしれないPythonのTipsを50コほど紹介。 長いので、ブックマークだけしてあとで読めばよろし。 (追記:2013-12-10)...

View Article

[java] Javaの正規表現ってクソ使いにくいよね?ね?なので使いやすくするラッパーを作ってみた

Java の正規表現ライブラリである java.util.regex パッケージは、大変使いにくいことで有名です。そのせいで、「Java で正規表現が使いにくいのは正規表現リテラルがないせいだ」と勘違いする人も出てくる始末です。 そこで、java.util.regex パッケージを wrap して使いやすくしたライブラリ「benry.rexp」を作ってみたので、紹介します。 特徴:...

View Article

[python] Python2.7の公式サポートはもはや期待できないから、とっととPython3に移行したほうがいいよ

Python2.7は、公式には「2020年までサポートされる」とアナウンスされています。 なので、諸般の事情でPython3に移行できない人は、当面はまだPython2.7を安心して使い続けるつもりでしょう。 しかし、この「サポートする...

View Article


[ruby] Erubisの弟分「BabyErubis」1.0.0 リリース

BabyErubis というのを作りました。ご想像の通り、eRuby処理系です。 (rubygems.org) baby_erubis (github.com) kwatch/baby_erubis at ruby-1.0 Erubisと比べ、機能を絞るかわりにコードサイズを大幅に削減しています。...

View Article


[python] 細かすぎて伝わりにくい、Pythonの本当の落とし穴10選

Pythonを書き始める前に見るべきTips – Qiita Pythonは何かとトラップが多い言語で、引っかかるとなんてゴミ言語と感じてしまうことが少なからずある。 などという記事(*)が出回りましたが、あの記事で挙げられている中で Python の「トラップ」と言えるのは新旧スタイルのクラスぐらいであり、他は決してトラップでもゴミでもありません。...

View Article

Image may be NSFW.
Clik here to view.

[postgresql] 『内部構造から学ぶPostgreSQL』という本がとても良い

(これは PostgreSQL Advent Calendar 2014 参加エントリです。) 『内部構造から学ぶPostgreSQL – 設計・運用計画の鉄則』 (技術評論社, 2014) という本がとても良いです。 まだ全部を読めたわけではないのですが、それでも良い本であることがよくわかりました。 PostgreSQL を使う人にはぜひ読んで欲しいと思うので、紹介します。 どんな本か?...

View Article

[ruby] いろいろ難点のあるERBよりもBabyErubisを使ってみよう、という話

(これは Ruby Advent Calendar 2014 参加エントリです。) BabyErubis ver 2.0.0 をリリースしました。 BabyErubis は、2007年 RubyKaigi での発表で使ったサンプルコードをもとにした、とてもコンパクトな eRuby 処理系です。 baby_erubis (rubygems.org) source code (github.com)...

View Article

[python] Benchmarker.pyこそPython界最強のベンチマークツールである

(これは Python Advent Calendar に参加してますがただのブログ記事です。) ベストセラー書籍からのパクリタイトルで申し訳ありません。 Python用のベンチマークツール Benchmarker.py ver 4.0 をリリースしたので紹介します。 https://pythonhosted.org/Benchmarker/ Benchmarker.py の概要...

View Article


Image may be NSFW.
Clik here to view.

[postgresql] MySQLユーザに捧げる、ポスグレの特徴的な機能12選

(これは PostgreSQL Advent Calendar 2014 参加エントリですが、Advent Calendar なんてただのブログ記事の延長でしかないので、過度な期待はしないでください。) 主に MySQL ユーザを対象として、PostgreSQL にはこんな機能がありますよー、という紹介記事です。 乗り換えを勧めるわけじゃないけど、MySQL と PostgreSQL...

View Article

[db] 「O/Rマッパーがなぜ悪いか?」がなぜ頭悪いか?

もう昔のことになりますが、「SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?」という資料を公開しました。 みんな大好きはてなブックマークでは賛否両論あったんですが、ピント外れな意見も多くありました。 そしてピント外れな批判をしてる人は、そもそも O/R マッパー (以下 ORM) をろくに知らずに批判してるららしい、ということも分かりました。...

View Article


「なぜ関数型プログラミングは難しいのか?」という特集がろくに関数型プログラミングの難しさを掘り下げてなかった件について

(長い文章が読めない人はここで回れ右しような。訪問ありがとうございました。) どうも、ペアノ数が何なのかさっぱり知らない底辺プログラマです。 とある技術雑誌で「なぜ関数型プログラミングは難しいのか?」という特集が組まれていました。...

View Article

関数型の記事に出てる命令型のコードがコレジャナイ感満載な件について

どうも!クックパッドのエンジニアに業務命令で焼きそばを焼かせたらやっぱり会社辞めちゃうのか、私、気になります! 余談ですが、会社や上司に不満があれば、たとえ小さなことでも不満材料になるんだなというのは勉強になりました...

View Article


Image may be NSFW.
Clik here to view.

Railsより100倍速いフレームワークをRubyで作ってみた

Rails より 100 倍、Sinatra より 20 倍速いフレームワーク「Keight.rb」を作りました。Ruby 用です。 https://rubygems.org/gems/keight https://github.com/kwatch/keight/tree/ruby ただし、α版なのでまだいろいろ足りない点があります。ご了承ください。 ベンチマーク “hello world”...

View Article

Image may be NSFW.
Clik here to view.

Railsの問題をRubyにすり替えている困った記事たち

どうも! 100 倍速いコードを書いて実証してみせても「意味がない」と難癖つけられるとは、世間は厳しいですね! だから既存の実装が遅いと言うとき、きちんと互換性を保ったパッチを書けるのならその批判は意味があるけど、そうでないなら何言ってんだという話になる、のであのエントリはなぜRailsのrouterのパッチを書かなかったのかと思う — tagomoris (@tagomoris) October...

View Article

Railsより100倍速いフレームワークをさらに速くする方法

Ruby が遅いとか Rails が遅いとか言う奴根本的に頭が悪すぎるので相手にしてもしょうがなくて、その根本的に頭悪い人門前払いする方法ないから文字列の仕様アレするという話でしょ、あのおじさんなんかおかしい — 阿澄佳奈と回転する炎の剣 (@ssig33) October 28, 2015 おかしいくらい高速なフレームワーク「Keight.rb」をさらに高速化する方法を紹介します。 可変 URL...

View Article
Browsing all 23 articles
Browse latest View live


Latest Images