ScalaからJAVAの呼び出しについて

80 views
Skip to first unread message

mikeshimura

unread,
Sep 21, 2009, 8:49:41 PM9/21/09
to scala-be
Scalaを始めたばかりのものです。

Google App EngineのJDOを Scalaから呼び出したいと思い探した所
Scala-query http://github.com/szeiger/scala-query/tree を見つけました。

この定義に下記があるのですが、 cの呼び出し方が判りません。
JAVAであれば Table.class で良いと思うのですが、 Scalaの書き方が判りません。

def getObjectById[A](pm:PersistenceManager, c:Class[A],
key:Object):Option[A] =
pm.getObjectById(c, key).asInstanceOf[A] match{
case null => None
case a => Some(a)
}

どなたか判れば教えて下さい。

志村

tmiya

unread,
Sep 22, 2009, 9:29:23 AM9/22/09
to scala-be
tmiyaです

> この定義に下記があるのですが、 cの呼び出し方が判りません。
> JAVAであれば Table.class で良いと思うのですが、 Scalaの書き方が判りません。

Javaの Table.class に対応するのは、classOf[Table] でOKなはずですが、質問の回答はこれでOKでしょうか?

これでNGだったらまたここに書いて頂けますか?

mikeshimura

unread,
Sep 24, 2009, 1:31:28 AM9/24/09
to scala-be
tmiya さま

早速の アドバイスありがとうございました。

classOf[Table]で上手く行きました。

志村

Kenichi Kobayashi

unread,
Sep 28, 2009, 11:45:59 PM9/28/09
to scal...@googlegroups.com
みなさま
小林@豆蔵です。


言語仕様輪読会がかなりな人気になっていますが、
一方で「Scalaって何?」という方に
「Scalaプログラミングを体験してもらう」
という勉強会を隔週で開きます。

言語仕様輪読会がかなりコアな内容を追求しているのに対し、
こちらはできるだけ皆さんにプログラミングを楽しんで
頂こうと思います。

時間のある方はぜひご参加ください。

-----------------------------------------------------------
Step by Step Scala [vol.01]@scala-be


日時 / DATE :
2009/10/07 19:00 to 21:00

定員 / LIMIT :
20 人

会場 / PLACE :
豆蔵大会議室(新宿三井ビル34階南側) (東京都新宿区西新宿二丁目1番1号)

参加方法:
http://atnd.org/events/1648 から参加表明して
当日直接会場にご来場ください。

--
(株)豆蔵  小林健一
〒163-0434
東京都新宿区西新宿二丁目1番1号
新宿三井ビルディング 34階 私書箱302号
TEL: 03-5339-2165(BS事業部教育), FAX: 03-5339-1795
URL: http://www.mamezou.com/
E-mail: koba...@mamezou.com

Kenichi Kobayashi

unread,
Oct 7, 2009, 12:04:44 AM10/7/09
to Kenichi Kobayashi, scal...@googlegroups.com
みなさま
小林@豆蔵です。

リマインダです。
本日19:00より、
「Step by Step Scala vol.01」
開催します!

今回は
・インタープリタを動かす
・スクリプトを作る
ということで、Scalaでのプログラミングの楽しさを
みんなで体験しましょう。
対応する「Scalaスケーラブルプログラミング」(コップ本)
の章は1章から3章までです。

コップ本を買って書籍スタックに積み上げることに成功し、
そのまま一度もpopしてない人、
そもそもスタックにpushしてない(買ってない)という人、
心配いりませんのでぜひご参加ください。

また、勉強会の後、懇親会を行う予定です。
参加希望の方はあらかじめ1000円札を4,5枚ご用意ください(^^)/。


Kenichi Kobayashi さんは書きました:

Kenichi Kobayashi

unread,
Oct 13, 2009, 12:54:40 AM10/13/09
to Kenichi Kobayashi, scal...@googlegroups.com
みなさま
小林@豆蔵です。

Step by Step Scala[vol.01]ではみなさまありがとうございました。
おかげさまで非常に盛況でした。
引き続き、第2回を開催します!

「Scalaって何?」という方に
「Scalaプログラミングを体験してもらう」
という勉強会を隔週で開きます。

言語仕様輪読会がかなりコアな内容を追求しているのに対し、
こちらはできるだけ皆さんにプログラミングを楽しんで
頂こうと思います。

時間のある方はぜひご参加ください。

---------------------------------------------------------------
Step by Step Scala [vol.02]@scala-be

