読者です 読者をやめる 読者になる 読者になる

Tbpgr Blog

Ruby プログラマ tbpgr のブログ。 技術的なことは Qiita に書いてます

はてなブックマーク数

(ฅ・ ω ・)ฅ.oO( CodeIQ の出題一覧かな? )
CodeIQ 2015年06月19日 08時~2015年07月10日20時まで 出題 『第11回デスマコロシアム』問題
CodeIQ 2015年06月16日 08時~2015年08月17日10時まで 出題 『UpDownCap』問題
CodeIQ 2015年06月26日 20時~2015年07月17日20時まで 出題 『新カテ Opal』問題

CodeIQ 出題関連情報一覧
システム開発の現場改善記
お仕事パターンカタログ

Rubyベースの文法でJavaScriptにコンパイルされるAltJS-Opal言語とReactiveなWAF Voltの情報まとめ #opal #ruby

f:id:tbpg:20150629221253p:plain

Rubyベースの文法でJavaScriptコンパイルされるAltJS-Opal言語とReactiveなWAF Voltの情報まとめです。
2015/06/29 時点の内容をまとめました。

Official Site

f:id:tbpg:20150629221259p:plain

Opal Official

Docs

Opal Docs

GitHub

Opal - GitHub

Playground

環境構築せずにPlaygroundで試せます。

Playground - Opal

f:id:tbpg:20150629221311g:plain

Volt - Web Application Framework

f:id:tbpg:20150629221330p:plain

Links

What is Volt?

Qiita

Opal

Volt

外部サイト(日本語)

www.moongift.jp

matome.naver.jp

ja.stackoverflow.com

blog.livedoor.jp

外部サイト(英語)

www.toptal.com

www.sitepoint.com

rubyist.jaredwhite.com

Slides

Opal - Ruby Style!! Ruby in the browser

Opal chapter 4_a_new_hope

JavaScriptでアレがしたい

CodeIQのOpalに関わる問題(期間限定)

codeiq.jp

codeiq.jp

サンプル

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>Opal Sample</title>
  <script src="http://cdn.opalrb.org/opal/current/opal.min.js"></script>
  <script src="http://cdn.opalrb.org/opal/current/opal-parser.min.js"></script>
</head>
<body>
<script type="text/ruby">
3.times { |i| puts "Hello Opal #{i}" }
puts ('a'..'f').map(&:upcase)
Person = Struct.new(:name, :age)
tanaka = Person.new('tanaka', 34)
suzuki = Person.new('suzuki', 23)
[tanaka, suzuki].map { |e|"#{e.name} - #{e.name}" }.each(&method(:puts))
</script>
</body>
</html>

※デモは実際に上記のOpalのコードで動作しており、開発ツールなどでコンソール出力を確認すると 以下の内容が出力されています。

Hello Opal 0
opal.min.js:11 Hello Opal 1
opal.min.js:11 Hello Opal 2
opal.min.js:11 A,B,C,D,E,F
opal.min.js:11 tanaka - tanaka
opal.min.js:11 suzuki - suzuki

外部資料