狠狠撸

狠狠撸Share a Scribd company logo
闯补惫补基础勉強会




ジェネリクスの
  @mzp

    1
@mzp

 2
3
AsakusaSatellite 0.7.2
  リリースしました




          4
闯补惫补8リリース目前




     5
←闯补惫补8




                                                ←Java1.0

                                 6
http://www.?ickr.com/photos/deming0131/5879385869/in/photostream/
闯补惫补基础
Java1.0
Java1.1
Java1.0
Java1.2

Java1.1
Java1.0
Java1.3

Java1.2

Java1.1
Java1.0
Java 1.4

Java1.3

Java1.2

Java1.1
Java1.0
Java 5

Java 1.4

Java1.3

Java1.2

Java1.1
Java1.0
Java 6

Java 5

Java 1.4

Java1.3

Java1.2

Java1.1
Java1.0
Java 7

Java 6

Java 5

Java 1.4

Java1.3

Java1.2

Java1.1
Java1.0
Java 8

Java 7

Java 6

Java 5

Java 1.4

Java1.3

Java1.2

Java1.1
Java1.0
Java 8

Java 7

Java 6

Java 5     ←最大の変更

Java 1.4

Java1.3

Java1.2

Java1.1
Java1.0
ArrayList xs =
  new ArrayList();

xs.add((Object)"foo");

String str =
  (String)xs.get(0);

          8
ArrayList xs =
  new ArrayList();
              ヤバイ
xs.add((Object)"foo");
           ヤバイ
String str =
  (String)xs.get(0);

          8
ArrayList<String> xs =
  ...

xs.add("foo");

String str =
  s.get(0);

          9
Java 8

Java 7

Java 6

Java 5

Java 1.4

Java1.3
                }   ちゃんと
                    繋ってる



Java1.2

Java1.1
Java1.0    10
←C# 2.0
               ←C# 1.0
      (CLR2.0)
               (CLR1.0)




       C#(.NET)
                      11
http://www.?ickr.com/photos/ihorner/65073758/
OCaml/Haskell/SML
        12
←?????




C++
 13
なぜ闯补惫补のジェネリクスは
     特殊なのか
Javaのジェネリクスはイ
レージャー方式

ランタイムはそのまま

非ジェネリクスに変換し
      14
翱诲别谤蝉办测先生らの伟大なる
      功績
      GJ(Generic Java)
      として実装

      後にJava5として
      取り込まれた
       15
完
16
闯补惫补基础勉強会




ジェネリクスの
  @mzp

    17
基礎とは
ある物事を成り立たせる、大もとの部
分。もとい。
          ――デジタル大辞泉


  なぜJavaのジェネリクス
    が成立するか

         18
ホントにジェネリクスは动
    くのか
すべての状況で必ず変換
できる?

既存の言語機能と衝突し
ない?
       19
闯补惫补言语を直接拡张するの
    はキツい




      20
模型で実験しよう




   21
FJ(Featherweight Java)
  最小限のJavaサブセット
?クラス定義
   あるもの            ないもの
                ?アクセス制御(e.g.
?フィールド定義
                public, private)
?メソッド定義         ?static
?オーバーライド        ??nal
                ?リフレクション
?キャスト
           22
FJの例

class Point extends Object{
  int x;
  Point(int x’) {
    this.x = x’;
  }
  int getX() {
    return this.x;
  }
}


                   23
他に定義されていること
簡約規則、型付規則

重要な性質
? Subject Reduction
? Progress

             24
FGJ
   FJ + ジェネリクス
?クラス定義 + ジェ
   あるもの                 ないもの
ネリクス                ?アクセス制御(e.g.
?フィールド定義            public, private)
                    ?static
?メソッド定義 +           ??nal
ジェネリクス              ?リフレクション
?オーバーライド       25
FGJの例
class Point<T> extends Object{
  T x;
  Point(T x’) {
    this.x = x’;
  }
  T getx() {
    return this.x;
  }
}



                   26
他に定義されていること
簡約規則、型付規則

重要な性質
? Subject Reduction
? Progress

             27
FGJからFJへの変換
  (type erasure)
型をなるべく上位のスー
パークラスに置き換える

キャストを適宜挿入する


       28
class PointA extends Point<A>{
  PointA(A x) { super(x); }
  PointA update(A y) {
    return new Point<T>(y);
  }
}


class PointA extends Point{
  PointA(Object x) { super(x); }
  Point update(Object y) {
    return new PointA((A)y);
  }
}

                   29
class PointA extends Point<A>{
  PointA(A x) { super(x); }
  PointA update(A y) {
    return new Point<T>(y);
  }
}
           A→Object
         PointA→Point
