SlideShare a Scribd company logo
Siphone Coffee Maker



 第一回 okayama-js勉強会

  西本圭佑 (NISHIMOTO Keisuke)
      keisuken@cappuccino.ne.jp
自己紹介
 ➔   緒言
      ➔
             西本 圭佑
      ➔      Twitter: keisuke_n
      ➔      mailto: keisuken@cappuccino.ne.jp
 ➔   仕事
      ➔      Webアプリ開発と支援(主なもの)
 ➔   趣味
      ➔      宇宙・航空開発・鉄道情報ウォッチ
      ➔
             電子工作

2011.10.29                        第一回okayama-js   2
CoffeeScriptとは
 ➔   http://jashkenas.github.com/coffee-script/
 ➔   JavaScriptに1対1に変換される
 ➔   便利な構文を持つ記述性のいい言語
 ➔   本来コンパイラはnode.jsで実行される
 ➔   REPL(対話環境)装備




2011.10.29              第一回okayama-js             3
CoffeeScriptサンプルコード
# Assignment:                 # Objects:
number       = 42             math =
opposite = true                 root:      Math.sqrt
                                cube:      (x) -> x * square x
# Conditions:
number = -42 if opposite      # Splats:
                              race = (winner, runners...) ->
# Functions:                    print winner, runners
square = (x) -> x * x
                              # Array comprehensions:
# Arrays:                     cubes = (math.cube num for num
list = [1, 2, 3, 4, 5]        in list)


2011.10.29                 第一回okayama-js                         4
Siphone Coffee Makerとは
 ➔   http://cappuccino.jp/keisuken/scala/SiphoneCoffee/
 ➔   Scalaで書かれたCoffeeScriptコンパイラのラッパ
 ➔   Java環境で動く
 ➔   Rhino(JavaScriptエンジン)を使っている
 ➔   REPL(対話環境)も装備




2011.10.29                第一回okayama-js                   5
デモ



2011.10.29   第一回okayama-js   6
JavaScriptへコンパイル

 ➔   jQueryでDOMを扱うコードサンプル
sum = (event) ->
  result = 0
  for i in [1..3]
    result += parseInt(
      $('#value' + i).val())
  $('#result').text(result)
$('#calcButton').click(sum)
2011.10.29         第一回okayama-js   7
JavaScriptへコンパイル
 ➔   コンパイラでコンパイル
bash-3.2$ scoffee -c sum.coffee
Compiling... sum.coffee
done.




2011.10.29         第一回okayama-js   8
REPL(対話環境)

 ➔   「モノリス」のアスペクト比は?: コードサンプル

aspect = (i * i for i in [1..3])
alert "Monolith's aspect: #{aspect}"




2011.10.29      第一回okayama-js          9
REPL(対話環境)

 ➔   REPL(対話環境)で実行
bash-3.2$ scoffee
> aspect = (i * i for i in [1..3])
1,4,9
> alert "Monolith's aspect: #{aspect}"
Alert: Monolith's aspect: 1,4,9



2011.10.29            第一回okayama-js      10
GUI作成、実行

 ➔   GUIを表示するサンプルコード
importPackage javax.swing

frame = JFrame("Hello, world!")
frame.setDefaultClosing(JFrame.EXIT_ON_CLOSE)

frame.add(JLabel("Hello, world!"))

frame.pack()
frame.setVisible true


2011.10.29         第一回okayama-js            11
GUI作成、実行

 ➔   REPLで実行
bash-3.2$ scoffee
> importPackage javax.swing
...
> frame.setVisible true




2011.10.29            第一回okayama-js   12
おわり




             ご清聴ありがとうございました



2011.10.29        第一回okayama-js   13
質疑応答




             Any Questions?




2011.10.29       第一回okayama-js   14

More Related Content

What's hot

Fabric Essentials
Fabric EssentialsFabric Essentials
Fabric Essentials
Yoshinari Takaoka
 
Haskell超初心者勉強会20
Haskell超初心者勉強会20Haskell超初心者勉強会20
Haskell超初心者勉強会20Takashi Kawachi
 
GNU awk (gawk) を用いた Apache ログ解析方法
GNU awk (gawk) を用いた Apache ログ解析方法GNU awk (gawk) を用いた Apache ログ解析方法
GNU awk (gawk) を用いた Apache ログ解析方法博文 斉藤
 