Scala初心者のための勉強会

日時 / DATE :
2009/10/22 19:00 to 21:00

定員 / LIMIT :
20 人(でも24人くらいまで大丈夫)

会場 / PLACE :
豆蔵大会議室(新宿三井ビル34階南側)
(東京都新宿区西新宿二丁目1番1号)

参加方法:
http://atnd.org/events/1801 から参加表明して

Kenichi Kobayashi

unread,
Oct 15, 2009, 10:51:56 PM10/15/09
to Kenichi Kobayashi, scal...@googlegroups.com
みなさま
小林@豆蔵です。

Step by Step Scala[vol.02]の実施会場変更の連絡です。
より広い会場(豆蔵トレーニングルーム)が取れました。
参加定員も30人に拡大いたします。

登録したら「補欠だよ(;_;)」という方も心配せずにご参加ください。

また、今回も懇親会を予定しております。
懇親会参加希望者は千円札を4,5枚持ってお集まり下さい。

よろしくお願いいたします。


Kenichi Kobayashi さんは書きました:

Kenichi Kobayashi

unread,
Oct 21, 2009, 7:18:33 AM10/21/09
to Kenichi Kobayashi, scal...@googlegroups.com
みなさま
小林@豆蔵です。

リマインダです。
明日19:00よりStep by Step Scala[vol.02]を開催します。
前回に引き続き、いろいろと手を動かしながらScalaの謎に
せまっていきましょう。


Kenichi Kobayashi さんは書きました:

Kenichi Kobayashi

unread,
Oct 22, 2009, 10:32:40 PM10/22/09
to Kenichi Kobayashi, scal...@googlegroups.com
みなさま
小林@豆蔵です。

Step by Step Scala[vol.02]では皆さんありがとうございました!

忘れ物のご連絡です。
会場中央列の席に座られた方で、WATERMANの黒いペンを
お忘れになった方がいらっしゃいます。
私が保管していますので、「自分のだ」と言う方は、
私宛にメール(koba...@mamezou.com)でご連絡ください。


次回以降のStep by Step Scalaは、以下の日程で進めることを
予定しています。
11/4(水)(6,7章)「関数型スタイルのオブジェクト」「組込みの制御構造」
11/19(木)(8,9章)「関数とクロージャー」「制御の抽象化」
12/2(水)(10,11章)「合成と継承」「Scalaの階層構造」
12/16(水)(12,13章)「トレイト」「パッケージとインポート」
1/6(水)(14,15章)「表明と単体テスト」「ケースクラスとパターンマッチ」
1/20(水)(16,17章)「リストの操作」「コレクション」
各実施日で何を扱うかは、講師のお話の進め方によりますので、
あくまでも参考です。11月はScala関係で長く活動してらっしゃる、
宮本さんが講師をしてくださいます。


今回は、By-Name ParameterとBy-Value Parameterの話題で
だいぶ盛り上がりました。
パラメータ無し関数を引数にするときは
「関数『値』」を渡してるんですね、という話がでてきました。

あと、型パラメータの話題については皆さん疑問が多いようです。
この勉強会、ストーリラインは「コップ本」をベースにするとは
言っていますが、疑問があれば、それについてのミニ発表を入れる、
というやり方ができます。

今回ご紹介した、「Real World Scala(実践的関数プログラミング勉強会)」
については、沢山の賛同をいただいたため、
後ほど勉強会の開催連絡をします。
「Scalaを知る」から「Scalaで創る」へのステップを
模索していきたいと思います。

懇親会では、Scalaの話と合わせて、モデル検証の話題が盛んでした。
Alloy,agdaといった形式手法の話題は個人的にも興味のある部分なので、
別の機会にみなさんで集まれればと思います。
現場に出てしまうと学ぶ機会のとれない、
ソフトウェア科学とあわせて、モデル検証を勉強していける
機会を作りたいと思います。

他にも、「こんなことしたい」「お手伝いしまっせ」という方は
どんどんscala-beに、あるいは私にでもメールいただけると
ありがたいです。

tmiya

unread,
Oct 23, 2009, 10:00:12 AM10/23/09
to scala-be
11月の2回を担当させて頂く宮本です。宜しくお願いします。

