タグ

Scalaに関するVoQnのブックマーク (11)

  • 【Scala超入門~副作用の無いモナドな女への道】~0monad | Scala Girls Blog

    はじめまして!アドテクスタジオ人事の清原です。 サイバーエージェントのアドテクスタジオでは、Scalaを使って開発されたプロダクトが多数あり、Scalaに力を入れております! この度、ほんとうに突然なのですが、まっっったくプログラムを書いたことない私がScalaを始めることになりました…! (こ、この写真はいきなり呼び出だされ、一体何を注意でもされるのか緊張しているところですね…) (いきなりScalaを渡されて戸惑う私…撮られているとは) そもそもScalaってなんでしょう ちょっとギャルブランドにありそうな名前ですね ってなくらいの私がScalaをゼロから学んでいく模様をレポートしていきます! 既にエンジニアの方はなんだこれ!?って感じで高見から笑っていただき、 これからScalaやプログラミング自体を始めてみようと思われる方には、「こんな私でも始められる!」と少しでも導入のお役に

  • Representing Emptiness In Scala (with Null, null, Nothing, Nil, None, and Unit) - Nick Knowlson

    VoQn
    VoQn 2014/09/09
    Scalaに置ける「無い」の表現。たくさんあるね
  • Scalaのコンパイルを3倍速くした話

    11. hprof: JVM標準 プロファイラ • jvmオプションつけてsbt compile • 結果はjava.hprof.txtに出力されま す $ sbt -J-agentlib:hprof=cpu=samples,depth=5 clean compile 12. 結果見る • depth=5で荒い解析 • クラスのロードが大量にされている……? rank self accum count trace method 1 12.04% 12.04% 2158 300093 java.util.zip.ZipFile.getEntry 2 9.90% 21.95% 1775 300065 java.lang.Throwable.fillInStackTrace 3 7.21% 29.16% 1293 303874 java.lang.Class.forName0 4 5.40% 3

    Scalaのコンパイルを3倍速くした話
    VoQn
    VoQn 2014/07/18
    試みが培いを得た話だ
  • Scalaコードでわかった気になるDDD | GREE Engineering

    みなさん、こんにちは。グリーのかとじゅん(@j5ik2o)です。 このエントリは GREE Advent Calendar 2013 の 18日目の記事です。よろしくお願いします。 私がグリーに入社してやっていることは、プログラミング言語 Scalaとドメイン駆動設計(以下、DDD)の布教活動です。布教活動といっても宣伝するだけでは具体性に欠けるので、実際に開発チームに入ってScalaやDDDの技術支援を行っています。エントリでは、Scalaを用いたDDDの設計と実装をどのように行っているかを、DDDを知らない人でもできるだけわかりやすく説明したいと思います(Scalaわかっていると読みやすいですが、あんまり複雑なコードは出てこないのでなんとなく読めるのではないかと思います)。なお、DDDの実践例は他にもあります。一例だと思って読んでいただければ幸いです(先日のSNSチームでのドメイン駆

    Scalaコードでわかった気になるDDD | GREE Engineering
    VoQn
    VoQn 2013/12/29
    ボリューム多いので小分けのステップ踏むような連載でも良いレベルの充実した記事
  • Scalaでプログラムを作りました

    7. sample.org * 登場⼈人物 #+caption: 登場⼈人物⼀一覧 | name |! |------|! | 商社 |! ! ** 顧客 #+caption: 属性⼀一覧 | name | type |! |------+--------|! | 住所 | string |! ! *** 種類 **** 個⼈人顧客 **** 法⼈人顧客 * 道具 ** 商品 *** 属性 **** 商品名 **** 定価(long)! *** 区分 **** 商品区分(第1類;第2類;第3類)! * 出来事 ** 購⼊入する *** 部品 **** 顧客 **** 商品 8. Java $ sm -java sample.org! /src/main/java/model/ModelContext.java! /src/main/java/model/ModelRepository.ja

    Scalaでプログラムを作りました
    VoQn
    VoQn 2012/05/01
    ここの圏論とデザインパターンの関係性で,ここまで明快にした図ははじめてかもと思った
  • 関数合成のススメ 〜 オブジェクト指向プログラマへ捧げる関数型言語への導入その1 - ( ꒪⌓꒪) ゆるよろ日記

    こんにちわ。今日は、関数合成の話をします。 標準入力から何行か読み込んで、ソートして返す以下のようなScalaのコードを例にします。 例なので、あえて冗長なコードを書いてます。 このコードでは、4つの関数が用意されています(unlines/putstr/sort/lines)。 この4つの関数を組み合わせて、読み込んだ文字列を行に分解して、ソートして、 また改行コードをつけて文字列にもどして表示、ということをやっています。 object Main extends App { val in = scala.io.Source.stdin.getLines.mkString("\n") // 改行をつけて結合する関数 val unlines = (s:Seq[String]) => s.mkString("\n") // 文字列を表示する関数 val putStr = (s:String) =

    関数合成のススメ 〜 オブジェクト指向プログラマへ捧げる関数型言語への導入その1 - ( ꒪⌓꒪) ゆるよろ日記
    VoQn
    VoQn 2012/02/03
    Scala だと こう書くのか
  • 佐藤先生がErlang、Scala、Javaなどの並行処理を斬る! - スティルハウスの書庫の書庫

    ここ数日の佐藤先生のエントリが熱い! Erlang、ScalaGoJavaなどの現代の言語(Erlangは古いか)における並行処理の扱い方について、それぞれの歴史的背景や意義、得手不得手などがわかりやすく紹介されてます。80年代から並行処理やオブジェクト指向を研究されてきた佐藤先生ならではの視点ですね。ちょっと長くなりますが特に私が興味深かった部分を引用します(強調は私): 佐藤一郎: Web日記 (2010年) 最近、興味深いのはオブジェクト指向言語のScalaやErlangが話題を集めていることでしょうか。どちらもActor Modelをベースにしているそうですが、オブジェクト指向言語の歴史でいうと、Actor Modelなどの並行処理用オブジェクト指向言語の研究が盛んになったのは1985年からの6,7年ぐらいだと思います(Actor Model自身はもっと古いですが)。そして19

    佐藤先生がErlang、Scala、Javaなどの並行処理を斬る! - スティルハウスの書庫の書庫
    VoQn
    VoQn 2011/11/20
    並行処理用オブジェクト指向言語の歴史的経緯と Scala Erlang で採用されてる Actor Model の話
  • Welcome to Scala hack-a-thon #1’s documentation! — Scala hack-a-thon #1 v1.0 documentation

    Welcome to Scala hack-a-thon #1’s documentation!¶ Contents: 1. Scala開発環境の準備 1.1. Scala実行環境のインストール 1.2. 開発環境のセットアップ 1.3. その他やっておくと便利なこと 2. Scalaの開発スタイル 2.1. ソースコードとコンパイル 2.2. アプリケーションを作り、実行する 2.3. インタプリタでの実行 3. Scalaの基 3.1. 基的な文法 3.2. 関数編 3.3. クラス、オブジェクト、トレイト 3.4. トレイト(trait) 3.5. importとpackage 3.6. ケースクラスとパターンマッチ 4. Scalaの高度な機能 4.1. Implicit ConversionとImplicit Parameter 4.2. 型のパラメータ化 4.3. 遅延評価

    VoQn
    VoQn 2010/07/09
    すばらしい。こういう日本語の資料のまとめ欲しかった
  • 悲願のマイホーム大作戦 – 年収は少ないものの共働きでコツコツと節約を試み頭金を貯めマイホームをゲットする迄の奮戦記です

    肌トラブルがでたときは、ベビーローションでしっかりと保湿し、次に「ルイボスティーパック」が良いと知りティッシュにルイボスティーをとにかくがぶ飲みして症状が改善されている為、随時変更する場合があります。 暇さえあればすぐに品切れになる場合があります。その際にご注文なさるかご検討ください。 まずはじめは、ベビーローションでしっかりと保湿し、次に「ルイボスティーパック」が良いと知りティッシュにルイボスティーを染み込ませて塗ってしっかり保湿が必要だということを知ったんですが、医師の言う通り、里帰り先の小児科にかかってね。 使う量が足りなかったようです。会員サイトの登録をご希望の方はこちらをご一読ください。 入荷待ちの場合、ご登録いただきますと、入荷時にご注文なさるかご検討ください。 入荷待ちの場合、「入荷お知らせ」ボタンが表示されたというものが多数。 パックするだけでなく、私もルイボスティーを染み

  • Scala変態技法最速マスター - kmizuの日記

    Java変態文法最速マスターなんてのがかなりブクマされてるみたいだが、変態さならJavaなんてScalaの足元にも及ばないぜ!!ということで、Scala版を書いてみました。しかし、実はあまり変態ではないかもしれません。元ネタと違って、これを読めば何かがわかる、という意味の実用性はあまり無いでしょう。 implicit conversion編 基 Scalaのimplicit conversionは使いようによってはScalaの強力な型システムを台無しにしてしまう力を持っています。たとえば、 implicit def string2int(x: String): Int = Integer.parseInt(x) というimplicit conversionを定義してやると、"300" / 3が100になるなどというキモい挙動を実現することができます。また、さらにカスタマイズして、16進数

    Scala変態技法最速マスター - kmizuの日記
  • Coderspiel / Runaway processing

    Once upon a time there was a graphical programming princess named Processing. She conjured the most beautiful animations and interactive art in all the world! Every artist wanted to work with her. But the princess’s castle lay within a vast colony of millworkers that, excepting her own court, had little appreciation for her talents. Indeed, she was better known outside the colony than inside. The

    VoQn
    VoQn 2008/09/06
    ScalaでProcessingを書く!!
  • 1