お手軽並列処理
お手軽並列処理お手軽並列処理
お手軽並列処理博文 斉藤
 
Grails-1.1を斬る!~Grails-1.1からのチーム開発~ in Tokyo
Grails-1.1を斬る!~Grails-1.1からのチーム開発~ in TokyoGrails-1.1を斬る!~Grails-1.1からのチーム開発~ in Tokyo
Grails-1.1を斬る!~Grails-1.1からのチーム開発~ in Tokyo
Tsuyoshi Yamamoto
 
USP 友の会 LT 資料 20130413
USP 友の会 LT 資料 20130413USP 友の会 LT 資料 20130413
USP 友の会 LT 資料 20130413博文 斉藤
 
awk v.s. bashどっちが強い?@OSC2011Tokyo
awk v.s. bashどっちが強い?@OSC2011Tokyoawk v.s. bashどっちが強い?@OSC2011Tokyo
awk v.s. bashどっちが強い?@OSC2011Tokyo
Ryuichi Ueda
 
Sinatra and heroku for mac
Sinatra and heroku for macSinatra and heroku for mac
Sinatra and heroku for mac
Naoyuki Mitsuboshi
 
The Generator of ECMAScript 6th
The Generator of ECMAScript 6thThe Generator of ECMAScript 6th
The Generator of ECMAScript 6th
paulowniaceae
 
Mackerelでデプロイ先を管理する #mackerelio
Mackerelでデプロイ先を管理する #mackerelioMackerelでデプロイ先を管理する #mackerelio
Mackerelでデプロイ先を管理する #mackerelio
buty4649
 
Start printf 6_takarakasai
Start printf 6_takarakasaiStart printf 6_takarakasai
Start printf 6_takarakasai
takara kasai
 
serverspecを使用したサーバ設定テストの実例
serverspecを使用したサーバ設定テストの実例serverspecを使用したサーバ設定テストの実例
serverspecを使用したサーバ設定テストの実例
Koichi Shimozono
 
PHPコードではなく PHPコードの「書き方」を知る
PHPコードではなく PHPコードの「書き方」を知るPHPコードではなく PHPコードの「書き方」を知る
PHPコードではなく PHPコードの「書き方」を知る
Masashi Shinbara
 
New Generation Build System "Fly"
New Generation Build System "Fly"New Generation Build System "Fly"
New Generation Build System "Fly"
deepblue will
 
8F Emacs seminar 1st
8F Emacs seminar 1st8F Emacs seminar 1st
8F Emacs seminar 1sttoshi_pp
 
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
純生 野田
 
おまえらこのライブラリ使ってないの? m9 (2013-07)
おまえらこのライブラリ使ってないの? m9	(2013-07)おまえらこのライブラリ使ってないの? m9	(2013-07)
おまえらこのライブラリ使ってないの? m9 (2013-07)Toru Furukawa
 
ActiveRecordでレガシーテーブルにつないだ話
ActiveRecordでレガシーテーブルにつないだ話ActiveRecordでレガシーテーブルにつないだ話
ActiveRecordでレガシーテーブルにつないだ話ryonext Shimamoto
 

What's hot (20)

Fabric Essentials
Fabric EssentialsFabric Essentials
Fabric Essentials
 
Haskell超初心者勉強会20
Haskell超初心者勉強会20Haskell超初心者勉強会20
Haskell超初心者勉強会20
 
GNU awk (gawk) を用いた Apache ログ解析方法
GNU awk (gawk) を用いた Apache ログ解析方法GNU awk (gawk) を用いた Apache ログ解析方法
GNU awk (gawk) を用いた Apache ログ解析方法
 
お手軽並列処理
お手軽並列処理お手軽並列処理
お手軽並列処理
 
Grails-1.1を斬る!~Grails-1.1からのチーム開発~ in Tokyo
Grails-1.1を斬る!~Grails-1.1からのチーム開発~ in TokyoGrails-1.1を斬る!~Grails-1.1からのチーム開発~ in Tokyo
Grails-1.1を斬る!~Grails-1.1からのチーム開発~ in Tokyo
 
USP 友の会 LT 資料 20130413
USP 友の会 LT 資料 20130413USP 友の会 LT 資料 20130413
USP 友の会 LT 資料 20130413
 
Rails
RailsRails
Rails
 