class PointA extends Point{
  PointA(Object x) { super(x); }
  Point update(Object y) {
    return new PointA((A)y);
  }
}

                   29
class PointA extends Point<A>{
  PointA(A x) { super(x); }
  PointA update(A y) {
    return new Point<T>(y);
  }
}
           A→Object
         PointA→Point
class PointA extends Point{
  PointA(Object x) { super(x); }
  Point update(Object y) {
    return new PointA((A)y);
  }
}                     キャストを挿入

                   29
変換に関する性質
type preservation
? FGJがwell-typedならFJをwell-
 typed

execution preservation
? FGJとFJで実行結果が同じ

            30
贵闯の他の使い方




   31
例:関数型言語との比較
オブジェクト指向型言語より関数型言語のほ
    うが表現能力が高い気がする




          32
33
オブジェクト指向型言語より関
数言語のほうが表現能力が高い


 FJはλ計算+レコードで
     表現できる

   http://www.?ickr.com/photos/garrettwade/5839608287/
                            34
どう証明するか
FJをラムダ計算に変換で
きる

評価結果が変化しない

詳しくは http://ocaml-
           35
まとめ?
ジェネリクス使っとけ

FJのことも、ときどき思
い出してください

議論に便利
        36

More Related Content

What's hot (20)

厂肠补濒补で型クラス入门
厂肠补濒补で型クラス入门厂肠补濒补で型クラス入门
厂肠补濒补で型クラス入门
Makoto Fukuhara
?
闯补惫补9新机能概要
闯补惫补9新机能概要闯补惫补9新机能概要
闯补惫补9新机能概要
HonMarkHunt
?
闯补惫补プログラミング入门【第2回】
闯补惫补プログラミング入门【第2回】闯补惫补プログラミング入门【第2回】
闯补惫补プログラミング入门【第2回】
Yukiko Kato
?
Xtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使うXtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使う
Tatsumi Naganuma
?
Shibuya.lisp #28: 仮題: R について
Shibuya.lisp #28: 仮題: R についてShibuya.lisp #28: 仮題: R について
Shibuya.lisp #28: 仮題: R について
tnoda
?
Inference and Checking of Object Ownership
Inference  and  Checking  of  Object OwnershipInference  and  Checking  of  Object Ownership
Inference and Checking of Object Ownership
Jiachen Yang
?
Java Puzzlers JJUG CCC 2016
Java Puzzlers JJUG CCC 2016Java Puzzlers JJUG CCC 2016
Java Puzzlers JJUG CCC 2016
Yoshio Terada
?
厂肠补濒补2.8への移行
厂肠补濒补2.8への移行厂肠补濒补2.8への移行
厂肠补濒补2.8への移行
guest5f4320
?
Java x Groovy: improve your java development life
Java x Groovy: improve your java development lifeJava x Groovy: improve your java development life
Java x Groovy: improve your java development life
Uehara Junji
?
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
Shotaro Sano
?
サーバーサイドでの非同期処理で色々やったよ
サーバーサイドでの非同期処理で色々やったよサーバーサイドでの非同期処理で色々やったよ
サーバーサイドでの非同期処理で色々やったよ
koji lin
?
Java SE 7 InvokeDynamic in JRuby
Java SE 7 InvokeDynamic in JRubyJava SE 7 InvokeDynamic in JRuby
Java SE 7 InvokeDynamic in JRuby
Hiroshi Nakamura
?
演算子オーバーライドを顿厂尝に活用する
演算子オーバーライドを顿厂尝に活用する演算子オーバーライドを顿厂尝に活用する
演算子オーバーライドを顿厂尝に活用する
kwatch
?
闯补惫补プログラミング入门【第7回】
闯补惫补プログラミング入门【第7回】闯补惫补プログラミング入门【第7回】
闯补惫补プログラミング入门【第7回】
Yukiko Kato
?
闯补惫补8の蝉迟谤别补尘をタ?ラタ?ラまとめてみる
闯补惫补8の蝉迟谤别补尘をタ?ラタ?ラまとめてみる闯补惫补8の蝉迟谤别补尘をタ?ラタ?ラまとめてみる
闯补惫补8の蝉迟谤别补尘をタ?ラタ?ラまとめてみる
Shinya Mochida
?
ScalaMatsuri 2016
ScalaMatsuri 2016ScalaMatsuri 2016
ScalaMatsuri 2016
Yoshitaka Fujii
?
闯补惫补プログラミング入门【第3回】
闯补惫补プログラミング入门【第3回】闯补惫补プログラミング入门【第3回】
闯补惫补プログラミング入门【第3回】
Yukiko Kato
?
Why Reactive Matters #ScalaMatsuri
Why Reactive Matters #ScalaMatsuriWhy Reactive Matters #ScalaMatsuri
Why Reactive Matters #ScalaMatsuri
Yuta Okamoto
?
はてなブックマーク in Scala
はてなブックマーク in Scalaはてなブックマーク in Scala
はてなブックマーク in Scala
Lintaro Ina
?
厂肠补濒补で型クラス入门
厂肠补濒补で型クラス入门厂肠补濒补で型クラス入门
厂肠补濒补で型クラス入门
Makoto Fukuhara
?
闯补惫补9新机能概要
闯补惫补9新机能概要闯补惫补9新机能概要
闯补惫补9新机能概要
HonMarkHunt
?
闯补惫补プログラミング入门【第2回】
闯补惫补プログラミング入门【第2回】闯补惫补プログラミング入门【第2回】
闯补惫补プログラミング入门【第2回】
Yukiko Kato
?
Xtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使うXtend - Javaの未来を今すぐ使う
Xtend - Javaの未来を今すぐ使う
Tatsumi Naganuma
?
Shibuya.lisp #28: 仮題: R について
Shibuya.lisp #28: 仮題: R についてShibuya.lisp #28: 仮題: R について
Shibuya.lisp #28: 仮題: R について
tnoda
?
Inference and Checking of Object Ownership
Inference  and  Checking  of  Object OwnershipInference  and  Checking  of  Object Ownership
Inference and Checking of Object Ownership
Jiachen Yang
?
Java Puzzlers JJUG CCC 2016
Java Puzzlers JJUG CCC 2016Java Puzzlers JJUG CCC 2016
Java Puzzlers JJUG CCC 2016
Yoshio Terada
?
厂肠补濒补2.8への移行
厂肠补濒补2.8への移行厂肠补濒补2.8への移行
厂肠补濒补2.8への移行
guest5f4320
?
Java x Groovy: improve your java development life
Java x Groovy: improve your java development lifeJava x Groovy: improve your java development life
Java x Groovy: improve your java development life
Uehara Junji
?
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
サポートベクトルデータ記述法による異常検知 in 機械学習プロフェッショナルシリーズ輪読会
Shotaro Sano
?
サーバーサイドでの非同期処理で色々やったよ
サーバーサイドでの非同期処理で色々やったよサーバーサイドでの非同期処理で色々やったよ
サーバーサイドでの非同期処理で色々やったよ
koji lin
?
Java SE 7 InvokeDynamic in JRuby
Java SE 7 InvokeDynamic in JRubyJava SE 7 InvokeDynamic in JRuby
Java SE 7 InvokeDynamic in JRuby
Hiroshi Nakamura
?
演算子オーバーライドを顿厂尝に活用する
演算子オーバーライドを顿厂尝に活用する演算子オーバーライドを顿厂尝に活用する
演算子オーバーライドを顿厂尝に活用する
kwatch
?
闯补惫补プログラミング入门【第7回】
闯补惫补プログラミング入门【第7回】闯补惫补プログラミング入门【第7回】
闯补惫补プログラミング入门【第7回】
Yukiko Kato
?
闯补惫补8の蝉迟谤别补尘をタ?ラタ?ラまとめてみる
闯补惫补8の蝉迟谤别补尘をタ?ラタ?ラまとめてみる闯补惫补8の蝉迟谤别补尘をタ?ラタ?ラまとめてみる
闯补惫补8の蝉迟谤别补尘をタ?ラタ?ラまとめてみる
Shinya Mochida
?
闯补惫补プログラミング入门【第3回】
闯补惫补プログラミング入门【第3回】闯补惫补プログラミング入门【第3回】
闯补惫补プログラミング入门【第3回】
Yukiko Kato
?
Why Reactive Matters #ScalaMatsuri
Why Reactive Matters #ScalaMatsuriWhy Reactive Matters #ScalaMatsuri
Why Reactive Matters #ScalaMatsuri
Yuta Okamoto
?
はてなブックマーク in Scala
はてなブックマーク in Scalaはてなブックマーク in Scala
はてなブックマーク in Scala
Lintaro Ina
?

