SlideShare a Scribd company logo
1 of 11
クラウド言語へようこそ
    2011/09/16 nichicom-LT 
 SOHGA Co. Ltd. Tozo TANAKA 
Opaでこんなん作られてます

 ● リアルタイム共有お絵かき
   http://canvas.opalang.org/
 ● ゲーム(ポーカー)
   https://mlstate.com/pages/products/opa_poker
 ● CMS
   https://github.com/mattgu74/OpaCms
 ● Wiki
   https://github.com/venator/OpaWiki
などなど…
http://opalang.org/see.xmlt
特徴 1/3

http://opalang.org/
 ● Webサーバ、DBMS、CGI、PG言語、セキュリティ強化、負荷分散..
  を一人で全部こなす
  (Apache + MySQL + RoR + GAE + αみたいな感じ)
特徴 2/3

● コマンド一発でスケールアウト
   ○ 単体起動
   ./test.exe
  ○ クラウド起動
   ./opa-cloud test.exe --host localhost --host me@myserver1 ...
特徴 3/3

● ヒアドキュメント的な手軽さでスクリプトとHTMLを同居
● おフランス製。構文もフランス発祥のOCamelに類似
 broadcast(author) =
    do Network.broadcast({~author text=Dom.get_value(#entry)}, room)
    Dom.clear_value(#entry)
 start() =
    author = Random.string(8)
    <div id=#header><div id=#logo></></>
    <div id=#conversation onready={_ -> Network.add_callback(user_update, room)}></>
    <div id=#footer>
       <input id=#entry onnewline={_ -> broadcast(author)} />
       <div class="button" onclick={_ -> broadcast(author)}>Post</>
    </>

 server = Server.one_page_bundle("Chat", [@static_resource_directory("resources")],
        ["resources/css.css"], start)
得意分野

 ● 単機能大量アクセス
   →twitter、チャット、SNSなど
    ○ 分散Webアプリ対応 → Scalable
    ○ 全部入り → Simple, Secure
    ○ コンパイル型 → Speedy
フロントエンドにもバックエンドにも。
歴史

● 2010年 限定公開
● 2011年 オープンソース(Affero GPL)としてリリース
● 開発元:MLstate
   ○ 2007年パリイノベーショングランプリ2007ファイナリスト
   ○ 2008年フランス省庁による研究賞受賞
   ○ 2010年フランスで最も急成長している2000社に選出
● 各種メディア報道
   ○ InfoWorld, infoQ, Lambda The Ultimate,
     SlashDot,  Hacker News, OS News,
     WebAppers, i-Programmer, Morgan Hill
環境

● 公式サポートはMacOSX, Linux(Ubuntu, Debian)
  現在64bit版のみ。32bit版は開発中。Windows版も開発中。
 他のLinuxディストリビューションもライブラリを入れれば概ね動く。
● 対象CPUはAMD64。
  よってx86のWindows+VMwareではインストール失敗。。
Hellow, world! まで 1/2

● さくらのVPSを契約 (無料期間2週間)
 カスタムOSインストールでUbuntu 10.04 amd64を導入
● 関連ライブラリのインストール
 apt-get install libssl-dev zlib1g-dev libjpeg62 libgif4
● Ubuntu binaryのDL
 wget http://download.opalang.org/ubuntu/opa_1.0s3.5%2Bbuild569_amd64.stable.deb

● Opaのインストール
 dpkg -i opa_1.0s3.5+build569_amd64.stable.deb
Hellow, world! まで 2/2

● コーディング
  hello.opa
 server = one_page_server("Hello", -> <>Hello, world!</>)
● コンパイル
  opa hello.opa
● 実行(localhost:8080 で待機)
  ./hello.exe



ちなみに…
26行のソースとCSSだけで、そこそこのチャットサービスが作れます。
最後に

● 使えるか?
  →最適化されたソリューションとしては有用。
   条件のシビアな案件なら選択肢になりうる。
● 流行るか?
  →たぶん主流にはならない。
   今のところ日本語ドキュメント皆無だし。
● 今やるメリットは?
  →日本でエバンジェリストになれるw




さぁ、先駆者になってOpa本の印税GETだ! :)

More Related Content

What's hot

Windows Subsystem for Linux 2
Windows Subsystem for Linux 2Windows Subsystem for Linux 2
Windows Subsystem for Linux 2Tomokazu Kizawa
 
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)shimadah
 
Vagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオンVagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオンMasashi Shinbara
 
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)shimadah
 
サーマルカメラ OWLIFT GotAPI 連携
サーマルカメラ OWLIFT GotAPI 連携サーマルカメラ OWLIFT GotAPI 連携
サーマルカメラ OWLIFT GotAPI 連携Device WebAPI Consortium
 
how to install Dexcs2016 for OpenFOAM
how to install Dexcs2016 for OpenFOAMhow to install Dexcs2016 for OpenFOAM
how to install Dexcs2016 for OpenFOAMEtsuji Nomura
 
DEXCS2015のWindows10 PCへのインストール
DEXCS2015のWindows10 PCへのインストールDEXCS2015のWindows10 PCへのインストール
DEXCS2015のWindows10 PCへのインストールstebee19
 
Tizen web app を FireFox OS へ移植する方法を考えた
Tizen web app を FireFox OS へ移植する方法を考えたTizen web app を FireFox OS へ移植する方法を考えた
Tizen web app を FireFox OS へ移植する方法を考えたNaruto TAKAHASHI
 
クロスブラウザ拡張ライブラリExtension.js
クロスブラウザ拡張ライブラリExtension.js クロスブラウザ拡張ライブラリExtension.js
クロスブラウザ拡張ライブラリExtension.js swdyh
 
How to install Dexcs2015 for OpenFOAM(R)
How to install Dexcs2015 for OpenFOAM(R)How to install Dexcs2015 for OpenFOAM(R)
How to install Dexcs2015 for OpenFOAM(R)Etsuji Nomura
 
最近のrubyのインストール方法
最近のrubyのインストール方法最近のrubyのインストール方法
最近のrubyのインストール方法Kazuhiro Nishiyama
 
Windows+VirtualBoxで作るTensorFlow環境
Windows+VirtualBoxで作るTensorFlow環境Windows+VirtualBoxで作るTensorFlow環境
Windows+VirtualBoxで作るTensorFlow環境Hiroo Inamura
 
Vagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージVagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージYoshimi Tominaga
 
JS開発環境を晒す。
JS開発環境を晒す。JS開発環境を晒す。
JS開発環境を晒す。Eiji Kuroda
 
プラグインの下位互換性を最大化する
プラグインの下位互換性を最大化するプラグインの下位互換性を最大化する
プラグインの下位互換性を最大化するShinya Kobayashi
 
2012.10.27 のアンカンファレンスのスライド
2012.10.27 のアンカンファレンスのスライド2012.10.27 のアンカンファレンスのスライド
2012.10.27 のアンカンファレンスのスライドYAMANE Toshiaki
 
H.264で相互接続 - WebRTC Meetup Tokyo #10
H.264で相互接続 - WebRTC Meetup Tokyo #10H.264で相互接続 - WebRTC Meetup Tokyo #10
H.264で相互接続 - WebRTC Meetup Tokyo #10goforbroke
 
究極のディストリビューションUbuntu
究極のディストリビューションUbuntu究極のディストリビューションUbuntu
究極のディストリビューションUbuntuKenichi Takahashi
 

What's hot (20)

Windows Subsystem for Linux 2
Windows Subsystem for Linux 2Windows Subsystem for Linux 2
Windows Subsystem for Linux 2
 
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
ここんとーく in 大分 (opencoconのご紹介と次期バージョンの予告)
 
Vagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオンVagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオン
 
AndroidでWebSocket
AndroidでWebSocketAndroidでWebSocket
AndroidでWebSocket
 
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
 
サーマルカメラ OWLIFT GotAPI 連携
サーマルカメラ OWLIFT GotAPI 連携サーマルカメラ OWLIFT GotAPI 連携
サーマルカメラ OWLIFT GotAPI 連携
 
how to install Dexcs2016 for OpenFOAM
how to install Dexcs2016 for OpenFOAMhow to install Dexcs2016 for OpenFOAM
how to install Dexcs2016 for OpenFOAM
 
DEXCS2015のWindows10 PCへのインストール
DEXCS2015のWindows10 PCへのインストールDEXCS2015のWindows10 PCへのインストール
DEXCS2015のWindows10 PCへのインストール
 
Tizen web app を FireFox OS へ移植する方法を考えた
Tizen web app を FireFox OS へ移植する方法を考えたTizen web app を FireFox OS へ移植する方法を考えた
Tizen web app を FireFox OS へ移植する方法を考えた
 
クロスブラウザ拡張ライブラリExtension.js
クロスブラウザ拡張ライブラリExtension.js クロスブラウザ拡張ライブラリExtension.js
クロスブラウザ拡張ライブラリExtension.js
 
JavaOne2016報告
JavaOne2016報告JavaOne2016報告
JavaOne2016報告
 
How to install Dexcs2015 for OpenFOAM(R)
How to install Dexcs2015 for OpenFOAM(R)How to install Dexcs2015 for OpenFOAM(R)
How to install Dexcs2015 for OpenFOAM(R)
 
最近のrubyのインストール方法
最近のrubyのインストール方法最近のrubyのインストール方法
最近のrubyのインストール方法
 
Windows+VirtualBoxで作るTensorFlow環境
Windows+VirtualBoxで作るTensorFlow環境Windows+VirtualBoxで作るTensorFlow環境
Windows+VirtualBoxで作るTensorFlow環境
 
Vagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージVagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージ
 
JS開発環境を晒す。
JS開発環境を晒す。JS開発環境を晒す。
JS開発環境を晒す。
 
プラグインの下位互換性を最大化する
プラグインの下位互換性を最大化するプラグインの下位互換性を最大化する
プラグインの下位互換性を最大化する
 
2012.10.27 のアンカンファレンスのスライド
2012.10.27 のアンカンファレンスのスライド2012.10.27 のアンカンファレンスのスライド
2012.10.27 のアンカンファレンスのスライド
 
H.264で相互接続 - WebRTC Meetup Tokyo #10
H.264で相互接続 - WebRTC Meetup Tokyo #10H.264で相互接続 - WebRTC Meetup Tokyo #10
H.264で相互接続 - WebRTC Meetup Tokyo #10
 
究極のディストリビューションUbuntu
究極のディストリビューションUbuntu究極のディストリビューションUbuntu
究極のディストリビューションUbuntu
 

Viewers also liked

Creación de CFDs por medio de integración ftp
Creación de CFDs por medio de integración ftpCreación de CFDs por medio de integración ftp
Creación de CFDs por medio de integración ftpcollectivecube
 
Integracion Salesforce
Integracion SalesforceIntegracion Salesforce
Integracion Salesforcecollectivecube
 
Presentacion factura eletronica movil
Presentacion factura eletronica movilPresentacion factura eletronica movil
Presentacion factura eletronica movilcollectivecube
 
Pasos para implementar Factura Electronica
Pasos para implementar Factura ElectronicaPasos para implementar Factura Electronica
Pasos para implementar Factura Electronicacollectivecube
 
Manual Usuario CFD Plus
Manual Usuario CFD PlusManual Usuario CFD Plus
Manual Usuario CFD Pluscollectivecube
 
How Do I Cassandra?
How Do I Cassandra?How Do I Cassandra?
How Do I Cassandra?Rick Branson
 

Viewers also liked (8)

Creación de CFDs por medio de integración ftp
Creación de CFDs por medio de integración ftpCreación de CFDs por medio de integración ftp
Creación de CFDs por medio de integración ftp
 
Integracion Salesforce
Integracion SalesforceIntegracion Salesforce
Integracion Salesforce
 
Presentacion factura eletronica movil
Presentacion factura eletronica movilPresentacion factura eletronica movil
Presentacion factura eletronica movil
 
Pasos para implementar Factura Electronica
Pasos para implementar Factura ElectronicaPasos para implementar Factura Electronica
Pasos para implementar Factura Electronica
 
Manual Usuario CFD Plus
Manual Usuario CFD PlusManual Usuario CFD Plus
Manual Usuario CFD Plus
 
How Do I Cassandra?
How Do I Cassandra?How Do I Cassandra?
How Do I Cassandra?
 
Steps
StepsSteps
Steps
 
Workshop on entrepreneurship
Workshop on entrepreneurshipWorkshop on entrepreneurship
Workshop on entrepreneurship
 

Similar to Opa - Cloud Language

2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMFAtomu Hidaka
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Pathdynamis
 
2013 06-22osc nagoya-netmf
2013 06-22osc nagoya-netmf2013 06-22osc nagoya-netmf
2013 06-22osc nagoya-netmfAtomu Hidaka
 
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
はじめてのpostmarketOSインストール Windowsタブレット  #kagolug  Beginner for install postmar...はじめてのpostmarketOSインストール Windowsタブレット  #kagolug  Beginner for install postmar...
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...Netwalker lab kapper
 
ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118Atomu Hidaka
 
Miracle Linux seminer Hatohol and ConoHa
Miracle Linux seminer Hatohol and ConoHaMiracle Linux seminer Hatohol and ConoHa
Miracle Linux seminer Hatohol and ConoHaNaoto Gohko
 
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...Netwalker lab kapper
 
DockerCon参加報告 (`docker build`が30倍以上速くなる話など)
DockerCon参加報告 (`docker build`が30倍以上速くなる話など)DockerCon参加報告 (`docker build`が30倍以上速くなる話など)
DockerCon参加報告 (`docker build`が30倍以上速くなる話など)Akihiro Suda
 
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Dai Utsui
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドAkihiro Suda
 
Firefox mobile for android internals
Firefox mobile for android internalsFirefox mobile for android internals
Firefox mobile for android internalsMakoto Kato
 
地に足がついたクラウドのお話
地に足がついたクラウドのお話地に足がついたクラウドのお話
地に足がついたクラウドのお話Toshiaki Baba
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力ThinReports
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組みKouji Matsui
 
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!Masaki Muranaka
 
OpenStack base public cloud service by GMO Internet Inc., at 2013/12/12 Okin...
OpenStack base public cloud service by GMO Internet Inc.,  at 2013/12/12 Okin...OpenStack base public cloud service by GMO Internet Inc.,  at 2013/12/12 Okin...
OpenStack base public cloud service by GMO Internet Inc., at 2013/12/12 Okin...Naoto Gohko
 
ドライバハッキング。UMPC、Windowsタブレット にLinux、*BSDを入れて遊ぼう  2017年度京都版 #osckyoto
ドライバハッキング。UMPC、Windowsタブレット にLinux、*BSDを入れて遊ぼう  2017年度京都版 #osckyotoドライバハッキング。UMPC、Windowsタブレット にLinux、*BSDを入れて遊ぼう  2017年度京都版 #osckyoto
ドライバハッキング。UMPC、Windowsタブレット にLinux、*BSDを入れて遊ぼう  2017年度京都版 #osckyotoNetwalker lab kapper
 
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...SORACOM,INC
 

Similar to Opa - Cloud Language (20)

2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Path
 
2013 06-22osc nagoya-netmf
2013 06-22osc nagoya-netmf2013 06-22osc nagoya-netmf
2013 06-22osc nagoya-netmf
 
Riscv+fpga200606
Riscv+fpga200606Riscv+fpga200606
Riscv+fpga200606
 
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
はじめてのpostmarketOSインストール Windowsタブレット  #kagolug  Beginner for install postmar...はじめてのpostmarketOSインストール Windowsタブレット  #kagolug  Beginner for install postmar...
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
 
ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118
 
Miracle Linux seminer Hatohol and ConoHa
Miracle Linux seminer Hatohol and ConoHaMiracle Linux seminer Hatohol and ConoHa
Miracle Linux seminer Hatohol and ConoHa
 
Osoljp studygroup201303
Osoljp studygroup201303Osoljp studygroup201303
Osoljp studygroup201303
 
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
 
DockerCon参加報告 (`docker build`が30倍以上速くなる話など)
DockerCon参加報告 (`docker build`が30倍以上速くなる話など)DockerCon参加報告 (`docker build`が30倍以上速くなる話など)
DockerCon参加報告 (`docker build`が30倍以上速くなる話など)
 
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
 
Firefox mobile for android internals
Firefox mobile for android internalsFirefox mobile for android internals
Firefox mobile for android internals
 
地に足がついたクラウドのお話
地に足がついたクラウドのお話地に足がついたクラウドのお話
地に足がついたクラウドのお話
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み
 
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
 
OpenStack base public cloud service by GMO Internet Inc., at 2013/12/12 Okin...
OpenStack base public cloud service by GMO Internet Inc.,  at 2013/12/12 Okin...OpenStack base public cloud service by GMO Internet Inc.,  at 2013/12/12 Okin...
OpenStack base public cloud service by GMO Internet Inc., at 2013/12/12 Okin...
 
ドライバハッキング。UMPC、Windowsタブレット にLinux、*BSDを入れて遊ぼう  2017年度京都版 #osckyoto
ドライバハッキング。UMPC、Windowsタブレット にLinux、*BSDを入れて遊ぼう  2017年度京都版 #osckyotoドライバハッキング。UMPC、Windowsタブレット にLinux、*BSDを入れて遊ぼう  2017年度京都版 #osckyoto
ドライバハッキング。UMPC、Windowsタブレット にLinux、*BSDを入れて遊ぼう  2017年度京都版 #osckyoto
 
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
 

More from Tozo Tanaka

The parts of salary
The parts of salaryThe parts of salary
The parts of salaryTozo Tanaka
 
The responsibility for a programming bug
The responsibility for a programming bugThe responsibility for a programming bug
The responsibility for a programming bugTozo Tanaka
 
Apache James - local mail server
Apache James - local mail serverApache James - local mail server
Apache James - local mail serverTozo Tanaka
 
The practical use method of a mosaic
The practical use method of a mosaicThe practical use method of a mosaic
The practical use method of a mosaicTozo Tanaka
 
White and black used on work
White and black used on workWhite and black used on work
White and black used on workTozo Tanaka
 
Data sorting by SQL
Data sorting by SQLData sorting by SQL
Data sorting by SQLTozo Tanaka
 

More from Tozo Tanaka (6)

The parts of salary
The parts of salaryThe parts of salary
The parts of salary
 
The responsibility for a programming bug
The responsibility for a programming bugThe responsibility for a programming bug
The responsibility for a programming bug
 
Apache James - local mail server
Apache James - local mail serverApache James - local mail server
Apache James - local mail server
 
The practical use method of a mosaic
The practical use method of a mosaicThe practical use method of a mosaic
The practical use method of a mosaic
 
White and black used on work
White and black used on workWhite and black used on work
White and black used on work
 
Data sorting by SQL
Data sorting by SQLData sorting by SQL
Data sorting by SQL
 

Recently uploaded

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 

Recently uploaded (10)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 

Opa - Cloud Language

  • 1. クラウド言語へようこそ  2011/09/16 nichicom-LT   SOHGA Co. Ltd. Tozo TANAKA 
  • 2. Opaでこんなん作られてます ● リアルタイム共有お絵かき http://canvas.opalang.org/ ● ゲーム(ポーカー) https://mlstate.com/pages/products/opa_poker ● CMS https://github.com/mattgu74/OpaCms ● Wiki https://github.com/venator/OpaWiki などなど… http://opalang.org/see.xmlt
  • 3. 特徴 1/3 http://opalang.org/ ● Webサーバ、DBMS、CGI、PG言語、セキュリティ強化、負荷分散.. を一人で全部こなす (Apache + MySQL + RoR + GAE + αみたいな感じ)
  • 4. 特徴 2/3 ● コマンド一発でスケールアウト ○ 単体起動 ./test.exe ○ クラウド起動 ./opa-cloud test.exe --host localhost --host me@myserver1 ...
  • 5. 特徴 3/3 ● ヒアドキュメント的な手軽さでスクリプトとHTMLを同居 ● おフランス製。構文もフランス発祥のOCamelに類似 broadcast(author) =    do Network.broadcast({~author text=Dom.get_value(#entry)}, room)    Dom.clear_value(#entry) start() =    author = Random.string(8)    <div id=#header><div id=#logo></></>    <div id=#conversation onready={_ -> Network.add_callback(user_update, room)}></>    <div id=#footer>       <input id=#entry onnewline={_ -> broadcast(author)} />       <div class="button" onclick={_ -> broadcast(author)}>Post</>    </> server = Server.one_page_bundle("Chat", [@static_resource_directory("resources")],        ["resources/css.css"], start)
  • 6. 得意分野 ● 単機能大量アクセス →twitter、チャット、SNSなど ○ 分散Webアプリ対応 → Scalable ○ 全部入り → Simple, Secure ○ コンパイル型 → Speedy フロントエンドにもバックエンドにも。
  • 7. 歴史 ● 2010年 限定公開 ● 2011年 オープンソース(Affero GPL)としてリリース ● 開発元:MLstate ○ 2007年パリイノベーショングランプリ2007ファイナリスト ○ 2008年フランス省庁による研究賞受賞 ○ 2010年フランスで最も急成長している2000社に選出 ● 各種メディア報道 ○ InfoWorld, infoQ, Lambda The Ultimate, SlashDot,  Hacker News, OS News, WebAppers, i-Programmer, Morgan Hill
  • 8. 環境 ● 公式サポートはMacOSX, Linux(Ubuntu, Debian) 現在64bit版のみ。32bit版は開発中。Windows版も開発中。 他のLinuxディストリビューションもライブラリを入れれば概ね動く。 ● 対象CPUはAMD64。 よってx86のWindows+VMwareではインストール失敗。。
  • 9. Hellow, world! まで 1/2 ● さくらのVPSを契約 (無料期間2週間) カスタムOSインストールでUbuntu 10.04 amd64を導入 ● 関連ライブラリのインストール apt-get install libssl-dev zlib1g-dev libjpeg62 libgif4 ● Ubuntu binaryのDL wget http://download.opalang.org/ubuntu/opa_1.0s3.5%2Bbuild569_amd64.stable.deb ● Opaのインストール dpkg -i opa_1.0s3.5+build569_amd64.stable.deb
  • 10. Hellow, world! まで 2/2 ● コーディング hello.opa server = one_page_server("Hello", -> <>Hello, world!</>) ● コンパイル opa hello.opa ● 実行(localhost:8080 で待機) ./hello.exe ちなみに… 26行のソースとCSSだけで、そこそこのチャットサービスが作れます。
  • 11. 最後に ● 使えるか? →最適化されたソリューションとしては有用。  条件のシビアな案件なら選択肢になりうる。 ● 流行るか? →たぶん主流にはならない。  今のところ日本語ドキュメント皆無だし。 ● 今やるメリットは? →日本でエバンジェリストになれるw さぁ、先駆者になってOpa本の印税GETだ! :)