タグ

scalaとScalaに関するgolden_egggのブックマーク (134)

  • Effective Scala - Twitterのベストプラクティス

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Effective Scala - Twitterのベストプラクティス
  • Play 2.0 Scala プロジェクトのセットアップ手順 - seratch's weblog in Japanese

    Mac の方はこちらもどうぞ http://d.hatena.ne.jp/seratch2/20120410/1334074688 Windows での手順 Play 2.0 Scalaの検証をしているので、最初の手順をまとめました。特に理由はないですが、Windows上で試した記録です。 Windowsでplayコマンドを起動すると「Windows, really? Ok, disabling colors.」と毎回茶化されます。 Play 2.0 Scala まだこれからの部分もありますが、公式ドキュメントはこちらです。 http://www.playframework.org/2.0 https://github.com/playframework/play20 クラスメソッドさんのブログ 2011/11時点で試している偉大な先人です。参考になりました。 http://dev.cla

    Play 2.0 Scala プロジェクトのセットアップ手順 - seratch's weblog in Japanese
  • プログラミング言語Scala 日本語情報サイト - 静的型でできること(1)

    いきなりですが、このコラムを読んでおられる方々は、静的型付けに対してどのようなイメージをもっておられるでしょうか。今まで、静的型付け VS. 動的型付けの議論をさんざん見てきましたが、静的型の能力に関して正しく理解されている議論をあまり見かけたことがありません。静的型付け VS. 動的型付けの議論で、静的型付け(および明示的な型付け)のメリットとして主に挙げられるのは次の2点でしょう。 コンパイル時に単純なエラーを発見することができる 静的型を明示的に書くことにより、コードを読む人間により多くの情報が伝わる これらのメリットは間違いではありませんが、あくまでJava的な型システム上での話であり、静的型システムによって検出できることは、もっとたくさんあります。このシリーズでは、Scalaの静的型システムを駆使することで、どのような事ができるのかを紹介していきたいと思います。 ここで第1回の題

    golden_eggg
    golden_eggg 2012/01/09
    ファイルの読み込み/書き込みAPIを例にした静的型のメリット説明
  • Learn Scala

    Install Scala on your computer and start writing some Scala code!

  • ドワンゴScala勉強会で学んだ、ハイブリッド言語「Scala」の魅力 | Lab by engineering@dwango.jp

    こんにちは初めましてー。2011年度新卒の田中です。 12月から急に寒くなってきましたね。 11月が暖かかったからといって油断していませんか? 私は完全に油断していました。まだ冬服を買っていません。 さて、まだ暖かかった11月、ドワンゴでScala勉強会という熱いイベントがありました。 私は最近Scalaを勉強し始めたのですが、この勉強会で、Scalaの魅力的な機能をたくさん知ることができました。 今回はScala勉強会から持ち帰った情報や今まで私が勉強してきたことを元に、Scalaのどこが魅力的なのかを記事をしていこうと思います。 それではよろしくお願いいたします。 対象読者 Javaを書いたことがある方 Scalaを知りたい方 Scalaを始めたばかりの方 Scala? ドワンゴはエンジニア同士の技術交流が盛んな会社で、プログラミング言語を中心に日々、情報交換、議論が行われています。

  • 始める sbt - ようこそ

    ようこそ! 始める sbt 1/14 ページ 次 原文: Getting Started Guide 誤訳の報告をする。 「始める sbt」で君も sbt を始めよう。 sbt は柔軟で強力なビルド定義 (build definition) を作ることができるけど、そこで使われている概念の数は多くはない。 多くはないけども、sbt は他のビルドシステムとは一味ちがうから、ドキュメントを読まなければ、いくつかの細かい点でハマっちゃうと思う。 この「始める sbt」で、ビルド定義 (build definition) の作成とメンテナンスに必要な概念を説明する。 「始める sbt」を読むことを強くお勧めしたい! どうしても忙しいという場合は、最も重要な概念は .sbt ビルド定義、 スコープ、と 他の種類のセッティング に書かれているけど、このガイドの他のページを読み飛ばしても大丈夫かは保障し

  • Twitterで使っているScalaで書かれたオープンソースのメッセージキューサーバー、Kestrel – yusuke.blog

    Kestrelは大規模かつ高速に運用できるメッセージキューサーバーです。Twitterで使っています。 ソースはhttps://github.com/robey/kestrelよりチェックアウトできます。 ・特徴 Kestrelは特徴として – memcachedプロトコルをサポートしており、クライアントのプラットフォーム非依存 – Scalaで書かれており、高速なJVMの恩恵を受けることが出来る – 全部で2500行ほどとシンプル – 基メモリベースで高速だがメッセージはファイルシステムにジャーナルが記録されており耐障害性が確保されている – キューから取り出したメッセージをクライアントがacknowledgeするまで捨てないことで処理漏れを防ぐことができる といったことが挙げられます。 ・Memcachedプロトコル Memcachedプロトコルの基は非常に簡単で、setコマンドで

    Twitterで使っているScalaで書かれたオープンソースのメッセージキューサーバー、Kestrel – yusuke.blog
  • Akkaが1.0になった。JavaとScalaにアクターモデルをもたらす

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Akkaが1.0になった。JavaとScalaにアクターモデルをもたらす
  • MapReduce以外の分散処理基盤BSP, Piccolo, Sparkの紹介 - Preferred Networks Research & Development

    どうも,実は今年から開発チームにjoinしていた中川です.可愛い犬の写真がなかったので,可愛いマスコットの画像を貼っておきます. 最近MapReduceとかその実装であるHadoopとかをよく聞くようになりました.これはつまり,それだけ大量のデータをなんとか処理したいという要望があるからだと思います.しかし当たり前ですが,MapReduceは銀の弾丸ではありません. ということで,最近気になっているMapReduceとは違ったアプローチを取っている分散処理基盤について,社内のTechTalkで話した内容を簡単にまとめて紹介したいと思います. Bulk Sychronous Parallel このアルゴリズム自体は1990年に誕生したものです.長いのでBSPと書きます.さて,グラフから最短経路を求める時,MapReduceは使えるでしょうか?このような論文が出るくらいですから出来ないことはあ

    MapReduce以外の分散処理基盤BSP, Piccolo, Sparkの紹介 - Preferred Networks Research & Development
  • Scala School

    Other Languages: 한국어 Русский 简体中文 About Scala school started as a series of lectures at Twitter to prepare experienced engineers to be productive Scala programmers. Scala is a relatively new language, but draws on many familiar concepts. Thus, these lectures assumed the audience knew the concepts and showed how to use them in Scala. We found this an effective way of getting new engineers up to spe

  • Play framework で Java Web アプリケーション開発をもっと簡単に

    Play framework で Java Web アプリケーション開発をもっと簡単に ついに Web デベロッパによって Java フレームワークが開発されました。 ぶくぶくに膨れ上がったエンタープライズ Java をクリーンに置き換える魅力に気付いてください。 Play は開発者の生産性に注目し、RESTful アーキテクチャを目指します。 ★ リリース 1.0.2 ダウンロード そして はじめてみよう ! 概要 バグを直したらリロードするだけ Java ファイルを修正して、保存して、ブラウザをリロードすれば、すぐに結果を見ることができます! コンパイルもデプロイもサーバの再起動も必要ありません。 ステートレスモデル Play は "Share nothing" なシステムです。 同じアプリケーションの多数のインスタンスを複数台のサーバ上で動作させることで容易にスケールし、REST に

  • Scalaメモ(Hishidama's Scala Memo)

    インストール [/2011-09-14] 最初のサンプル [/2011-06-07] コマンド scalac・fsc scala [/2013-06-08] 色々作ってみる [/2017-01-24]

  • Scala開眼

    1階受付:インストール等 / 1階案内版:コマンド / 2階:書き方 / 3階:文と式 / 4階:関数 / 5階:オブジェクト指向 / 6階:型 / 7階:注釈等 / 屋上:言語仕様要約 / 雲:scalaパッケージ概観 / 青空:その他の付属パッケージ概観 なお、以上の解説はJavaの文法とコマンドや標準ライブラリ等を一応知っていることを前提(現行のScalaはなおJavaライブラリへの依存度が高くScalaだけで完結できる状態では無い。なお、Scalaのコンパイラ自体はJava1.4用のコードも吐けるが、標準ライブラリが多く1.5を前提としている)とし、その違いだけをとりあえずは書き留めるものである。もっぱら文法やライブラリ参照用であることを目指しているので、例や特長等は次のリンクを参照されたい(なおただし、原著者たちの配慮にもかかわらず、それらの例は関数型言語に関する事前の概要的把握

  • Java がサポートされたクラウド環境 Heroku で Play!Scala を試す | アピリオ Tech Blog

    2011年9月7日水曜日 Java がサポートされたクラウド環境 Heroku で Play!Scala を試す Tweet 先日Herokuで「Heroku for Java」の発表がされました。 http://blog.heroku.com/archives/2011/8/25/java/ Herokuはスケールアウト可能なクラウド上のプラットフォーム環境です。 言語はRuby、Node.js、Clojureに対応しているので、最近のクラウドを取り巻く環境が簡単に手に入ります。 今回のJavaの対応により、さらに開発者にとって身近な環境になったという印象をうけます。そしてHerokuは今後も色々な言語に対応していく予定であるとも言っています。 これを機に触って見て感触を試してみようと思う方も多いのでは無いでしょうか? salesforceのブログでも発表があり、Mavenや

  • 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の場合は参照できない"
  • カリー化談義 - あどけない話

    最近、スタートHaskellで「カリー化された関数のメリットは何か?」という質問が出た。そのすぐ後に、kmizuさんがカリー化の誤用に対して警鐘を鳴らしてしていた。僕からするとkmizuさんの「カリー化の定義」も誤用に思えたので、調べるとともに考えたことのまとめ。 いろんな定義 「カリー化する」という用語は、すくなくとも以下の3つの意味で使われているようだ。 部分適用という意味 これは明らかに間違い 「複数の引数を取る関数」を「一引数を取る関数のチェインに直す」こと これはkmizuさんの定義。世間でもよく使われる。 「構造体を一つ取る関数」を「構造体のメンバーを複数の引数にばらし、一引数を取る関数のチェインに直す」こと これは僕の定義。というか、Haskellコミュニティの定義。 「部分適用」の意味で使うのは明らかに間違いのなで排除。定義2と3について議論する。あとで、部分適用とは何かに

    カリー化談義 - あどけない話
  • SBTのセットアップ.md — Gist

    原文: https://github.com/harrah/xsbt/wiki/Setup はじめに このページでは、どのようにしてsbtを使用してプロジェクトをセットアップすればいいのかを説明します。基的な手順は以下のようになります sbtを起動するためのスクリプトを作成します ソースコードを作成して、lib/ディレクトリの配下にjarを入れます ビルドの設定をします 基的な使用手順を知るにはRunningを読んでください 構成の手順については、Settingsを参照してください Sbtの起動 sbtを起動するための一番簡単な方法は、一行のスクリプトを書くことです。まだsbt-launch.jarをダウンロードしていなければダウンロードしてください。 注意: $SCALA_HOME/lib ディレクトリや、あなたのプロジェクトの lib ディレクトリなどのクラスパスが通っている場所に

  • blog.8-p.info: sbt で Scala の開発サイクルを速くする (前編)

    Posted at 2010/01/06 00:53, Modified at 2010/01/06 01:54 fsc は速くなった のだけど、コンパイルしたらテストしたいし、テストしたら普通に実行したい。コンパイルだけ速くなっても開発のサイクル全体はそんなに速くならないのでは、といまさら気づいた。scalac, fsc 同様に scala コマンドの実行のために Java VM をあげさげするのを減らす必要がある。 Java VM のあげさげを減らすのは Java 界にも需要があるらしく、具体的な実装として、Ant を対話的にした antshell や Ant Console がある。Scala は Ant からも使えるので、これらもまま使えるはずだけど、実はページがどちらも消えてしまっていて試せていない。 どうしようと探していたら sbt が良さげだった。 sbt - simple

  • scala-kaigi1-sbt

    仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)Hiroaki KOBAYASHI

    scala-kaigi1-sbt
  • とあるWeb系企業にscalaを導入させてみた

    とあるWeb系企業にscalaを導入させてみた - Presentation Transcript ^:HE 6FDOD [ ][ [ ) $NLQRUL <DPDGD #DBDPDGD WR Z += c c c = TZB a-DYD c 3DUP Z+DGRRS ZPRQJR% Z 2 6FDOD 6FDOD J^ #M LN R Z 6FDOD! ^ F=6FDOD! = c` a6FDOD #M LN R /7 2= /7 3 6FDOD$ "-DYD = [ REMHFW_ a VLQJOHWRQ WUDLW=PL[LQ $FWRU 6/-DYD+ ^ % [ Z aa B[^= ] ^Z-90 Z 4 Z 5 6FDODC ][ ? 6 6FDODC ] ? 7 ,[Z 6FDOD [^ 8 , ,Z = [ Z? 9 3DUP ^:HE ` b ^616 a 3+3 =X[

    golden_eggg
    golden_eggg 2011/08/31
    ええスライドやなぁ、特に最終ページがw