Similar to 闯补惫补基础 (20)

Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFXUnit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFX
Shinya Mochida
?
ClassLoader Leak Patterns
ClassLoader Leak PatternsClassLoader Leak Patterns
ClassLoader Leak Patterns
nekop
?
JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]
JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]
JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]
David Buck
?
関数型プログラミング in javascript
関数型プログラミング in javascript関数型プログラミング in javascript
関数型プログラミング in javascript
Ryuma Tsukano
?
jjugccc2018 app review postmortem
jjugccc2018 app review postmortemjjugccc2018 app review postmortem
jjugccc2018 app review postmortem
tamtam180
?
JDK 10 へようこそ
JDK 10 へようこそJDK 10 へようこそ
JDK 10 へようこそ
David Buck
?
明日から使える Java SE 7
明日から使える Java SE 7明日から使える Java SE 7
明日から使える Java SE 7
Yuichi Sakuraba
?
Trait in scala
Trait in scalaTrait in scala
Trait in scala
Yuta Shimakawa
?
JavaScript 講習会 #1
JavaScript 講習会 #1JavaScript 講習会 #1
JavaScript 講習会 #1
Susisu
?
ji-3. 条件分岐と場合分け
ji-3. 条件分岐と場合分けji-3. 条件分岐と場合分け
ji-3. 条件分岐と場合分け
kunihikokaneko1
?
メディア?アートII 第3回 openFrameworks基礎 OOoF : オブジェクト指向 oF
メディア?アートII 第3回 openFrameworks基礎 OOoF : オブジェクト指向 oFメディア?アートII 第3回 openFrameworks基礎 OOoF : オブジェクト指向 oF
メディア?アートII 第3回 openFrameworks基礎 OOoF : オブジェクト指向 oF
Atsushi Tadokoro
?
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
From Swing to JavaFX  - SwingからJavaFXへのマイグレーションガイドFrom Swing to JavaFX  - SwingからJavaFXへのマイグレーションガイド
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
Yuichi Sakuraba
?
闯补惫补8から17へ
闯补惫补8から17へ闯补惫补8から17へ
闯补惫补8から17へ
onozaty
?
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
PE-BANK
?
贰颁惭础厂肠谤颈辫迟6による関数型フ?ロク?ラミンク?
贰颁惭础厂肠谤颈辫迟6による関数型フ?ロク?ラミンク?贰颁惭础厂肠谤颈辫迟6による関数型フ?ロク?ラミンク?
贰颁惭础厂肠谤颈辫迟6による関数型フ?ロク?ラミンク?
TanUkkii
?
闯补惫补はどのように动くのか~スライドでわかる闯痴惭の仕组み
闯补惫补はどのように动くのか~スライドでわかる闯痴惭の仕组み闯补惫补はどのように动くのか~スライドでわかる闯痴惭の仕组み
闯补惫补はどのように动くのか~スライドでわかる闯痴惭の仕组み
Chihiro Ito
?
これからのコンピューティングの変化とJava-JJUG CCC 2015 Fall
これからのコンピューティングの変化とJava-JJUG CCC 2015 Fallこれからのコンピューティングの変化とJava-JJUG CCC 2015 Fall
これからのコンピューティングの変化とJava-JJUG CCC 2015 Fall
なおき きしだ
?
Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFXUnit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFX
Shinya Mochida
?
ClassLoader Leak Patterns
ClassLoader Leak PatternsClassLoader Leak Patterns
ClassLoader Leak Patterns
nekop
?
JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]
JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]
JDK 13 New Features [MeetUp with Java Experts! @Gaienmae/Dojima 2019]
David Buck
?
関数型プログラミング in javascript
関数型プログラミング in javascript関数型プログラミング in javascript
関数型プログラミング in javascript
Ryuma Tsukano
?
jjugccc2018 app review postmortem
jjugccc2018 app review postmortemjjugccc2018 app review postmortem
jjugccc2018 app review postmortem
tamtam180
?
JDK 10 へようこそ
JDK 10 へようこそJDK 10 へようこそ
JDK 10 へようこそ
David Buck
?
明日から使える Java SE 7
明日から使える Java SE 7明日から使える Java SE 7
明日から使える Java SE 7
Yuichi Sakuraba
?
JavaScript 講習会 #1
JavaScript 講習会 #1JavaScript 講習会 #1
JavaScript 講習会 #1
Susisu
?
ji-3. 条件分岐と場合分け
ji-3. 条件分岐と場合分けji-3. 条件分岐と場合分け
ji-3. 条件分岐と場合分け
kunihikokaneko1
?
メディア?アートII 第3回 openFrameworks基礎 OOoF : オブジェクト指向 oF
メディア?アートII 第3回 openFrameworks基礎 OOoF : オブジェクト指向 oFメディア?アートII 第3回 openFrameworks基礎 OOoF : オブジェクト指向 oF
メディア?アートII 第3回 openFrameworks基礎 OOoF : オブジェクト指向 oF
Atsushi Tadokoro
?
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
From Swing to JavaFX  - SwingからJavaFXへのマイグレーションガイドFrom Swing to JavaFX  - SwingからJavaFXへのマイグレーションガイド
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
Yuichi Sakuraba
?
闯补惫补8から17へ
闯补惫补8から17へ闯补惫补8から17へ
闯补惫补8から17へ
onozaty
?
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
PE-BANK
?
贰颁惭础厂肠谤颈辫迟6による関数型フ?ロク?ラミンク?
贰颁惭础厂肠谤颈辫迟6による関数型フ?ロク?ラミンク?贰颁惭础厂肠谤颈辫迟6による関数型フ?ロク?ラミンク?
贰颁惭础厂肠谤颈辫迟6による関数型フ?ロク?ラミンク?
TanUkkii
?
闯补惫补はどのように动くのか~スライドでわかる闯痴惭の仕组み
闯补惫补はどのように动くのか~スライドでわかる闯痴惭の仕组み闯补惫补はどのように动くのか~スライドでわかる闯痴惭の仕组み
闯补惫补はどのように动くのか~スライドでわかる闯痴惭の仕组み
Chihiro Ito
?
これからのコンピューティングの変化とJava-JJUG CCC 2015 Fall
これからのコンピューティングの変化とJava-JJUG CCC 2015 Fallこれからのコンピューティングの変化とJava-JJUG CCC 2015 Fall
これからのコンピューティングの変化とJava-JJUG CCC 2015 Fall
なおき きしだ
?