On 10月23日, 午前11:32, Kenichi Kobayashi <kobaya...@mamezou.com> wrote:
> 次回以降のStep by Step Scalaは、以下の日程で進めることを
> 予定しています。
> 11/4(水)(6,7章)「関数型スタイルのオブジェクト」「組込みの制御構造」
> 11/19(木)(8,9章)「関数とクロージャー」「制御の抽象化」
> 各実施日で何を扱うかは、講師のお話の進め方によりますので、
> あくまでも参考です。11月はScala関係で長く活動してらっしゃる、
> 宮本さんが講師をしてくださいます。

> あと、型パラメータの話題については皆さん疑問が多いようです。
> この勉強会、ストーリラインは「コップ本」をベースにするとは
> 言っていますが、疑問があれば、それについてのミニ発表を入れる、
> というやり方ができます。

とりあえず11月に関しては、11/4に6,7章を、11/19に8,9章を、
と考えています。が、話す内容はまだ修正可能ですので、例えば
「Scalaのジェネリクスのところの話を聞きたい」など要望があ
れば話を出来ると思います。何かあればscala-beの方に書いて
頂ければと思います。
#文法に関して深い話を聞きたい方は、Scala仕様輪読会の方で
#質問するのも良い考えです。水島さんに質問出来ますし。

---

> 懇親会では、Scalaの話と合わせて、モデル検証の話題が盛んでした。
> Alloy,agdaといった形式手法の話題は個人的にも興味のある部分なので、
> 別の機会にみなさんで集まれればと思います。

そうですね。Scalaとは別に形式手法の勉強会をできればなぁ、
とも思ってます。誰でも参加出来る初心者向けの勉強会がなかなか
無いのですよね。

Kenichi Kobayashi

unread,
Oct 28, 2009, 12:11:15 AM10/28/09
to scal...@googlegroups.com
みなさま
小林@豆蔵です。

Step by Step Scala[vol.02]は
30名近い方に出席いただきました。
引き続き、第3回を開催します!

「Scalaって何?」という方に
「Scalaプログラミングを体験してもらう」
という勉強会を隔週で開きます。

言語仕様輪読会がかなりコアな内容を追求しているのに対し、
こちらはできるだけ皆さんにプログラミングを楽しんで
頂こうと思います。

時間のある方はぜひご参加ください。

---------------------------------------------------------------
Step by Step Scala [vol.03]@scala-be

Scala初心者のための勉強会

日時 / DATE :
2009/11/4 19:00 to 21:00

定員 / LIMIT :
20 人(でも24人くらいまで大丈夫)

会場 / PLACE :
豆蔵大会議室(新宿三井ビル34階南側)
(東京都新宿区西新宿二丁目1番1号)

参加方法:
http://atnd.org/events/1977 から参加表明して

Kenichi Kobayashi

unread,
Nov 3, 2009, 8:46:12 PM11/3/09
to scal...@googlegroups.com
みなさま
小林@豆蔵です。

リマインダです。
Step by Step Scala[vol.03]を本日開催します。
みんなで楽しく勉強していきましょう!

懇親会も予定しておりますので、
参加希望の方は千円札を4,5枚持ってご参加ください。


Kenichi Kobayashi さんは書きました:

Kenichi Kobayashi

unread,
Nov 3, 2009, 9:11:36 PM11/3/09
to scal...@googlegroups.com
みなさま
小林@豆蔵です。

追加情報です。
参加者多数のため、がんばって座席数を増やします。
定員24名にしますので、
「オレはまたキャンセル待ちか・・・」
という方もぜひ来てください。

今回からは、宮本さんを講師にお迎えして、
さらにScalaの奥深い内容に入っていきます。

Kenichi Kobayashi

unread,
Nov 5, 2009, 5:39:03 AM11/5/09
to scal...@googlegroups.com
みなさま
小林@最近またAlloyをいじり始めましたです。

Step by Step Scala[vol03]も無事実施できました。
講師の宮本さん、参加された方々、
みなさん本当にありがとうございます。

既に、勉強会で使った資料、および議事録はScala-beの
サイトにアップロードしてありますので、ご覧下さい。

アンケートを拝見したところ、最近話題のモナドを知りたい、
などのコメントがありました。順次取り上げていければと思います。

懇親会では、今後の勉強会の進め方についての議論がありました。
章立て構成でやっていくのもいいのですが、
「どこでも好きなところを追求しようよ」という
時間をもっと増やした方がいい、との意見も出ました。
一方で、アンケートからは「この調子で続けてほしい」
との意見もあります。参加された方々はいかがでしたか?

次回以降もお楽しみに!

Kenichi Kobayashi