awk v.s. bashどっちが強い?@OSC2011Tokyo
awk v.s. bashどっちが強い?@OSC2011Tokyoawk v.s. bashどっちが強い?@OSC2011Tokyo
awk v.s. bashどっちが強い?@OSC2011Tokyo
 
Sinatra and heroku for mac
Sinatra and heroku for macSinatra and heroku for mac
Sinatra and heroku for mac
 
The Generator of ECMAScript 6th
The Generator of ECMAScript 6thThe Generator of ECMAScript 6th
The Generator of ECMAScript 6th
 
Mackerelでデプロイ先を管理する #mackerelio
Mackerelでデプロイ先を管理する #mackerelioMackerelでデプロイ先を管理する #mackerelio
Mackerelでデプロイ先を管理する #mackerelio
 
Start printf 6_takarakasai
Start printf 6_takarakasaiStart printf 6_takarakasai
Start printf 6_takarakasai
 
serverspecを使用したサーバ設定テストの実例
serverspecを使用したサーバ設定テストの実例serverspecを使用したサーバ設定テストの実例
serverspecを使用したサーバ設定テストの実例
 
Yohes kitchen
Yohes kitchenYohes kitchen
Yohes kitchen
 
PHPコードではなく PHPコードの「書き方」を知る
PHPコードではなく PHPコードの「書き方」を知るPHPコードではなく PHPコードの「書き方」を知る
PHPコードではなく PHPコードの「書き方」を知る
 
New Generation Build System "Fly"
New Generation Build System "Fly"New Generation Build System "Fly"
New Generation Build System "Fly"
 
8F Emacs seminar 1st
8F Emacs seminar 1st8F Emacs seminar 1st
8F Emacs seminar 1st
 
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
 
おまえらこのライブラリ使ってないの? m9 (2013-07)
おまえらこのライブラリ使ってないの? m9	(2013-07)おまえらこのライブラリ使ってないの? m9	(2013-07)
おまえらこのライブラリ使ってないの? m9 (2013-07)
 
ActiveRecordでレガシーテーブルにつないだ話
ActiveRecordでレガシーテーブルにつないだ話ActiveRecordでレガシーテーブルにつないだ話
ActiveRecordでレガシーテーブルにつないだ話
 

Viewers also liked

3D Photo Tool by Ruby/Sinatra + JavaScript
3D Photo Tool by Ruby/Sinatra + JavaScript3D Photo Tool by Ruby/Sinatra + JavaScript
3D Photo Tool by Ruby/Sinatra + JavaScript
NISHIMOTO Keisuke
 
60 Election
60 Election60 Election
60 Election
dschall
 
Prueba
PruebaPrueba
Pruebafacc
 
jvmlang.daitokai 1: ScalaはEdisonの夢を見る
jvmlang.daitokai 1: ScalaはEdisonの夢を見るjvmlang.daitokai 1: ScalaはEdisonの夢を見る
jvmlang.daitokai 1: ScalaはEdisonの夢を見る
NISHIMOTO Keisuke
 
第8回 天領倉敷 ScalaScala In Kurashiki 8
第8回 天領倉敷 ScalaScala In Kurashiki 8第8回 天領倉敷 ScalaScala In Kurashiki 8
第8回 天領倉敷 ScalaScala In Kurashiki 8
NISHIMOTO Keisuke
 
Ruby Ben Kansai19 From Scala To Ruby
Ruby Ben Kansai19 From Scala To RubyRuby Ben Kansai19 From Scala To Ruby
Ruby Ben Kansai19 From Scala To RubyNISHIMOTO Keisuke
 
緑達の日常(仮): 第25回オープンラボ岡山
緑達の日常(仮): 第25回オープンラボ岡山緑達の日常(仮): 第25回オープンラボ岡山
緑達の日常(仮): 第25回オープンラボ岡山
NISHIMOTO Keisuke
 
Scalaで実装するGC
Scalaで実装するGCScalaで実装するGC
Scalaで実装するGC
NISHIMOTO Keisuke
 
Ike FP: Soviet Union
Ike FP: Soviet UnionIke FP: Soviet Union
Ike FP: Soviet Union
dschall
 
Civil Rights 1964-1967
Civil Rights 1964-1967Civil Rights 1964-1967
Civil Rights 1964-1967
dschall
 