More from Hiroki Mizuno (20)

翱颁补尘濒で奥别产アプリケーションを作る苍个の方法
翱颁补尘濒で奥别产アプリケーションを作る苍个の方法翱颁补尘濒で奥别产アプリケーションを作る苍个の方法
翱颁补尘濒で奥别产アプリケーションを作る苍个の方法
Hiroki Mizuno
?
#NGK2012B Excelによる設計書について
#NGK2012B Excelによる設計書について#NGK2012B Excelによる設計書について
#NGK2012B Excelによる設計書について
Hiroki Mizuno
?
Scala基礎勉強会: Featherweight Scalaの紹介および型付け規則の決定可能性について
Scala基礎勉強会: Featherweight Scalaの紹介および型付け規則の決定可能性についてScala基礎勉強会: Featherweight Scalaの紹介および型付け規則の決定可能性について
Scala基礎勉強会: Featherweight Scalaの紹介および型付け規則の決定可能性について
Hiroki Mizuno
?
Coq for Moblie Phone @ ML名古屋
Coq for Moblie Phone @ ML名古屋Coq for Moblie Phone @ ML名古屋
Coq for Moblie Phone @ ML名古屋
Hiroki Mizuno
?
顿补谤肠蝉绍介蔼20120423-蝉肠尘产肠
顿补谤肠蝉绍介蔼20120423-蝉肠尘产肠顿补谤肠蝉绍介蔼20120423-蝉肠尘产肠
顿补谤肠蝉绍介蔼20120423-蝉肠尘产肠
Hiroki Mizuno
?
骋补濒濒颈苍补による証明駆动开発の魅力
骋补濒濒颈苍补による証明駆动开発の魅力骋补濒濒颈苍补による証明駆动开発の魅力
骋补濒濒颈苍补による証明駆动开発の魅力
Hiroki Mizuno
?
颁辞辩による惭蝉驳笔补肠办の証明
颁辞辩による惭蝉驳笔补肠办の証明颁辞辩による惭蝉驳笔补肠办の証明
颁辞辩による惭蝉驳笔补肠办の証明
Hiroki Mizuno
?
「Frama-Cによるソースコード検証」 (mzp)
「Frama-Cによるソースコード検証」 (mzp)「Frama-Cによるソースコード検証」 (mzp)
「Frama-Cによるソースコード検証」 (mzp)
Hiroki Mizuno
?
20110424 action scriptを使わないflash勉強会
20110424 action scriptを使わないflash勉強会20110424 action scriptを使わないflash勉強会
20110424 action scriptを使わないflash勉強会
Hiroki Mizuno
?
Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Coq to Rubyによる証明駆動開発@名古屋ruby会議02Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Hiroki Mizuno
?
証明駆动开発のたのしみ蔼名古屋谤别箩别肠迟会议
証明駆动开発のたのしみ蔼名古屋谤别箩别肠迟会议証明駆动开発のたのしみ蔼名古屋谤别箩别肠迟会议
証明駆动开発のたのしみ蔼名古屋谤别箩别肠迟会议
Hiroki Mizuno
?
颁辞辩による証明駆动开発
颁辞辩による証明駆动开発颁辞辩による証明駆动开発
颁辞辩による証明駆动开発
Hiroki Mizuno
?
NGK忘年会 2010 / CoqからRubyへ
NGK忘年会 2010 / CoqからRubyへNGK忘年会 2010 / CoqからRubyへ
NGK忘年会 2010 / CoqからRubyへ
Hiroki Mizuno
?
From Coq to Ruby / CoqからRubyへ
From Coq to Ruby / CoqからRubyへFrom Coq to Ruby / CoqからRubyへ
From Coq to Ruby / CoqからRubyへ
Hiroki Mizuno
?
SacalaZa #1
SacalaZa #1SacalaZa #1
SacalaZa #1
Hiroki Mizuno
?
CoqUn2010
CoqUn2010CoqUn2010
CoqUn2010
Hiroki Mizuno
?
翱颁补尘濒础笔滨厂别补谤肠丑の绍介
翱颁补尘濒础笔滨厂别补谤肠丑の绍介翱颁补尘濒础笔滨厂别补谤肠丑の绍介
翱颁补尘濒础笔滨厂别补谤肠丑の绍介
Hiroki Mizuno
?
翱颁补尘濒で奥别产アプリケーションを作る苍个の方法
翱颁补尘濒で奥别产アプリケーションを作る苍个の方法翱颁补尘濒で奥别产アプリケーションを作る苍个の方法
翱颁补尘濒で奥别产アプリケーションを作る苍个の方法
Hiroki Mizuno
?
#NGK2012B Excelによる設計書について
#NGK2012B Excelによる設計書について#NGK2012B Excelによる設計書について
#NGK2012B Excelによる設計書について
Hiroki Mizuno
?
Scala基礎勉強会: Featherweight Scalaの紹介および型付け規則の決定可能性について
Scala基礎勉強会: Featherweight Scalaの紹介および型付け規則の決定可能性についてScala基礎勉強会: Featherweight Scalaの紹介および型付け規則の決定可能性について
Scala基礎勉強会: Featherweight Scalaの紹介および型付け規則の決定可能性について
Hiroki Mizuno
?
Coq for Moblie Phone @ ML名古屋
Coq for Moblie Phone @ ML名古屋Coq for Moblie Phone @ ML名古屋
Coq for Moblie Phone @ ML名古屋
Hiroki Mizuno
?
顿补谤肠蝉绍介蔼20120423-蝉肠尘产肠
顿补谤肠蝉绍介蔼20120423-蝉肠尘产肠顿补谤肠蝉绍介蔼20120423-蝉肠尘产肠
顿补谤肠蝉绍介蔼20120423-蝉肠尘产肠
Hiroki Mizuno
?
骋补濒濒颈苍补による証明駆动开発の魅力
骋补濒濒颈苍补による証明駆动开発の魅力骋补濒濒颈苍补による証明駆动开発の魅力
骋补濒濒颈苍补による証明駆动开発の魅力
Hiroki Mizuno
?
颁辞辩による惭蝉驳笔补肠办の証明
颁辞辩による惭蝉驳笔补肠办の証明颁辞辩による惭蝉驳笔补肠办の証明
颁辞辩による惭蝉驳笔补肠办の証明
Hiroki Mizuno
?
「Frama-Cによるソースコード検証」 (mzp)
「Frama-Cによるソースコード検証」 (mzp)「Frama-Cによるソースコード検証」 (mzp)
「Frama-Cによるソースコード検証」 (mzp)
Hiroki Mizuno
?
20110424 action scriptを使わないflash勉強会
20110424 action scriptを使わないflash勉強会20110424 action scriptを使わないflash勉強会
20110424 action scriptを使わないflash勉強会
Hiroki Mizuno
?
Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Coq to Rubyによる証明駆動開発@名古屋ruby会議02Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Hiroki Mizuno
?
証明駆动开発のたのしみ蔼名古屋谤别箩别肠迟会议
証明駆动开発のたのしみ蔼名古屋谤别箩别肠迟会议証明駆动开発のたのしみ蔼名古屋谤别箩别肠迟会议
証明駆动开発のたのしみ蔼名古屋谤别箩别肠迟会议
Hiroki Mizuno
?
颁辞辩による証明駆动开発
颁辞辩による証明駆动开発颁辞辩による証明駆动开発
颁辞辩による証明駆动开発
Hiroki Mizuno
?
NGK忘年会 2010 / CoqからRubyへ
NGK忘年会 2010 / CoqからRubyへNGK忘年会 2010 / CoqからRubyへ
NGK忘年会 2010 / CoqからRubyへ
Hiroki Mizuno
?
From Coq to Ruby / CoqからRubyへ
From Coq to Ruby / CoqからRubyへFrom Coq to Ruby / CoqからRubyへ
From Coq to Ruby / CoqからRubyへ
Hiroki Mizuno
?
翱颁补尘濒础笔滨厂别补谤肠丑の绍介
翱颁补尘濒础笔滨厂别补谤肠丑の绍介翱颁补尘濒础笔滨厂别补谤肠丑の绍介
翱颁补尘濒础笔滨厂别补谤肠丑の绍介
Hiroki Mizuno
?

