プログラミング言語 Scala Wiki内検索 / 「actor-short-tuto」で検索した結果

検索 :
  • actor-short-tuto
    Scala アクター 簡易チュートリアル (Scala Actors A Short Tutorial) By phaller Created 2007-05-24, 08 26 はじめに (Introduction) マルチコアプロセッサの到来で並行プログラミングは不可欠になりました。並行性に関する Scala の主要な構文はアクターです。アクターは基本的に、メッセージ交換で通信する並行プロセスです。アクターは、メッセージ送信に関連するメソッドを起動する、アクティブなオブジェクトの形態と見ることもできます。 Scala アクターライブラリは、同期、非同期メッセージ送信の両方を提供します(前者は、複数の非同期メッセージ交換によって実装されます)。さらに、アクターは、リクエストを非同期に処理するフューチャ(*1)を使って通信しますが、その応答を待つことを可...
  • Tutorial和訳
    トップページ チュートリアル和訳 A Scala Tutorial for Java Programmer の和訳 Based on A Scala Tutorial for Java Programmer version 1.3 下記のWikiページは version 1.3 (July 13,2010) です。英文は表示されませんが、編集ページ上にコメントで残してあります。加筆・修正等はどうぞご自由に。 1. はじめに 2. 最初の例 3. Javaとの連携 4. 全てはオブジェクト 5. クラス 6. ケースクラスとパターンマッチング 7. トレイト 8. ジェネリシティ 9. まとめ 翻訳文の PDFはこちらです。          &n...
  • Spec2.8Chap12a
    第 12 章 Scala 標準ライブラリ (The Scala Standard Library) Scala 標準ライブラリは、多数のクラスとモジュールを備えた scala パッケージからなります。以下で、それらのいくつかについて説明します。 12.1 ルートクラス (Root Classes) Figure 12.1 illustrates Scala s class hierarchy. The root of this hierarchy is formed by class Any . Every class in a Scala execution environment inherits directly or indirectly from this class . Class Any has two direct subclasses...
  • 28etc-a
    その他の資料 本家にあるドキュメントをいくつか訳したものです。誤訳もありそうなので参考程度にご覧ください。断り無く編集してください。気がついたことその他は、本ページ下方に投稿してください。 Scala アクター:簡易チュートリアル(Scala Actors A Short Tutorial)   : 原ページ     参考:Scala 2.8 アクター API ( ttp //eed3si9n.github.com/scala-actors-doc-ja ) 2.8 関連 パッケージオブジェクト (Package Objects)   : 原ページ チェインされたパッケージ節 (Chained Package Clauses)   : 原ページ ...
  • Spec2.8ChapBa
    Chapter B 変更履歴 バージョン 2.8.0 中の変更 お終いのカンマ (Trailing commas) 式、引数、型あるいはパターンシーケンス中のお終いのカンマは、 もうサポートされません。 バージョン 2.8 中の変更(開発中) Changed visibility rules for nested packages (where done?) Changed visibility rules in §2 so that packages are no longer treated specially . ネストしたパッケージの可視性規則を変更(どこでした?) §2 中の可視性規則を、パッケージが特別扱いされないように変更した。 Added section §3.5.3 on weak con...
  • Tutorial_2
    トップ Tutorial 2 A first example 2 最初の例 最初の例として、標準的な Hello world プログラムを用います。これはあまり興味深いとは言えませんが、Scala 言語に関する知識をあまり必要とせずに、Scala ツールの使い方を簡単に示すことができます。このようになります。 object HelloWorld { def main(args Array[String]) { println("Hello, world!") } } Java プログラマにはプログラムの構造はお馴染みのものでしょう。main と呼ばれる1つのメソッドがあり、main はパラメータとしてコマンドライン引数を文字列配列として受け取ります。メソッドの本体では定義済みメソッドである println を、友好的な挨拶文...
  • Tutorial_1
    トップ Tutorial 1 はじめに 1 はじめに この文書は Scala 言語とそのコンパイラについて簡単に紹介するものです。ある程度のプログラミング経験があり、Scala で何ができるか概要を知りたい人向けです。 オブジェクト指向プログラミングの基礎知識(とくに Java での)を前提としています。 目次     次ページ この文書はScala言語とそのコンパイラへの手っとり早い入門です。ある程度プログラミングの経験があり、Scalaでなにができるのか概要を知りたい人向けです。オブジェクト指向プログラミングの基礎知識(とくにJavaでの)を想定しています。 -- いいまわしの工夫 (2008-12-09 10 22 41) 素早く入門>手早く紹介 -- ktr (2009-04-06 12 24 00) qqqqqqqqqqqqqqq...
  • Tour_top
    トップ Turel 1 Introduction A Tour of the Scala Programming Language Scalaツアー Scala is a modern multi-paradigm programming language designed to express common programming patterns in a concise, elegant, and type-safe way. Scalaはモダンなデザインのマルチパラダイムプログラミング言語で、簡潔、エレガントかつ型に安全な方法で一般的なプログラミングパターンを表現するためにデザインされています。 It smoothly integrates features of object-oriented and functional languages....
  • Tutorial_3
    トップ チュートリアル和訳 3 Interaction with Java 3 Javaとの連携 Scala の長所の一つは Java コードとの連携が非常に簡単だということです。java.lang パッケージの全てのクラスはデフォルトでインポートされます。その他は明示的にインポートする必要があります。 それを示す例をお見せしましょう。現在時刻を取得して特定の国、例えばフランス*1で使われる表記方法を適用したいとしましょう。 Java のクラスライブラリには Date と DateFormat のような強力なユーティリティクラスがあります。Scala は Java とシームレスに連動するので、Scala のクラスライブラリに同様なクラスを実装する必要はありません。対応する Java パッケージのクラスをそのままインポートできます。 impor...
  • Spec2.8Chap3a
    第 3 章 型 (Types) 構文 Type = FunctionArgTypes = Type | InfixType [ExistentialClause] FunctionArgTypes = InfixType | ( [ ParamType { , ParamType } ] ) ExistentialClause = forSome { ExistentialDcl {semi ExistentialDcl} } ExistentialDcl = type TypeDcl | val ValDcl Infi...
  • ScalaByExample和訳
    Scala By Example の和訳 第 1 章 はじめに 第 2 章 最初の例 第 3 章 アクターとメッセージによるプログラミング 第 4 章 式と簡単な関数 第 5 章 第一級の関数 第 6 章 クラスとオブジェクト 第 7 章 ケースクラスとパターンマッチング 第 8 章 ジェネリックな型とメソッド 第 9 章 リスト 第 10 章 For内包表記 第 11 章 ミュータブルな状態 第 12 章 ストリームによる計算 第 13 章 イテレータ 第 14 章 遅延評価val 第 15 章 暗黙の引数と変換 第 16 章 Hindley/Milner 型推論 第 17 章 並列処理の抽象 和訳 PDFはここです reStr...
  • Spec2.8Chap12b
    12.3 標準的な参照クラス (Standard Reference Classes) This section presents some standard Scala reference classes which are treated in a special way in Scala compiler - either Scala provides syntactic sugar for them, or the Scala compiler generates special code for their operations . Other classes in the standard Scala library are documented in the Scala library documentation by HTML pages . この節では、S...
  • Chapter 17 Abstractions for Concurrency
    第 17 章 並列処理の抽象 (Abstractions for Concurrency) この章では一般的な並列プログラミングパターンを調べ、それらが Scala においてどのように実装されるかを示します。 17.1 シグナルとモニター (Signals and Monitors) 17.2 同期変数 (SyncVars) 17.3 フューチャー (Futures) 17.4 並列計算 (Parallel Computations) 17.5 セマフォ (Semaphores) 17.6 リーダー/ライター (Readers/Writers) 17.7 非同期チャネル (Asynchronous Channels) 17.8 同期チャネル (Synchronous Channels) 17.9 ワーカー ...
  • Spec2.8Chap4b
    4.6 関数宣言と定義 構文 Dcl = def FunDcl FunDcl = FunSig Type Def = def FunDef FunDef = FunSig [ Type] = Expr FunSig = id [FunTypeParamClause] ParamClauses FunTypeParamClause = [ TypeParam { , TypeParam} ] ParamClauses = {ParamClause} [[nl] ( i...
  • Spec2.8Chap8a
    第 8 章 パターンマッチング (Pattern Matching) 8.1 パターン (Patterns) 構文 Pattern = Pattern1 { | Pattern1 } Pattern1 = varid TypePat | _ TypePat | Pattern2 Pattern2 = varid [ @ Pattern3] | Pattern3 Pattern3 = SimplePattern ...
  • sid-swing-a
    scala.swing パッケージ The scala.swing package Ingo Maier November 1, 2009 英語PDF 1 紹介 (Introduction) scala.swing パッケージは Java Swing クラスの周りに、薄いラッパーのコレクションを提供します。 我々の目標は、Scala 中で自然に使えると同時に、既存の Swing プログラミング経験のある Java プログラマーも気にいる、Java Swing に十分近いライブラリを配布することです。 このドキュメントは Scala における Swing プログラミングの簡単な紹介であり、scala.swing 中の利用可能なクラスを概観し、そのデザイン原則を示します。最後に、ライブラリ拡張者が追加ラッパーを書くときに従うべきガイドライ...
  • Example5.5
    5.5 ここまでの構文 第 4 章と第 5 章では、プリミティブなデータと関数の、式と型を表現する Scalaの構文を扱いました。下記に、それらの文脈自由文法を拡張 Backus-Naur 記法で与えます。 | は選択を、[...] はオプション (0あるいは1回の出現)、{...} は繰り返し (0回以上の出現)を表します。 文字 Scala プログラムは (Unicode) 文字の列です。次の文字セットを区別します。 空白文字。たとえば 、タブ、改行文字 文字。 a - z 、 A - Z 数字。 0 - 9 区切り文字。 . , ; ( ) { } [ ] \ " 演算子文字。たとえば # + 。正確には、上記のどれにも含まれない印刷可能...
  • Tutorial_7
    トップ チュートリアル和訳 7 Traits 7 トレイト スーパークラスからコードを継承する以外にも、Scalaでは1つあるいは複数のトレイトからコードをインポートできます。 Javaプログラマがトレイトとは何かを理解する一番簡単な方法は、コードを含むことも可能なインターフェイスとみなすことでしょう。Scalaでは、あるクラスがトレイトから継承した場合、そのトレイトのインターフェイスを実装し、そのトレイトに含まれるコードも全て継承します。 トレイトの有用性を見るために、古典的な例である、順序付きオブジェクトを見てみましょう。あるクラスのオブジェクト同士を比較できると、例えばソートしたりする場合など、しばしば役に立ちます。Javaでは、比較可能なオブジェクトは Comparable インターフェイスを実装します。Scalaでは、Comparable...
  • sid-special-a
    Scala 2.8 における型専用化 (Type Specialization in Scala 2.8) Iulian Dragos May 6, 2010 英語PDF 1 はじめに Scala コンパイラは型消去を使って、無視できない程のパフォーマンスコストを引き起こす、パラメータを介する多相性(ジェネリックス)を避けます。基本的に型パラメータは消去され、その上限境界で置き換えられ、デフォルトの Object になります。 その結果、プリミティブ型を含むコードは、適切なボクシングとアンボクシング操作を加えて、オブジェクト上で機能するようになります。 ボクシングされたプリミティブ値を操作するプログラムは、手書きで専用化したコードと比べて 10 倍スローダウンするかもしれません。 これは次に、プログラマーがジェネリックなコレクションを避けて...
  • Tutorial_6
    トップ チュートリアル和訳 6 Case classes and pattern matching 6 ケースクラスとパターンマッチング プログラムによく出てくるデータ構造の一つにツリーがあります。例えばインタプリタやコンパイラは通常、プログラムを内部的にツリーで表現しています。XML 文書はツリーです。ある種のコンテナは赤黒木のようなツリーに基づいています。 小さな電卓プログラムを通して、ツリーが Scala でどのように表現され操作されるのか見てみましょう。このプログラムの目的は、加法と整数定数と変数からなる非常に簡単な数式を操作することです。その例を2つ挙げると、1+2 や (x + x)+(7+ y) などです。 最初にそのような数式をどのように表現するか決めましょう。最も自然な方法はツリーです。ノードが演算(ここでは加法)で、リーフが値(...
  • Tutorial_5
    トップ チュートリアル和訳 5 Classes 5 クラス 前に見たように、Scala はオブジェクト指向言語であり、それゆえにクラス*2の概念があります。Scala のクラスは、Java の構文と似た構文で宣言します。重要な違いは Scala のクラスはパラメータを持てるということです。以下の複素数の定義で示します。 class Complex(real Double, imaginary Double) { def re() = real def im() = imaginary } この複素数クラスは2つの引数、複素数の実部と虚部を取ります。これらの引数は Complex クラスのインスタンスを生成する時に、new Complex(1.5, 2.3) のように渡されます。このクラスは2つのメソッド、re と im を持ち、実部と虚部へのアク...
  • Spec2.8Chap1a
    第 1 章 字句構文 Scala programs are written using the Unicode Basic Multilingual Plane (BMP) character set; Unicode supplementary characters are not presently supported. This chapter defines the two modes of Scala s lexical syntax, the Scala mode and the XML mode. If not otherwise mentioned, the following descriptions of Scala tokens refer to Scala mode, and literal characters c refer to the ASCI...
  • Spec2.8Chap6d
    6.26 暗黙の変換 (Implicit Conversions) Implicit conversions can be applied to expressions whose type does not match their expected type, as well as to unapplied methods . The available implicit conversions are given in the next two sub-sections . We say, a type T is compatible to a type U if T conforms to U after applying etaexpansion (§6.26.5) and view applications (§7.3) . 暗黙の変換は、その型が要請型と...
  • Spec2.8Chap3b
    3.3 非値型 (Non-Value Types) The types explained in the following do not denote sets of values, nor do they appear explicitly in programs.They are introduced in this report as the internal types of defined identifiers. 次に説明する型は、値の集合を表しているわけではなく、 また、プログラム中に明示的に現れるわけではありません。 これらは、定義された識別子の内部型としてこのレポートで紹介しています。 3.3.1 メソッド型 A method type is denoted internally as (Ps)U , where (Ps)...
  • リンク集
    本家 多忙な Java 開発者のための Scala ガイド Scala開眼 ひしだま's ホームページ( コンピューター関連 ・ 作った時などの技術メモ ・ Scala ttp //www.ne.jp/asahi/hishidama/home/tech/scala/ ) Scala 2.8 コレクション API ( ttp //eed3si9n.github.com/scala-collections-doc-ja/collections_0.html ) Scala 2.8 アクター API ( ttp //eed3si9n.github.com/scala-actors-doc-ja ) Scala コレクションのアーキテクチャ ( ttp //eed3si9n.github.com/scala-collections-impl-doc-ja ) ほ...
  • TourOfScala2
    Scala ひと巡り ジェネリッククラス (Generic Classes) 原ページ Java 5 (aka.JDK 1.5 [58])と同じように、Scala は、型がパラメータ化されたクラスを組み込でサポートしています。そのようなジェネリッククラスは、コレクションクラスの開発に特に役立ちます。 次はこのことを示す例です class Stack[T] { var elems List[T] = Nil def push(x T) { elems = x elems } def top T = elems.head def pop() { elems = elems.tail } } クラス Stack は、任意の要素型 T の命令型(ミュータブル 更新可能な)スタックをモデル化します。型パラメータの使用...
  • ExampleChap3
    第 3 章 アクターとメッセージによるプログラミング この章では、ある応用分野の例を見てゆきます。この分野は Scala がとてもよく似合っています。電子オークションサービスを実装する仕事を考えてみて下さい。Erlang 風のアクタープロセスモデルを使ってオークション参加者の実装をしましょう。アクターとはメッセージを受信するオブジェクトです。各アクターはメッセージ受信用の「メールボックス」を持ち、それはキューとして表現されます。メールボックス中のメッセージを順番に処理することも、特定のパターンにマッチするメッセージを検索することもできます。 取引される商品ごとに一つの競売人アクターがあり、そのアクターが、商品についての情報公開、クライアントからの申し込み受付け、取引終了時の売り手および落札者への通知します。ここでは簡単な実装の概要を示します。 最初のステップとし...
  • Spec2.8Chap8b
    8.2 型パターン (Type Patterns) 構文 TypePat = Type Type patterns consist of types, type variables, and wildcards . A type pattern T is of one of the following forms 型パターンは、型、型変数、ワイルドカードからなります。 型パターン T は、次の形の 1 つをとります。 ・ A reference to a class C , p.C , or T#C . This type pattern matches any non-null instance of the given class . Note that the prefix of the class, if it is ...
  • TourOfScala
    Scala ひと巡り (A Tour of Scala) 原ページ Published on The Scala Programming Language (http //www.scala-lang.org) . By admin . Created 2008-07-05, 20 31 Scala は簡潔でエレガント、そして型安全な方法で共通のプログラミングパターンを表現できるよう設計された現代的なマルチパラダイム・プログラミング言語です。 オブジェクト指向の特徴と関数型言語の特質をスムーズに統合します。 Scala はオブジェクト指向言語です すべての値がオブジェクトである [1]という意味で、Scala は純粋なオブジェクト指向言語です。オブジェクトの型と振る舞いをクラス [2]とトレイト [3]によって記述します。 クラス...
  • Spec2.8Chap4a
    第 4 章 基本的な宣言と定義 構文 Dcl = val ValDcl | var VarDcl | def FunDcl | type {nl} TypeDcl PatVarDef = val PatDef | var VarDef Def = PatVarDef | def FunDef | type {nl} TypeDef | TmplDef A declaration introdu...
  • Spec2.8Chap6c2
    6.16 条件式 (Conditional Expressions) 構文 Expr1 = if ( Expr ) {nl} Expr [[semi] else Expr] The conditional expression if (e1) e2 else e3 chooses one of the values of e2 and e3 , depending on the value of e1 . The condition e1 is expected to conform to type Boolean. The then-part e2 and the else-part e3 are both expected to conform to the expected type of the condit...
  • 28-pkgobj-a
    パッケージオブジェクト (package_objects) Martin_Odersky, Lex Spoon September 15, 2010 2.8 まで、あなたがパッケージに入れることができた唯一のものはクラス、トレイトとスタンドアローンのオブジェクトでした。パッケージのトップレベルには最もよく使われる定義が置いてあります。しかし Scala プログラミング言語バージョン 2.8 にできることは、それに留まりません。クラス内のどのような種類の定義も、パッケージのトップレベルに置けます。もしパッケージ全体のスコープに入れたいヘルパーメソッドがあるなら、どうぞパッケージのトップレベルの適切な場所に入れてください。 そうするには、パッケージオブジェクトの中に定義を入れます。各パッケージは 1 つのパッケージオブジェクトを持てます。パッケージオブジェクト中に置かれたど...
  • Spec2.8Chap9a
    第 9 章 トップレベル定義 (Top-Level Definitions) 9.1 コンパイル単位 (Compilation Units) 構文 CompilationUnit = { package QualId semi} TopStatSeq TopStatSeq = TopStat {semi TopStat} TopStat = {Annotation} {Modifier} TmplDef | Import | Packaging | PackageObject ...
  • Spec2.8Chap5c
    5.3 クラス定義 (Class Definitions) 構文 TmplDef = class ClassDef ClassDef = id [TypeParamClause] {Annotation} [AccessModifier] ClassParamClauses ClassTemplateOpt ClassParamClauses = {ClassParamClause} [[nl] ( implicit ClassParams ) ] ClassParamClause = [nl] ( [ClassParams] ) ...
  • Spec2.8Chap5c2
    5.3 クラス定義 (Class Definitions) 構文 TmplDef = class ClassDef ClassDef = id [TypeParamClause] {Annotation} [AccessModifier] ClassParamClauses ClassTemplateOpt ClassParamClauses = {ClassParamClause} [[nl] ( implicit ClassParams ) ] ClassParamClause = [nl] ( [ClassParams] ) ClassParams ...
  • Spec2.8Chap7a
    第 7 章 暗黙のパラメータとビュー (Implicit Parameters and Views) 7.1 implicit 修飾子 (The Implicit Modifier) 構文 LocalModifier = implicit ParamClauses = {ParamClause} [nl] ( implicit Params ) Template members and parameters labeled with an implicit modifier can be passed to implicit parameters (§7.2) and can be used as implicit conversions called views (§7.3). The ...
  • sid-coll-2a
    4 Scala コレクションフレームワーク (The Scala Collections Framework) 前章では、異なる複数の種類のコレクション上に一般的に存在する、多数のコレクション操作とさらに多くのコレクション実装を列挙しました。 すべてのコレクション型に対してあらゆるコレクション操作を新たに実装することは、過度のコード重複を招きます。 そのようなコード重複は、コレクションライブラリの一部の操作を追加・修正し、他の部分でそうしなければ、時間と共に矛盾を生みます。 新しいコレクションフレームワークの重要な設計目標は、いかなる重複も避け、1 つの場所ですべての操作を定義することでした。 その設計手法は、コレクションテンプレート中でほとんどの操作を実装し、それを個々の基底クラスと実装から自由自在に継承することでした。これらテンプレートクラスは、パッケージ scala.col...
  • Tutorial_8
    トップ チュートリアル和訳 8 Genericity 8 ジェネリシティ このチュートリアルで調べる最後の Scala の特徴はジェネリシティです。Java プログラマは、Java にジェネリシティが無いことによる問題、Java 1.5 で検討される欠点、についてよく知っているに違いありません。 ジェネリシティとは型でパラメータ化されたコードを書ける能力です。例えば、連結リストのライブラリを書こうとしたプログラマは、リストの要素にどの型を使うか決めるという問題に直面します。このリストは色々な場面で使うつもりですから、要素の型を例えば Int とか決めることは不可能です。それでは全く恣意的かつ制限が強すぎるでしょう。 Java プログラマは、全てのオブジェクトのスーパータイプである Object の助けを借ります。しかしこの解決方法は理想とはほど遠い...
  • TourOfScala0
    Scala ひと巡り (A Tour of Scala) 原ページ Published on The Scala Programming Language (http //www.scala-lang.org) . By admin . Created 2008-07-05, 20 31 ●学習者の参考になればと思って訳してみましたが、誤訳の可能性大ですので、正しいことを知りたい方は必ず原文をお読みください。ご意見その他は、このページの下へ投稿してください。 Scala は簡潔でエレガント、そして型安全な方法で共通のプログラミングパターンを表現できるよう設計された現代的なマルチパラダイム・プログラミング言語です。オブジェクト指向と関数型言語の特質をスムーズに統合します。 Scala はオブジェクト指向言語です すべての値がオブジェクトである [...
  • Spec2.8Chap6b
    6.10 インスタンス生成式 (Instance Creation Expressions) 構文 SimpleExpr = new (ClassTemplate | TemplateBody) A simple instance creation expression is of the form new c , where c is a constructor invocation (§5.1.1). Let T be the type of c. Then T must denote a (a type instance of) a non-abstract subclass of scala.AnyRef. Furthermore, the concrete self type of the expression mus...
  • Spec2.8和訳
    言語仕様書 2.8 (The Scalar Language Specification 2.8) の試訳を公開中です。 序文・訳者注 第 1 章 字句構文 第 2 章 識別子・名前・スコープ 第 3 章 型 第 4 章 基本的な宣言と定義 第 5 章 クラスとオブジェクト 第 6 章 式 第 7 章 暗黙のパラメータとビュー 第 8 章 パターンマッチング 第 9 章 トップレベル定義 第 10 章 XML 式とパターン 第 11 章 ユーザー定義アノテーション 第 12 章 Scala 標準ライブラリ Chapter A Scala 文法要約 Chapter B 変更履歴 和訳 PDFはここです。 reStructuredTextで書きました。ソース...
  • Tutorial_9
    トップ チュートリアル和訳 9 Conclusion 9 まとめ この文書では Scala 言語を概観し、基本的な例をいくつか見てきました。興味を持った読者は Scala By Example へ進むとよいでしょう。ずっと多くの進んだ例があります。そして必要に応じて Scala Language Specification を参照するとよいでしょう。 前ページ  目次           名前 コメント
  • Example10.2
    10.2 For 内包表記によるクエリ (Querying with For-Comprehensions) for 内包表記は、データベースのクエリ言語による一般的操作と本質的に同じです。たとえば、データベース books があり、本のリストとして表現されているとしましょう。ただし Book は次のように定義されるものとします。 case class Book(title String, authors List[String]) 次はデータベースの小さなサンプルです。 val books List[Book] = List( Book("Structure and Interpretation of Computer Programs", List("Abelson, Haro...
  • Spec2.8Chap5a
    第 5 章 クラスとオブジェクト 構文 TmplDef = [ case ] class ClassDef | [ case ] object ObjectDef | trait TraitDef Classes (§5.3) and objects (§5.4) are both defined in terms of templates . クラス(§5.3)とオブジェクト (§5.4) は共にテンプレートの言葉で定義されています。 5.1 テンプレート (Templates) 構文 ClassTemplate = [EarlyDefs] ClassParents [TemplateBody] ...
  • Spec2.8ChapAa
    Chapter A Scala 文法要約 (訳注:前半は日本語訳、後半は英語原文を記載。 資料にはないがドキュメント本文には出てくる hexDigit を追加。 クラスパラメータリストの区切りは , に修正して掲載) 次は、Scala の字句構文を EBNF記法で記述している。 大文字 = A | … | Z | $ | _ と ユニコードカテゴリ Lu 小文字 = a | … | z と ユニコードカテゴリ Ll 文字 = 大文字 | 小文字 と ユニコードカテゴリ Lo, Lt, Nl 数字 = 0 | … | 9 演算子文字 = "\u0020-007F 中の...
  • Spec2.8Chap6a
    第 6 章 式 (Expressions) 構文 Expr = (Bindings | id | _ ) = Expr | Expr1 Expr1 = if ( Expr ) {nl} Expr [[semi] else Expr] | while ( Expr ) {nl} Expr | try { Block } [ catch { CaseClauses } ] [ finally Expr] | do Expr [semi] wh...
  • TourOfScala1
    Scala ひと巡り 抽象型 (Abstract Types) 原ページ Scala では、クラスは値(コンストラクタ・パラメータ)と(もしクラスがジェネリック [16]なら)型でパラメータ化されます。単に規則に従って、オブジェクトメンバーとして値を持てるというばかりではありません; 値と同様に、型はオブジェクトのメンバーです。さらに、メンバーの両形式とも、具象あるいは抽象で構いません。 次の例は、クラス Buffer のメンバーとして、延期された値定義と抽象型定義の両方を定義しています。 abstract class Buffer { type T val element T } 抽象型はその正体が正確には知られていない型です。上記の例で、我々は、クラス Buffer の各オブジェクトが 型メンバー T を持つことだけを知ってい...
  • トップページ
    プログラミング言語 Scala このWikiの目的は? Scalaのマニュアルの日本語訳を作成する。首尾よく日本語訳が完成したら、www.scala-lang.orgに置いてもらうように頼むつもり。-- 完成したのを連絡したのだけど、全然本家サイトに置いて貰えない...。 →置いてあるようです。Translations of the Scala Manuals ScalaのTipsなどの情報をまとめる。 使い方 普通に自由にWikiとして自由に編集して下さい。spam投稿で荒れたりするまでは、自由に編集出来る様にしておきます。 ご意見や不具合などありましたら管理人(tmiya@bu.iij4u.or.jp)までご連絡下さい。 もう何冊も日本語でのScala解説本が出たので管理人は和訳プロジェクトを放置状態です。このサイトの翻訳文を管理者がPDF化の作業は実施しませんのでご了承下さい。 ...
  • Example4.6
    4.6 末尾再帰 与えられた2つの数の最大公約数を計算する、次の関数について考えてみましょう。 def gcd(a Int, b Int) Int = if (b == 0) a else gcd(b, a % b) 関数評価の置き換えモデルを用いると、gcd(14, 21) は次のように評価されます。 gcd(14, 21) → if (21 == 0) 14 else gcd(21, 14 % 21) → if (false) 14 else gcd(21, 14 % 21) → gcd(21, 14 % 21) → gcd(21, 14) → if (14 == 0) 21 else gcd(14, 21 % 14) → → gcd(14, 21 % 14) → g...
  • Spec2.8Chap11a
    第 11 章 ユーザー定義アノテーション (User-Defined Annotations) 構文 Annotation = @ SimpleType {ArgumentExprs} ConstrAnnotation = @ SimpleType ArgumentExprs User-defined annotations associate meta-information with definitions . A simple annotation has the form @c or @c(a1,...,an). Here, c is a constructor of a class C , which must conform to the class scala.Annotation . ...
  • @wiki全体から「actor-short-tuto」で調べる

更新順にページ一覧表示 | 作成順にページ一覧表示 | ページ名順にページ一覧表示 | wiki内検索

ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。