Ruby/PureImage: 第2回岡山Ruby会議LT
Ruby/PureImage: 第2回岡山Ruby会議LTRuby/PureImage: 第2回岡山Ruby会議LT
Ruby/PureImage: 第2回岡山Ruby会議LT
NISHIMOTO Keisuke
 
Data URI scheme: okayama-js-2
Data URI scheme: okayama-js-2Data URI scheme: okayama-js-2
Data URI scheme: okayama-js-2
NISHIMOTO Keisuke
 
End Of The War
End Of The WarEnd Of The War
End Of The War
dschall
 
Gulf of Tonkin
Gulf of TonkinGulf of Tonkin
Gulf of Tonkin
dschall
 
Vietnam Board 2007
Vietnam Board 2007Vietnam Board 2007
Vietnam Board 2007
dschall
 
Air War
Air WarAir War
Air War
dschall
 
Vietnam: Introductory Notes
Vietnam: Introductory NotesVietnam: Introductory Notes
Vietnam: Introductory Notes
dschall
 

Viewers also liked (19)

Suburbs
SuburbsSuburbs
Suburbs
 
3D Photo Tool by Ruby/Sinatra + JavaScript
3D Photo Tool by Ruby/Sinatra + JavaScript3D Photo Tool by Ruby/Sinatra + JavaScript
3D Photo Tool by Ruby/Sinatra + JavaScript
 
60 Election
60 Election60 Election
60 Election
 
Prueba
PruebaPrueba
Prueba
 
jvmlang.daitokai 1: ScalaはEdisonの夢を見る
jvmlang.daitokai 1: ScalaはEdisonの夢を見るjvmlang.daitokai 1: ScalaはEdisonの夢を見る
jvmlang.daitokai 1: ScalaはEdisonの夢を見る
 
第8回 天領倉敷 ScalaScala In Kurashiki 8
第8回 天領倉敷 ScalaScala In Kurashiki 8第8回 天領倉敷 ScalaScala In Kurashiki 8
第8回 天領倉敷 ScalaScala In Kurashiki 8
 
Ruby Ben Kansai19 From Scala To Ruby
Ruby Ben Kansai19 From Scala To RubyRuby Ben Kansai19 From Scala To Ruby
Ruby Ben Kansai19 From Scala To Ruby
 
緑達の日常(仮): 第25回オープンラボ岡山
緑達の日常(仮): 第25回オープンラボ岡山緑達の日常(仮): 第25回オープンラボ岡山
緑達の日常(仮): 第25回オープンラボ岡山
 
Scalaで実装するGC
Scalaで実装するGCScalaで実装するGC
Scalaで実装するGC
 
Ike FP: Soviet Union
Ike FP: Soviet UnionIke FP: Soviet Union
Ike FP: Soviet Union
 
Hokuriku Scala 1
Hokuriku Scala 1Hokuriku Scala 1
Hokuriku Scala 1
 
Civil Rights 1964-1967
Civil Rights 1964-1967Civil Rights 1964-1967
Civil Rights 1964-1967
 
Ruby/PureImage: 第2回岡山Ruby会議LT
Ruby/PureImage: 第2回岡山Ruby会議LTRuby/PureImage: 第2回岡山Ruby会議LT
Ruby/PureImage: 第2回岡山Ruby会議LT
 
Data URI scheme: okayama-js-2
Data URI scheme: okayama-js-2Data URI scheme: okayama-js-2
Data URI scheme: okayama-js-2
 
End Of The War
End Of The WarEnd Of The War
End Of The War
 
Gulf of Tonkin
Gulf of TonkinGulf of Tonkin
Gulf of Tonkin
 
Vietnam Board 2007
Vietnam Board 2007Vietnam Board 2007
Vietnam Board 2007
 
Air War
Air WarAir War
Air War
 
Vietnam: Introductory Notes
Vietnam: Introductory NotesVietnam: Introductory Notes
Vietnam: Introductory Notes
 

Similar to Siphone coffeemaker okayama-js-1

名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
Shigeru UCHIYAMA
 
React Native GUIDE
React Native GUIDEReact Native GUIDE
React Native GUIDE
dcubeio
 
2017-12-04 Linuxの基本構造とBashでの扱い方
2017-12-04 Linuxの基本構造とBashでの扱い方2017-12-04 Linuxの基本構造とBashでの扱い方
2017-12-04 Linuxの基本構造とBashでの扱い方
浩平 渡邉
 
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
JJUG CCC 2017 Fall オレオレJVM言語を作ってみるJJUG CCC 2017 Fall オレオレJVM言語を作ってみる
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
Koichi Sakata
 