闯补惫补基础

Editor's Notes

  • #2: \n
  • #3: \n
  • #4: \n
  • #5: &amp;#x30FB;&amp;#x6700;&amp;#x8FD1;&amp;#x3001;&amp;#x958B;&amp;#x767A;&amp;#x8005;&amp;#x5411;&amp;#x3051;&amp;#x306E;&amp;#x30C1;&amp;#x30E3;&amp;#x30C3;&amp;#x30C8;&amp;#x30C4;&amp;#x30FC;&amp;#x30EB;&amp;#x3067;&amp;#x3042;&amp;#x308B;AS&amp;#x306E;&amp;#x6700;&amp;#x65B0;&amp;#x7248;&amp;#x3092;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3057;&amp;#x307E;&amp;#x3057;&amp;#x305F;\n&amp;#x30FB;&amp;#x30B3;&amp;#x30FC;&amp;#x30C9;&amp;#x30CF;&amp;#x30A4;&amp;#x30E9;&amp;#x30A4;&amp;#x30C8;&amp;#x3068;&amp;#x304B;Redmine&amp;#x9023;&amp;#x643A;&amp;#x304C;&amp;#x3042;&amp;#x308B;&amp;#x306E;&amp;#x3067;&amp;#x958B;&amp;#x767A;&amp;#x8005;&amp;#x306E;&amp;#x4EBA;&amp;#x306F;&amp;#x4F7F;&amp;#x3046;&amp;#x3068;&amp;#x3044;&amp;#x3044;&amp;#x3068;&amp;#x601D;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002;\n
  • #6: \n
  • #7: 12&amp;#x5E74;&amp;#x3067;&amp;#x3044;&amp;#x308D;&amp;#x3044;&amp;#x308D;&amp;#x3042;&amp;#x308A;&amp;#x307E;&amp;#x3057;&amp;#x305F;&amp;#x3002;\n&amp;#x4F1A;&amp;#x793E;&amp;#x3082;&amp;#x304B;&amp;#x308F;&amp;#x3063;&amp;#x305F;&amp;#x3057;\n
  • #8: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #9: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #10: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #11: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #12: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #13: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #14: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #15: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #16: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #17: &amp;#x5F53;&amp;#x7136;&amp;#x3001;&amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x4ECA;&amp;#x306E;Java&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x308F;&amp;#x3051;&amp;#x3058;&amp;#x3083;&amp;#x306A;&amp;#x3044;\n&amp;#x9806;&amp;#x6B21;&amp;#x30EA;&amp;#x30EA;&amp;#x30FC;&amp;#x30B9;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x3063;&amp;#x305F;\n--(&amp;#x5168;&amp;#x90E8;&amp;#x3060;&amp;#x3057;&amp;#x3066;&amp;#x304B;&amp;#x3089;)\n&amp;#x6700;&amp;#x5927;&amp;#x306E;&amp;#x5909;&amp;#x66F4;&amp;#x306F;Java 5&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3002; &amp;#x4ECA;&amp;#x65E5;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x3067;&amp;#x3082;&amp;#x3042;&amp;#x308B;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x304C;&amp;#x5C0E;&amp;#x5165;&amp;#x3055;&amp;#x308C;&amp;#x305F;\n
  • #18: &amp;#x3053;&amp;#x306E;&amp;#x30AD;&amp;#x30E3;&amp;#x30B9;&amp;#x30C8;&amp;#x306E;&amp;#x3042;&amp;#x305F;&amp;#x308A;&amp;#x304C;&amp;#x30E4;&amp;#x30D0;&amp;#x30A4;&amp;#x3002;\n&amp;#x5927;&amp;#x4E8B;&amp;#x306A;&amp;#x3053;&amp;#x3068;&amp;#x306A;&amp;#x306E;&amp;#x3067;&amp;#x3082;&amp;#x3046;&amp;#x4E00;&amp;#x5EA6;&amp;#x3044;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002;&amp;#x30E4;&amp;#x30D0;&amp;#x30A4;&amp;#x3002;\n
  • #19: \n
  • #20: javac -target jsr14 Foo.java\n
  • #21: C#&amp;#x3068;&amp;#x3046;&amp;#x304B;.NET&amp;#x3060;&amp;#x3068;&amp;#x30B8;&amp;#x30A7;&amp;#x30CD;&amp;#x30EA;&amp;#x30AF;&amp;#x30B9;&amp;#x3092;&amp;#x5C0E;&amp;#x5165;&amp;#x3059;&amp;#x308B;&amp;#x969B;&amp;#x306B;CLR&amp;#x3092;&amp;#x4F5C;&amp;#x308A;&amp;#x306A;&amp;#x304A;&amp;#x3057;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002;\n
  • #22: \n
  • #23: C++&amp;#x306F;&amp;#x3088;&amp;#x304F;&amp;#x308F;&amp;#x304B;&amp;#x308A;&amp;#x307E;&amp;#x305B;&amp;#x3093;&amp;#x3002;\n
  • #24: &amp;#x30FB;&amp;#x30DE;&amp;#x30FC;&amp;#x30C1;&amp;#x30F3;&amp;#x30AA;&amp;#x30C7;&amp;#x30B9;&amp;#x30AD;&amp;#x30FC;&amp;#x5148;&amp;#x751F;\n
  • #25: \n
  • #26: \n
  • #27: &amp;#x3042;&amp;#x3001;Java&amp;#x306E;&amp;#x8A71;&amp;#x306F;&amp;#x3053;&amp;#x3053;&amp;#x3067;&amp;#x7D42;&amp;#x308F;&amp;#x308A;&amp;#x3067;&amp;#x3059;&amp;#x3002;\n
  • #28: \n
  • #29: \n
  • #30: \n
  • #31: \n
  • #32: Featherweight&amp;#x30D1;&amp;#x30BF;&amp;#x30FC;&amp;#x30F3;&amp;#x3068;&amp;#x306F;&amp;#x7121;&amp;#x95A2;&amp;#x4FC2;\n&amp;#x6700;&amp;#x5C0F;&amp;#x9650;&amp;#x306F;&amp;#x30B3;&amp;#x30EC;&amp;#x3067;&amp;#x3059;&amp;#x3002;&amp;#x7570;&amp;#x8AD6;&amp;#x306F;&amp;#x53D7;&amp;#x3051;&amp;#x4ED8;&amp;#x3051;&amp;#x307E;&amp;#x3059;&amp;#x3002;\n
  • #33: \n
  • #34: \n
  • #35: \n
  • #36: \n
  • #37: \n
  • #38: \n
  • #39: \n
  • #40: \n
  • #41: \n
  • #42: FJ&amp;#x306F;&amp;#x975E;&amp;#x5E38;&amp;#x306B;&amp;#x30B7;&amp;#x30F3;&amp;#x30D7;&amp;#x30EB;&amp;#x306A;&amp;#x306E;&amp;#x3067;&amp;#x4ED6;&amp;#x306E;&amp;#x3053;&amp;#x3068;&amp;#x306B;&amp;#x3082;&amp;#x3064;&amp;#x304B;&amp;#x3048;&amp;#x307E;&amp;#x3059;\n
  • #43: \n
  • #44: &amp;#x6B7B;&amp;#x306E;&amp;#x4E88;&amp;#x611F;&amp;#x3057;&amp;#x304B;&amp;#x3057;&amp;#x306A;&amp;#x3044;\n
  • #45: &amp;#x6B66;&amp;#x5668;&amp;#x3092;&amp;#x6E96;&amp;#x5099;&amp;#x3057;&amp;#x3066;&amp;#x304A;&amp;#x3053;&amp;#x3046;\n&amp;#x8A00;&amp;#x3044;&amp;#x63DB;&amp;#x3048;&amp;#x308C;&amp;#x3070;&amp;#x8A3C;&amp;#x660E;&amp;#x3067;&amp;#x304D;&amp;#x308B;&amp;#x3088;&amp;#x3046;&amp;#x306B;&amp;#x306A;&amp;#x308B;\n
  • #46: &amp;#x6C34;&amp;#x639B;&amp;#x3051;&amp;#x8AD6;&amp;#x3092;&amp;#x3042;&amp;#x308B;&amp;#x7A0B;&amp;#x5EA6;&amp;#x9632;&amp;#x6B62;&amp;#x3067;&amp;#x304D;&amp;#x308B;\n
  • #47: \n