unread,
Nov 10, 2009, 8:01:00 PM11/10/09
to scal...@googlegroups.com
みなさま
小林@豆蔵です。

立て続けにScala勉強会のお知らせです。
本日実施のScala言語仕様輪読会とは別なのでご注意ください。
Step by Step Scala[vol.03]から
関数プログラミングの話題が本格化してきました。
引き続き、第4回を開催します。

「Scalaって何?」という方に
「Scalaプログラミングを体験してもらう」
という勉強会を隔週で開きます。

言語仕様輪読会がかなりコアな内容を追求しているのに対し、
こちらはできるだけ皆さんにプログラミングを楽しんで
頂こうと思います。

時間のある方はぜひご参加ください。

---------------------------------------------------------------
Step by Step Scala [vol.03]@scala-be

Scala初心者のための勉強会


日時 / DATE :
2009/11/19 19:00 to 21:00

定員 / LIMIT :
25 人

会場 / PLACE :
豆蔵大会議室(新宿三井ビル34階南側)
(東京都新宿区西新宿二丁目1番1号)

参加方法:
http://atnd.org/events/2093 から参加表明して

Kenichi Kobayashi

unread,
Nov 17, 2009, 11:16:22 PM11/17/09
to scal...@googlegroups.com
みなさま
小林@豆蔵です。

リマインダです。
11/19 19:00より、Step by Step Scala[vol.04]開催します!
これまでの経験により、24名まではいけることが
分かっておりますので、恐れずにご参加ください。

みなさんのご参加をお待ちしてます。

Kenichi Kobayashi さんは書きました:

Kenichi Kobayashi

unread,
Nov 18, 2009, 9:39:37 PM11/18/09
to scal...@googlegroups.com
みなさま
小林@豆蔵です。

会場変更のご連絡です。
豆蔵トレーニングルームにて、
本日のStepByStepScalaを実施します。

新宿三井ビル34F北側ですのでご注意ください。

よろしくお願いします。

tmiya

unread,
Nov 19, 2009, 10:50:46 AM11/19/09
to scala-be
Step by Step Scala[vol.04] 参加者の皆様、お疲れさまでした。

本日の発表で使用した資料を
http://groups.google.co.jp/group/scala-be/files
に、
091119_ScalaChap89_talk.pdf
091119_ScalaChap89_tex.pdf
としてuploadしてあります。(当日指摘して頂いた間違い修正済)

また質問などありましたら、このメーリングリスト上で質問して下さい。

Takashi MIYAMOTO

unread,
Nov 20, 2009, 10:08:10 AM11/20/09
to scal...@googlegroups.com
tmiyaです

Step by Step Scala vol.04 のフォロー

★演習のreverseについて

 reverseを作るのに苦労していた方が多かったようなので、
若干フォローします。
 まずヒントとして、下記の関数fを考えて下さい。2つの
リスト xs, ys を取って、xs の頭(head)を取っ
て、ys の
頭に付ける関数です。これを繰り返し適用するとどうなるか、
あるいは ys が空だったらどうなるか、などを考えると、
reverse, concat などが実装出来るんではないかと思います。

scala> def f[A](xs:List[A],ys:List[A]) = xs match {
| case Nil => (xs,ys)
| case z::zs => (zs, z::ys)
| }
f: [A](List[A],List[A])(List[A], List[A])

scala> f(List(1,2,3),List(4,5,6))
res0: (List[Int], List[Int]) = (List(2, 3),List(1, 4, 5, 6))

scala> f(List(1,2,3),Nil)
res1: (List[Int], List[Int]) = (List(2, 3),List(1))

scala>

★無名クラスの型は?

Anyに何かおまけがついたようなものになる、と解答しましたが、
実は java.lang.Object + α でした。

scala> val a = new { def close():Unit = {} }
a: java.lang.Object{def close(): Unit} = $anon$1@79f5e0

scala>

===================================
Takashi Miyamoto


Takashi MIYAMOTO

unread,
Nov 20, 2009, 8:34:25 PM11/20/09
to scal...@googlegroups.com
tmiyaです。

> Step by Step Scala vol.04 のフォロー


の続き。

★モナドの話

昨日の Haskellナイトで、「暗闇のモナド」というたとえ話が
ありました。「群盲象を撫でる」という話です。

で、そういえばそのものズバリのScalaでモナドを解説する
"One Div Zero: Monads are Elephants"という記事があって、
その和訳がブログで公開されている、というのを思い出したので
紹介。