JavaScript Tips 2015(PDF 版)
JavaScript Tips 2015(PDF 版)JavaScript Tips 2015(PDF 版)
JavaScript Tips 2015(PDF 版)
taskie
 
ちゃんとWeb会議スライド『Coffee script』
ちゃんとWeb会議スライド『Coffee script』ちゃんとWeb会議スライド『Coffee script』
ちゃんとWeb会議スライド『Coffee script』
H2O Space. Co., Ltd.
 
TypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめTypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめ
Yu Nobuoka
 
Node.js勉強会 Framework Koa
Node.js勉強会 Framework KoaNode.js勉強会 Framework Koa
Node.js勉強会 Framework Koa
kamiyam .
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
sandai
 
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発emasaka
 
第2回 JavaScriptから始めるプログラミング2016
第2回 JavaScriptから始めるプログラミング2016第2回 JavaScriptから始めるプログラミング2016
第2回 JavaScriptから始めるプログラミング2016
kyoto university
 
Scalamacrosについて
ScalamacrosについてScalamacrosについて
Scalamacrosについてdekosuke
 
これからのJavaScriptの話
これからのJavaScriptの話これからのJavaScriptの話
これからのJavaScriptの話
Shogo Sensui
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
Mori Shingo
 
遺伝研スパコンを使った解析の並列化.pptx
遺伝研スパコンを使った解析の並列化.pptx遺伝研スパコンを使った解析の並列化.pptx
遺伝研スパコンを使った解析の並列化.pptx
Osamu Ogasawara
 
ASP.NET vNextの全貌
ASP.NET vNextの全貌ASP.NET vNextの全貌
ASP.NET vNextの全貌
A AOKI
 

Similar to Siphone coffeemaker okayama-js-1 (20)

名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
 
MoteMote Compiler Plugin
MoteMote Compiler PluginMoteMote Compiler Plugin
MoteMote Compiler Plugin
 
React Native GUIDE
React Native GUIDEReact Native GUIDE
React Native GUIDE
 
2017-12-04 Linuxの基本構造とBashでの扱い方
2017-12-04 Linuxの基本構造とBashでの扱い方2017-12-04 Linuxの基本構造とBashでの扱い方
2017-12-04 Linuxの基本構造とBashでの扱い方
 
Mina 20130417
Mina 20130417Mina 20130417
Mina 20130417
 
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
JJUG CCC 2017 Fall オレオレJVM言語を作ってみるJJUG CCC 2017 Fall オレオレJVM言語を作ってみる
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
 
JavaScript Tips 2015(PDF 版)
JavaScript Tips 2015(PDF 版)JavaScript Tips 2015(PDF 版)
JavaScript Tips 2015(PDF 版)
 
MlnagoyaRx
MlnagoyaRxMlnagoyaRx
MlnagoyaRx
 
ちゃんとWeb会議スライド『Coffee script』
ちゃんとWeb会議スライド『Coffee script』ちゃんとWeb会議スライド『Coffee script』
ちゃんとWeb会議スライド『Coffee script』
 
TypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめTypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめ
 
Node.js勉強会 Framework Koa
Node.js勉強会 Framework KoaNode.js勉強会 Framework Koa
Node.js勉強会 Framework Koa
 
Haikara
HaikaraHaikara
Haikara
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
 
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
 
第2回 JavaScriptから始めるプログラミング2016
第2回 JavaScriptから始めるプログラミング2016第2回 JavaScriptから始めるプログラミング2016
第2回 JavaScriptから始めるプログラミング2016
 
Scalamacrosについて
ScalamacrosについてScalamacrosについて
Scalamacrosについて
 
これからのJavaScriptの話
これからのJavaScriptの話これからのJavaScriptの話
これからのJavaScriptの話
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
 
遺伝研スパコンを使った解析の並列化.pptx
遺伝研スパコンを使った解析の並列化.pptx遺伝研スパコンを使った解析の並列化.pptx
遺伝研スパコンを使った解析の並列化.pptx
 
ASP.NET vNextの全貌
ASP.NET vNextの全貌ASP.NET vNextの全貌
ASP.NET vNextの全貌
 

More from NISHIMOTO Keisuke

