Ask questions, find answers and collaborate at work with Stack Overflow for Teams. Explore Teams Collectives™ on Stack Overflow Find centralized, trusted content and collaborate around the technologies you use most. Learn more about Collectives
これは Scala プログラマのための C# LINQ 機能の覚え書きだが、逆としても使えるはず。 型推論 C# には型推論がある。個人的に、ローカル変数ではできるだけ var を使うようにしている。
1. 「リストの要素を取得する」関数を例として、クラスの拡張を考える Lisp でリストの先頭要素を得る関数は car 。先頭以外の残りの要素を取得するには cdr 。 (car '(1 2 3 4 5)) => 1 (cdr '(1 2 3 4 5)) => (2 3 4 5) ( cf. CAR and CDR – Wikipedia ) Haskell で上記に相当する関数は、 head tail 類似した対照的な関数に init last がある。 main = do let xs = [1..5] print $ head xs -- 1 print $ tail xs -- [2,3,4,5] print $ init xs -- [1,2,3,4] print $ last xs -- 5 これらの関数名を、他の言語でも使えるように、拡張の方法をそれぞれ見ていく。 2. Ru
C#の「拡張メソッド」についてはここを参照。 MSDN 拡張メソッド (C# プログラミング ガイド) Scalaの「暗黙の型変換」についてはここを参照。 Scala by Example 第 15 章 暗黙の引数と変換 話題の発端となったのはここ。 @IT 連載:[完全版]究極のC#プログラミング Chapter14 拡張メソッド mutaguchi @mutaguchi 拡張メソッドはLINQのために追加された機能というのは分かるが、普通にIEnumerableのメソッドじゃダメだったのかと思ったりしていた:Chapter14 拡張メソッド - @IT http://t.co/hZwK82eU
A common use of lambda expressions is in GUI development. In general, GUI programming resolves around connecting behaviour to events. For example, if a user presses a button (an event), your program needs to execute some behaviour. This might be the storage of some data in a datastore. In Swing, for example, this is done using ActionListeners: class ButtonHandler implements ActionListener { public
つい昨日0.4がリリースされたGroovyServですが、相当バグフィックス入ってるのでお薦めです。 GroovyServはGroovyスクリプトの起動を高速化するものですが、Groovyから呼び出すものはGroovyに限りません。つまりJVM上で動くものならなんでも起動の高速化が理論的には*1可能です。 たとえば、scalaの処理系とかscalaで書かれたプログラムもその例外ではないです。 scalaには、scalacというコマンドがあってscalaコードをコンパイルします。まずscalacを常駐させて起動を高速化してみましょう。 その前にオリジナルのscalacの実行速度。(Mac OS X, Scala 2.8.0-final使用) コンパイル対象(hello.scala)は以下の通り。 object HelloWorld { def main(args: Array[String]
原文(投稿日:2011/04/13)へのリンク QCon北京での講演の1つ(完売していた)として、Gavin King氏は氏がRed Hatでこの数年の間取り組んでいるプログラミング言語Ceylonについて発表した。このニュースはtwitterで取り上げられ、すでにいくつものサイト、例えばLambda the Ultimate、Slashdot、Reddit、YCombinator Hacker Newsなどでレポートされている。それを受けて、Gavin氏は話題となっているプレゼンテーションへの参照と合わせてCeylonに関する投稿を行った。また、氏はこの言語を決してJavaキラーとしてデザインしたわけではないことを明らかにしている。 それにもかかわらず、私はいくつかのコメントをすべきでしょう。まず第一に、私はこれをJavaキラーや次世代のJava言語として宣伝したのではありません。私の言
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
Scala の Web framework と言えば、Lift などが有名だが、コンパクトで Sinatra 風味の Web framework と呼ばれる Scalatra も面白い。 Scalatra | A tiny, Sinatra-like web framework for Scala scalatra/scalatra - GitHub Sinatra は、Rack をベースに、簡潔で分かりやすい記述を可能とした DSL で彩りを加えている。Scalatra は、Servlet をベースに、簡潔で分りやすい記述を可能とした DSL で彩りを加えている。 Hello Wold を表示させる Web アプリケーションは以下のように書ける。 Sinatra は、 require 'rubygems' require 'sinatra' get '/' do "Hello, Worl
(この記事は Scala Advent Calendar jp 2010 の5日目です。) Scala+Androidで過去にはまったことなどを小ネタとして紹介します。 Androidに限らず、JavaのライブラリをScalaから使用する上でも役にたつかも。 java.lang.Classのインスタンスを取得する ScalaではclassOfを使って取得できます。 Androidでは明示的Intentを作成するときなどに使います。 // Javaの場合 new android.content.Intent(this, HogeService.class) // Scalaの場合 new android.content.Intent(this, classOf[HogeService]) scalaの予約語とおなじ名前のメソッドがあってコンパイルエラーになる android.content.
GAE/JでのScalaのSpinUp時間を計ってみました。 appengine ja night #6 Beer Talk : ATNDでLTしたときに言っちゃいましたのでね。 java-ja温泉第2回の成果その1ですお。 測定方法 測定パターンは以下の4パターンです。 simplescala Scalaで書いた単純なFilterで、Responseに直に"Hello World"を出力 listscala Scalaで書いた単純なFilterで、Listを使って1から10までResponseに直に出力 slim3scala ScalaでSlim3のControllerを用意し、Responseに直に"Hello World"を出力 slim3listscala ScalaでSlim3のControllerを用意し、Listを使って1から10までResponseに直に出力 単純なコードだ
This is the home page for Exploring Lift, an open source book providing in-depth coverage of the Lift Web Framework. The book is downloadable for free on this website in both PDF and HTML formats, as well as an online version of the HTML format. If you have any questions or comments about the book itself, please feel free to join us on the mailing list. If you find errors in the book, please open
This script enables syntaxic coloration of source code written in the Scala programming language (http://www.scala-lang.org) Disclaimer - This is an absolutly basic version - Only keywords and simple constructs like comments are recognized - It is by far not finished Known bugs - automatic indentation does not work properly when using the syntaxic possibilities of scala (for example when omitting
ScalaのListにおいて、「::」という連結用のメソッド(演算子でなくメソッドなんですよね)がありますが、 同じく「:::」というメソッドもあります。ど忘れして「これ何だっけ」となったのですが、、意外と調べるのに苦労。 要は「展開して連結」をしてくれるのが「:::」メソッドです。 以下の実験で確認。 scala> val list1 = List(1, 2) list1: List[Int] = List(1, 2) scala> val list2 = List(3, 4, 5) list2: List[Int] = List(3, 4, 5) scala> val list3 = list1 :: list2 list3: List[Any] = List(List(1, 2), 3, 4, 5) scala> val list4 = list1 ::: list2 list4:
● [Scala] RubyからScalaに乗り換えた15くらいの理由 [注意] この文章を読むと、既存のRubyコードをScalaでrewriteしたくなる、 Rubyコードで型チェックをやるのが鬱になる、Ruby案件でやる気が出なくなる、 などの幻覚や異常行動が報告されています。 現在関わっているプロジェクトや家族のことを常に意識し、 気を強く持って冷静に読むとよいでしょう。 「Scalaプログラミング入門」を読みはじめて、いきなり大きく頷いてしまった。 "コーディング時間の半分をテスト作成に費やさなければならなかった"(p.3) "Railsによって得られた生産性の向上は、テスト作成の作業に失われてしまいました"(p.3) まさにここ数年私が抱いてた漠然としたストレスの正体が、的確に文章となっていたからだ。そしてほどなく、「あ、この機能がRubyに欲しかった!」という驚きと共に Sc
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く