これは,こちらのサイトによると, Depending on your requirements, this may or may not be what you want, but it is certainly consistent with the overall design of the String type to abstract away as many Unicode details as possible. Rule of thumb: if two strings look equal to the user, they will be equal in your code. つまり,「Unicodeでの実装にかかわらず,ユーザ側からの見た目が同じであるからには,コード上でも同一として扱われるべきである」という原則に基づいているとのことです。 実際,この仕様はApple
2014/10/27 関ジャバ HotSpot meetingで@jyukutyoが発表した「JITコンパイルはじめの一歩」の資料です。
背景Java8にて、インターフェースにdefaultメソッド(メソッド定義と実装)を定義できるようになりました。 しかし、その実装においてObjectクラスが持っているメソッド(toString()とかequals()とか)は、インターフェース内でdefault実装として定義できないようになっています。(コンパイルエラー「A default method cannot override a method from java.lang.Object」) 「なんでかなぁ~」と思ってちょっと調べてみたら、以下の記事を見つけました。 ちょっと要約ちょっと要約してみます。 #自分の解釈を一部入れています。 #英語に不自由のない方は上記を見てもらえればいいかと思います。 (質問者) defaultメソッドは、Javaの中で新しい良いツールだ。 しかし、私がインターフェースにtoString()のdef
僕がJavaScriptでライブラリを選定する際、迷ったら小さいものを使う。その理由について。 前提 前提として、枯れた環境で大きいフレームワークができるのは理解できるし、メリットも大きい。あるいは言語それ自身と区別できないぐらいに発達したフレームワークに依存するのも理解できる。RubyにとってのRailsとか、ErlangのOTPとか(いや、これは詳しくないけどそうなんだろうなっていう予想なんだけど)。 危険信号 今のJS界隈は動きが早すぎて、何に依存するのも危ない。とくにフレームワークと銘打たれたものは、でかすぎてどれも危険信号を放っている。 数年後、廃れてしまったフレームワークで開発し続けるのは、僕個人としてもあまり関わりたくないし、現場の離職リスクとして数字に出るだろうし、採用後の教育コストの問題になる。だいたいそういうものは元の設計者もいなくなるものだ。プロダクトの死を意味する。
Cで書くコードの方がCommon Lispで書くより速いって人がいたら、それは彼のCの技量が高すぎるってことだね。 “If you can't outperform C in CL, you're too good at C.” — Eric Naggum 最近、Common Lispの非同期Webサーバ「Wookie」を高速化する過程で、ボトルネックになっていたHTTPリクエストのパース部分を高速に処理するライブラリを書きました。 fast-http - A fast HTTP request/response parser for Common Lisp 既存のライブラリ「http-parse」よりも約10倍速く、Cのライブラリ「http-parser」より5%ほど高速です。 追記 (2014/10/26): 最適化をやり直し、現在は「http-parse」よりも約27倍速く、Cの「h
新しいムーヴメント。参加する人全員が楽しめる「プログラミング×フェス」がたぶん世界初開催2014.10.20 22:00Sponsored 三浦一紀 プログラミングのフェスですって! 昨年、リクルートホールディングスが開催した「リクルートプログラミングコンテスト」。ギズモードでも国内のコンテストと、アメリカのMIT(マサチューセッツ工科大学)で開催されたツアーの様子をお伝えしました。日本の学生プログラマーがいかにすごいか。改めて認識できたプログラミングコンテストでした。 そして今年。あのプログラミングコンテストがパワーアップ。「CODE FESTIVAL 2014」として、2014年11月8日(土)・9日(日)に開催されます。 小耳に挟んだところによると、何でも昨年のものよりもかなり大規模に、そして進化したものになるということ。名称からも分かる通り、フェス型のコンテストになるようです。 ち
ある正規表現に対して、特定の文字列がマッチするかどうかをチェックするツールやサイトは沢山ありますが、正規表現そのものが何を意味しているのか、どんな文字列を期待しているのかを解析・解読・説明してくれるツールやサイトってなかなか見ない気がします。 他人の書いた正規表現を見て、「ん?」ってなったことはありませんか? 例えばこれ。 1 ^[a-zA-Z0-9-_.]@([a-zA-Z0-9_-]+\.)+[a-zA-Z]{2,4}$ これくらいなら分かりますが、複雑になってくるとつらい… いつかはマスターしたいけど…今は楽したい。 そう思ってググってみると…ありました! それがこちら。 Regexper http://www.regexper.com/ 正規表現を入力して Display をクリックすると、その正規表現が表す内容を図にして表示してくれます。 例えば先程の正規表現は、当記事の一番上の
もう1週間以上経ってしまったけど、10/10に開かれたClojure夜会に参加してきた。 Clojure 夜会(Evening Party) - Clojure大好き! | Doorkeeper 平日の夜から(しかも東京で)のイベントだったので最初は参加は難しいなぁと思っていたのだけど、休みがギリギリとれたので4日前くらいになって急遽参加することにした。 発表について せっかくわざわざ東京まで行くのにただ話を聞いているだけというのももったいないなと思い、LT枠も余っている様子だったのでそこから急造でネタごしらえ。自分が最近やっていることでネタになりそうなおもしろい話が特になかったので、去年くらいからちょくちょく海外のClojureコミュニティの人たちのブログで話に挙がるStuart Sierra*1が提案するClojureワークフローについて紹介することにした。 当日の発表資料はこちら。
以前に RailGo Webサービス と Apache Axis2 を試す というのをやったけど必要なライブラリJARファイルが多すぎて(51個!)イヤになったので、今度は JAX-WS のリファレンス実装でやってみる。 RailGoのAPI は RailGoアプリケーションの手引き や ExpService06 Web サービス あたりを参照。 JAX-WS の wsimport でスタブソースコードを生成 JAX-WS のリファレンス実装: jax-ws: JAX-WS Reference Implementation 今回は、バージョン 2.1.2 M1 を使用。 C:\work\jaxws-ri\bin>mkdir railgosrc C:\work\jaxws-ri\bin>wsimport -extension -s railgosrc -p railgo.jaxws http
今読んでいる数学ガールガロア理論がバブルソートにちょっとだけ触れていました。 考えてみるとバブルソートは何となく概要を知っている程度で、実装した記憶がありません。振り返るとバブルのつもりが結局挿入ソート的な物を書いて終わってることが多いような気がします。 そこで正式なバブルソートというものを調べてみました。 今回は、ベクタに適用すると、in place で破壊的にソートする関数を作ります。 1.二重ループでバブルソート (define (vector-bubble-sort! vec :optional (swap? default-swap?)) (define len (vector-length vec)) (do ((head 0 (+ head 1))) ((>= head (- len 1)) vec) (do ((i (- len 1) (- i 1)) (k (- len
Kotlinマイルストーン9がリリースされた! M9 is here! | Project Kotlin KotlinのNull-safetyは死んでしまったのかい?— たろう (@ngsw_taro) 2014, 10月 16 これについて。 Javaのメソッドの戻り値の型がPlatform Typeって呼ばれる特殊な感じになったらしい。 今まではJavaのメソッドの戻り値の型は@NotNullなどで明示していない限り、すべてNullableとして扱われていた。 // Java public static Integer id(final Integer value) { return value; } // M9より前 val a = id(5) // aの型はInt? println(a.plus(2)) // コンパイルエラー M9では上記の変数aの型がPlatform Typeと
はじめに Swiftのコードは多様な記述の仕方ができるので柔軟でかつ表現力もありますが、チームで開発を行うとどうしても記述の仕方が統一できず可読性も上がりません。弊社(Wantedly)でSwiftのアプリを開発した経験をもとにアプリ開発におけるコーディングスタイルガイドを作成しました。このコーディング規約がベストプラクティスだというわけではなく、Swiftもまだまだ手探りなところもあるので、参考情報としてご参照ください。また、規約の範疇ではないですがエラーになりやすい記述も合わせてフォローしています。 バージョン v0.3 改版履歴は文末を参照ください。 コーディング規約の必要性について Swiftはプログラマがリスクを取ることによってより簡素に端的に記述ができたり、型推論が強力なので型の明記を省略して記述ができます。チームでSwift開発を行う場合は、詳細に記述するのか、省略して記述す
プログラミング初心者に ECMAScript(JavaScript) を最初の言語として勧めるべき? Meguro es6
第三回は gongoさん(@gongoZ)さんでした. リポジトリ https://github.com/gongo/elfactory ~/.emacs.dより user-emacs-directoryを使った方がよい https://github.com/gongo/elfactory/blob/master/init.el 前にも書いたけど, 他人が使うことを容易にするためには '~/.emacs.d'とベタ書きするよりは, user-emacs-directory変数を 使った方がよいです. 例えば init.elを以下のように書き換えた(リファクタリング含む)とします. ;;--------------------------------------- ;; load-path for elisp files ;;---------------------------------
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く