3Dプリンタの出力は遅いのでどうにかしたい
3Dプリンタの出力は遅いのでどうにかしたい3Dプリンタの出力は遅いのでどうにかしたい
3Dプリンタの出力は遅いのでどうにかしたい
NISHIMOTO Keisuke
 
第2回IoT勉強会 in 岡山 | 2部 IoTデバイスを触ってみよう!
第2回IoT勉強会 in 岡山 | 2部 IoTデバイスを触ってみよう!第2回IoT勉強会 in 岡山 | 2部 IoTデバイスを触ってみよう!
第2回IoT勉強会 in 岡山 | 2部 IoTデバイスを触ってみよう!
NISHIMOTO Keisuke
 
Jetson Nano Lチカ
Jetson Nano LチカJetson Nano Lチカ
Jetson Nano Lチカ
NISHIMOTO Keisuke
 
第2回IoT勉強会 in 岡山 オープニング
第2回IoT勉強会 in 岡山 オープニング第2回IoT勉強会 in 岡山 オープニング
第2回IoT勉強会 in 岡山 オープニング
NISHIMOTO Keisuke
 
IoTの概要・IoT界隈の動向
IoTの概要・IoT界隈の動向IoTの概要・IoT界隈の動向
IoTの概要・IoT界隈の動向
NISHIMOTO Keisuke
 
パンジャンドラム (忘年会議2018)
パンジャンドラム (忘年会議2018)パンジャンドラム (忘年会議2018)
パンジャンドラム (忘年会議2018)
NISHIMOTO Keisuke
 
第4回宇宙開発勉強会 in 岡山: 宇宙開発トピック
第4回宇宙開発勉強会 in 岡山: 宇宙開発トピック第4回宇宙開発勉強会 in 岡山: 宇宙開発トピック
第4回宇宙開発勉強会 in 岡山: 宇宙開発トピック
NISHIMOTO Keisuke
 
Movidius Neral Compute Stickを使ってみた
Movidius Neral Compute Stickを使ってみたMovidius Neral Compute Stickを使ってみた
Movidius Neral Compute Stickを使ってみた
NISHIMOTO Keisuke
 
LE-9: 第1回宇宙開発勉強会 in 岡山
LE-9: 第1回宇宙開発勉強会 in 岡山LE-9: 第1回宇宙開発勉強会 in 岡山
LE-9: 第1回宇宙開発勉強会 in 岡山
NISHIMOTO Keisuke
 
3Dプリンタことはじめ
3Dプリンタことはじめ3Dプリンタことはじめ
3Dプリンタことはじめ
NISHIMOTO Keisuke
 

More from NISHIMOTO Keisuke (10)

3Dプリンタの出力は遅いのでどうにかしたい
3Dプリンタの出力は遅いのでどうにかしたい3Dプリンタの出力は遅いのでどうにかしたい
3Dプリンタの出力は遅いのでどうにかしたい
 
第2回IoT勉強会 in 岡山 | 2部 IoTデバイスを触ってみよう!
第2回IoT勉強会 in 岡山 | 2部 IoTデバイスを触ってみよう!第2回IoT勉強会 in 岡山 | 2部 IoTデバイスを触ってみよう!
第2回IoT勉強会 in 岡山 | 2部 IoTデバイスを触ってみよう!
 
Jetson Nano Lチカ
Jetson Nano LチカJetson Nano Lチカ
Jetson Nano Lチカ
 
第2回IoT勉強会 in 岡山 オープニング
第2回IoT勉強会 in 岡山 オープニング第2回IoT勉強会 in 岡山 オープニング
第2回IoT勉強会 in 岡山 オープニング
 
IoTの概要・IoT界隈の動向
IoTの概要・IoT界隈の動向IoTの概要・IoT界隈の動向
IoTの概要・IoT界隈の動向
 
パンジャンドラム (忘年会議2018)
パンジャンドラム (忘年会議2018)パンジャンドラム (忘年会議2018)
パンジャンドラム (忘年会議2018)
 
第4回宇宙開発勉強会 in 岡山: 宇宙開発トピック
第4回宇宙開発勉強会 in 岡山: 宇宙開発トピック第4回宇宙開発勉強会 in 岡山: 宇宙開発トピック
第4回宇宙開発勉強会 in 岡山: 宇宙開発トピック
 