http://d.hatena.ne.jp/jyukutyo/20081105/1225863909

良い記事なのでお薦めです。

===================================
Takashi Miyamoto


Takashi MIYAMOTO

unread,
Nov 22, 2009, 9:16:19 PM11/22/09
to scal...@googlegroups.com, Takashi MIYAMOTO
Scalaによるモナド的デザインパターン、の本らしい。

http://www.apress.com/book/view/9781430228448?utm_source=twitterfeed&utm_medium=twitter

で本の詳細を知る事が出来ますが、

- Monadic design patterns
- Zippers and data type differentiation
- Delimited continuations
- Hack at the type level

などなど、Scala 2.8対応で、かなり極まった内容の本といえ
るかも。

出版が楽しみですね。
===================================
Takashi Miyamoto


Mizoken001

unread,
Nov 30, 2009, 6:59:46 AM11/30/09
to scal...@googlegroups.com, Kenichi Kobayashi
溝口です

 今週のStep by Step Scala の atnd が無いようですが・・・

 12/2(水)(10,11章)「合成と継承」「Scalaの階層構造」

 今週は、延期ですか?
 それとも、私が失念しています?

以上

溝口

Takashi MIYAMOTO

unread,
Nov 30, 2009, 6:52:10 PM11/30/09
to scal...@googlegroups.com, Takashi MIYAMOTO
溝口さん

On 2009/11/30, at 20:59, Mizoken001 wrote:

> 溝口です
>
>  今週のStep by Step Scala の atnd が無いよ
> うですが・・・
>
>  12/2(水)(10,11章)「合成と継承」
> 「Scalaの階層構造」
>
>  今週は、延期ですか?
>  それとも、私が失念しています?

正式なアナウンスは会場を確保する小林さんしか出来ないので、
小林さんからのアナウンスを待って欲しいのですが、12月は
12/9,12/22に予定変更されるらしいと聞いています。

という訳で、小林さんからの告知をお待ち下さい。

===================================
Takashi Miyamoto


Kenichi Kobayashi

unread,
Nov 30, 2009, 9:16:28 PM11/30/09
to scal...@googlegroups.com
みなさま
小林@豆蔵です。

Step by Step Scala[vol.04]ではみなさまありがとうございました。
引き続き、第5回を開催します。
今月は、コップ本にとらわれずにネタをだしていくことも考えています。


「Scalaって何?」という方に
「Scalaプログラミングを体験してもらう」
という勉強会を隔週で開きます。

言語仕様輪読会がかなりコアな内容を追求しているのに対し、
こちらはできるだけ皆さんにプログラミングを楽しんで
頂こうと思います。

時間のある方はぜひご参加ください。

---------------------------------------------------------------
Step by Step Scala [vol.05]@scala-be

Scala初心者のための勉強会

日時 / DATE :
2009/12/9 19:00 to 21:00

定員 / LIMIT :
20 人(でも24人くらいまで大丈夫)

会場 / PLACE :
豆蔵大会議室(新宿三井ビル34階南側)
(東京都新宿区西新宿二丁目1番1号)

参加方法:
http://atnd.org/events/2378 から参加表明して
当日直接会場にご来場ください。

Kenichi Kobayashi

unread,
Dec 8, 2009, 2:25:19 AM12/8/09
to Kenichi Kobayashi, scal...@googlegroups.com
みなさま
小林@豆蔵です。

リマインダです。
明日12/9 19:00より、Step by Step Scala開催します。
おそらく24名までは入れるはずなので、
「キャンセル待ちかよ」
という方も恐れずにお越しください。

ではでは、当日会場でお待ちしてます。


Kenichi Kobayashi さんは書きました:

ken.coba

unread,
Dec 9, 2009, 9:08:15 PM12/9/09
to scala-be
みなさま
小林@豆蔵です。

昨日は皆様ご参加いただき、ありがとうございました。
今回は方向性を変えて、Scalaのデザインパターンを扱いました。

設計のお話になると、また違った観点からの疑問が多く出てきます。
「traitとobjectの組合わせでインスタンスと同じことができるんだから、
クラスいらないんじゃないか」という指摘をされる方がいました。
他にもいろいろ質問が出たのですが、覚えきれませんでした(笑。

もしよろしければ、疑問に思ったサンプルコードを公開してください。
この場でみんなで議論しましょう。

次回については、のちほどご連絡します。
Reply all
Reply to author
Forward
0 new messages