タグ

ブックマーク / xuwei-k.hatenablog.com (6)

  • Scalaにおける細かい最適化のプラクティス - xuwei-k's blog

    列挙順自体はとくに意味ありません。あと「どの最適化がどのくらい速くなるのか?」を詳細に計ったことはないですし、「原理的にこうなってるから(ry」というのを説明するに過ぎません。中には「JITで無意味になるようなどうでもいい細かすぎること」も書いてありますし、最適化のトレードオフとして失うものもあるので、そのあたり自己責任でお願いします。当に最適化が必要とされる場合は、以下のものを無闇に実行するよりまず計測したほうがいいのは、言うまでもありません。*1 1. private[this]をつかえ scalaのvalやvarは、private[this]にしたときのみ、直接のフィールドアクセスになります(それ以外ではメソッド呼び出し)。シングルトンのobjectの場合も同様です。private[this]をつけられる場合はできるだけつけましょう 2. なんでもかんでもListをつかうな 最初の

    Scalaにおける細かい最適化のプラクティス - xuwei-k's blog
  • 最近のdispatchについての説明や、dispatch reboot の Scala 2.10対応について - xuwei-k's blog

    Scala界隈でわりと有名(?)なdispatchというhttpクライアントライブラリがあります。 そして、現在通称dispatch-classicと、通称reboot(もしくは単にdispatchとも呼ぶ?)の2種類あります。 むかしはdispatch-classicだけでした。というか、rebootのほうがでたことにより、単にdispatchと呼ばれていたものが、dispatch-classicと呼ぶようになりました。 github上ではdispatch/dispatchが古いdispatch-classicのほうで、dispatch/rebootのほうが新しいほうです https://github.com/dispatch/dispatch https://github.com/dispatch/reboot なにが違うかというと、classicのほうは "org.apache.ht

    最近のdispatchについての説明や、dispatch reboot の Scala 2.10対応について - xuwei-k's blog
    golden_eggg
    golden_eggg 2013/03/26
    0.9系がrebootだったのか。。tagsoupどこのパッケージに行ったんやって迷子になってた
  • Scala の開発に学ぶコードレビュー体制とプロジェクト開発 - xuwei-k's blog

    コードレビューについて Oh, you `re no (fun _ → more) より引用 単に普段の開発で使っている VCS でそれを行なっていました。 つまり、コードの中にコメントの形でレビューを書き、それをコミットする。 そしてそこから派生する議論も全てコード上のコメントで行います。 (もちろん複雑な話になった場合は直接の議論を行い、合議の結果だけを記しておく、なども当然あるでしょう。) レビューをソースコードのコメントとして直接書き込むのは、GHC の開発でも時々見かけますね。例えば、新機能の開発 branch を作って、新しい機能を開発している時とか。 2012-08-14 18:44:19 via OpenTween まあ、主に入った変更に Simon Peyton Jones が(ソースコード上で直接)コメントしそれに従ってソースコードを修正する形なので、レビューと言えるほ

  • Scala2.9.0のREPLで、すごく便利な裏技を発見した件(全自動ぁばばばばばばばばばばばばばばば) - xuwei-k's blog

    以前powerモードの一部の機能紹介しましたが、なんだか2.9.0でREPLのpowerモードの機能がさらに増えていて、しかもかなり便利なものを見つけたので紹介 まず :power と打つとpowerモードという、コンパイラ内部にアクセスして、あんなことやこんなことができる変態的なモードになります。2.8.1だと以下のような感じだったのですが scala> :power ** Power User mode enabled - BEEP BOOP ** ** scala.tools.nsc._ has been imported ** ** New vals! Try repl, global, power ** ** New cmds! :help to discover them ** ** New defs! Type power.<tab> to reveal ** scala>

    Scala2.9.0のREPLで、すごく便利な裏技を発見した件(全自動ぁばばばばばばばばばばばばばばば) - xuwei-k's blog
    golden_eggg
    golden_eggg 2012/06/17
    powerモードの:wrapでREPLの式評価結果に一味加える
  • Javaの10個のBad Partsのほとんどはscalaだと解決されちゃうんだぜ - xuwei-k's blog

    ネタ元 業務系のJavaプログラマーが知っておくべき10個のBad Partsとその対策 結論から先に言うと、3と10以外は結構直接的にscalaで解決できるというか、javaに比べてscalaの方が便利だとおもいます。*1 あと、元ネタのblogの人はgroovy詳しいみたいですが・・・ groovyとscala比べるとgroovyの方が手軽で便利だったり、scalaのほうが型安全だったり*2いろいろあるかもしれませんが、groovyあまり詳しくないので、その辺の言及というか、比較はやめておきます。*3 1.標準APIのチェック例外が扱いにくい チェック例外ってなにそれおいしいの?(・ω・) java Field field; try { field = getClass().getField("testField"); Object value = field.get(this); }

    Javaの10個のBad Partsのほとんどはscalaだと解決されちゃうんだぜ - xuwei-k's blog
  • Scalaを始めようと思っているJavaプログラマのための、JavaとScalaの予約語の違い - xuwei-k's blog

    ScalaJavaってまぁまぁ見た目は似てて、同じ予約語も多いので、Javaの予約語を、Scalaの視点からみた場合に分類して簡単に解説してみました。分類の方法は独自だし、けっこう雑です。 Scala始めようと思ってるけど、Javaのあの予約語は、Scalaだと同じやつあるの?もしないなら、Scalaの予約語の、どれを使えばいいの? っていうJavaプログラマ向けです。Javaプログラマにこそ、Scalaが普及して欲しいので。 完全に説明するのもめんどくさかったので、説明もなんか雑ですが・・・ 同時に、以前scalaの予約語について書いたものがあるので、こっちも見るとよいかも。*1 だいだいJavaと同じ機能のモノ 特に説明の必要がないほど、ほぼJavaと同じ使い方するものはなにも書いてません。 catch class もちろんclassの定義に使うのは同じです。 が、Javaの場合 C

    Scalaを始めようと思っているJavaプログラマのための、JavaとScalaの予約語の違い - xuwei-k's blog
    golden_eggg
    golden_eggg 2011/09/07
    "Javaのprotectedって、同じpackage内からは参照できるけど、scalaの場合は参照できない"
  • 1