Movidius Neral Compute Stickを使ってみた
Movidius Neral Compute Stickを使ってみたMovidius Neral Compute Stickを使ってみた
Movidius Neral Compute Stickを使ってみた
 
LE-9: 第1回宇宙開発勉強会 in 岡山
LE-9: 第1回宇宙開発勉強会 in 岡山LE-9: 第1回宇宙開発勉強会 in 岡山
LE-9: 第1回宇宙開発勉強会 in 岡山
 
3Dプリンタことはじめ
3Dプリンタことはじめ3Dプリンタことはじめ
3Dプリンタことはじめ
 

Recently uploaded

2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
CRI Japan, Inc.
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
Yuuitirou528 default
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 

Recently uploaded (15)

2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 

Siphone coffeemaker okayama-js-1

  • 1. Siphone Coffee Maker 第一回 okayama-js勉強会 西本圭佑 (NISHIMOTO Keisuke) keisuken@cappuccino.ne.jp
  • 2. 自己紹介 ➔ 緒言 ➔ 西本 圭佑 ➔ Twitter: keisuke_n ➔ mailto: keisuken@cappuccino.ne.jp ➔ 仕事 ➔ Webアプリ開発と支援(主なもの) ➔ 趣味 ➔ 宇宙・航空開発・鉄道情報ウォッチ ➔ 電子工作 2011.10.29 第一回okayama-js 2
  • 3. CoffeeScriptとは ➔ http://jashkenas.github.com/coffee-script/ ➔ JavaScriptに1対1に変換される ➔ 便利な構文を持つ記述性のいい言語 ➔ 本来コンパイラはnode.jsで実行される ➔ REPL(対話環境)装備 2011.10.29 第一回okayama-js 3
  • 4. CoffeeScriptサンプルコード # Assignment: # Objects: number = 42 math = opposite = true root: Math.sqrt cube: (x) -> x * square x # Conditions: number = -42 if opposite # Splats: race = (winner, runners...) -> # Functions: print winner, runners square = (x) -> x * x # Array comprehensions: # Arrays: cubes = (math.cube num for num list = [1, 2, 3, 4, 5] in list) 2011.10.29 第一回okayama-js 4
  • 5. Siphone Coffee Makerとは ➔ http://cappuccino.jp/keisuken/scala/SiphoneCoffee/ ➔ Scalaで書かれたCoffeeScriptコンパイラのラッパ ➔ Java環境で動く ➔ Rhino(JavaScriptエンジン)を使っている ➔ REPL(対話環境)も装備 2011.10.29 第一回okayama-js 5
  • 6. デモ 2011.10.29 第一回okayama-js 6
  • 7. JavaScriptへコンパイル ➔ jQueryでDOMを扱うコードサンプル sum = (event) -> result = 0 for i in [1..3] result += parseInt( $('#value' + i).val()) $('#result').text(result) $('#calcButton').click(sum) 2011.10.29 第一回okayama-js 7
  • 8. JavaScriptへコンパイル ➔ コンパイラでコンパイル bash-3.2$ scoffee -c sum.coffee Compiling... sum.coffee done. 2011.10.29 第一回okayama-js 8
  • 9. REPL(対話環境) ➔ 「モノリス」のアスペクト比は?: コードサンプル aspect = (i * i for i in [1..3]) alert "Monolith's aspect: #{aspect}" 2011.10.29 第一回okayama-js 9
  • 10. REPL(対話環境) ➔ REPL(対話環境)で実行 bash-3.2$ scoffee > aspect = (i * i for i in [1..3]) 1,4,9 > alert "Monolith's aspect: #{aspect}" Alert: Monolith's aspect: 1,4,9 2011.10.29 第一回okayama-js 10
  • 11. GUI作成、実行 ➔ GUIを表示するサンプルコード importPackage javax.swing frame = JFrame("Hello, world!") frame.setDefaultClosing(JFrame.EXIT_ON_CLOSE) frame.add(JLabel("Hello, world!")) frame.pack() frame.setVisible true 2011.10.29 第一回okayama-js 11
  • 12. GUI作成、実行 ➔ REPLで実行 bash-3.2$ scoffee > importPackage javax.swing ... > frame.setVisible true 2011.10.29 第一回okayama-js 12
  • 13. おわり ご清聴ありがとうございました 2011.10.29 第一回okayama-js 13
  • 14. 質疑応答 Any Questions? 2011.10.29 第一回okayama-js 14