Slide 1

Slide 1 text

ECMAScript6で作る新言語XY JSオジサン#6 (株)リクルートマーケティングパートナーズ ラーニングプラットフォーム推進室 技術フェロー 竹迫 良範

Slide 2

Slide 2 text

 株式会社リクルートマーケティングパートナーズ 技術フェロー  高知工業高等専門学校 客員准教授  Shibuya.pmリーダー  SECCON実行委員長  OWASP Japan Advisory board  SC 22/ECMAScript Ad Hoc エキスパート  連載:Software Design「Ajax/JavaScriptハッカー養成講座」  共著:スキル向上のためのHTML5テクニカルレビュー(W3C/Keio監修)  論文:「x86 JITコンパイラ上で任意のコードを実行する方法」 自己紹介:@takesako

Slide 3

Slide 3 text

竹迫良範 自己紹介:@takesako Amazon.co.jpで「竹迫良範」を検索したページ

Slide 4

Slide 4 text

単行本 完全日本語訳+解説 「ECMA-262 Edition 5.1を読む」 訳・編: 竹迫良範 出版社: 秀和システム ISBN-13: 978-4798038926 発売日: 2013/9/25 ページ数: 416ページ 本体価格: 3,200円(税別) 突然の絶版 自己紹介:@takesako http://www.amazon.co.jp/dp/479803892X

Slide 5

Slide 5 text

株式会社リクルートマーケティングパートナーズ http://www.recruit-mp.co.jp/career_engineer/member/cto.html

Slide 6

Slide 6 text

英語サプリ: TypeScript + AngularJS で開発 https://eigosapuri.jp/

Slide 7

Slide 7 text

@hokacchaさん、ありがとうございます! http://www.adventar.org/calendars/953

Slide 8

Slide 8 text

http://www.recruit-mp.co.jp/

Slide 9

Slide 9 text

男と女の恋愛支援 [ゼクシィ] 創刊号 1993年5月『XY』創刊 染色体のXX(女性)と XY(男性)に由来 ブライダル業界の 価格破壊に挑む 特集「結婚費用 節約術100連発」など リクルートの社内新規 事業提案制度から発足

Slide 10

Slide 10 text

ゼクシィ 2014年2月号 ピンク色の「婚姻届」 ゼクシィ 2015年9月号 花嫁専用「自撮り棒」 全国19版、発行部数 約30万部 (2013年6月) 2000年頃~雑誌の付録が面白いことで話題

Slide 11

Slide 11 text

付録:新婚女性1000人のホンネを大調査  2015年10月号 ゼクシィ史上初の新婚SEX白書  新婚女性の3人に1人が何らかの悩み  パートナーに打ち明けられない(65%)  ピンクの婚姻届  毎月の付録に  日本の社会問題  少子化、晩婚化  社会問題を解決

Slide 12

Slide 12 text

プロポーズするならゼクシィ→出会う前も支援 https://zexy-koimusubi.net/

Slide 13

Slide 13 text

ゼクシィ縁結び → 女性も安心して参加  ゼクシィ利用者6000人に調査  幸せな結婚生活を送って いるカップルの特徴分析  18問の価値観診でマッチ  紹介:4人/日、1480人/年  コンシェルジュがサポート  デート日程場所の調整代行  携帯電話は相手に伝わらない https://zexy-enmusubi.net/

Slide 14

Slide 14 text

婚活パーティ(スポーツ、ご当地、謎解き…) http://zexy-en-party.net/

Slide 15

Slide 15 text

ゼクシィ相談カウンター×ゼクシィ保険ショップ http://www.recruit-zexy-navi.jp/

Slide 16

Slide 16 text

オンライン料理教室「ゼクシィキッチン」公開 https://zexy-kitchen.net/

Slide 17

Slide 17 text

幸せな人には共通点がある(ゼクシィ調査結果) オンライン料理教室「ゼクシィキッチン」 実施時期:2015年7月9日~12日 ・調査対象者:15歳~69歳の男女 400ss ・エリア:全国

Slide 18

Slide 18 text

料理の勉強を始めるタイミングは? 結婚を意識してから… 彼に美味しい料理を… 問題点 母親の味の継承不足 料理教室の料金は高い 教室に行くのは恥ずかしい 地理的に通えない人も 解決策 月額980円のオンライン動画教室 一流の料理の先生 オンライン料理教室「ゼクシィキッチン」

Slide 19

Slide 19 text

新言語 XY を作ってみた! xX XX XX XX XX xy Xx XX XX XX XX XX XX XX XX xX xx XY xX XX XX XX XX XX XX XX xy Xx XX XX XX XX XX XX XX XX xX xx XY Xx XX xX XX XX XX XX XX XX XX XX XX xX xX XX XX XX XX XX XX XX XX XX XX xy Xx XX XX XX XX XX XX XX XX XX XX xX xx XY Xx xx xx xy xX xy xx XY Xx xy xx xX XX xX XX Xx Xx XY xX xX xy xx Xx Xx XX xX xX XY Xx xx xy xX xy xx XY Xx Xx xy xx xX xX XX xX XX Xx Xx Xx XY xX xX xX xy xx Xx Xx Xx XX xX xX xX XY Xx XX xy xX xX xy xx XY xX xy xx XY Xx Xx xy xX XX xX XX Xx Xx xx XY xX xX xy Xx Xx XX xX xX xx XY Xx xX xy xx XY XX Xx xy xX xx Xx xy xx XY XY xX xy xx Xx Xx Xx Xx xy xx xX xX XX xX xX XX Xx Xx Xx Xx XY xX xX xX xX xy xx Xx Xx Xx Xx XX xX xX xX xX XY Xx Xx XX xX xX XY Xx Xx xx Xx xx XY xX xX xy xx XY XX Xx xy xy xx XY xX xx Xx XY xX xy xx Xx xX xX xy xx XY XX Xx Xx Xx Xx xy xx XY XX xX xX xX XY Xx Xx Xx xx XY xX xX xX xX xX xy xx XY XX Xx xy xy xx XY xX xx Xx XY xX xy xx Xx Xx Xx Xx Xx Xx Xx Xx xY xX xX xX xy xx XY XX XX XX XX XX XX xy Xx Xx XX XX XX XX XX XX XX XX xX xX xx XY Xx Xx xY xX xX XX XX XX XX XX XX xy Xx Xx xx xx xx xx xx xx xx xx xX xX xx XY Xx Xx Xx Xx xY xX xX xX xX xX xX xX xX xX XY Xx Xx Xx Xx Xx Xx xx xX xX xy xx XY Xx Xx Xx xy xx xX xX XX xX XX Xx Xx Xx XY xX xX xX xy xx Xx Xx Xx XX xX xX xX XY Xx xX XX Xx xy xy xx XY xX xx Xx Xx Xx xx xX xX XY xX xy xx Xx Xx Xx XX XX XX XX XX XX XX XX XX Xx xx xX xX xX xX XY Xx Xx XY

Slide 20

Slide 20 text

新言語 XY で素数を数えてみるテスト

Slide 21

Slide 21 text

Arrow_function = (ES6) => {return ES6} let xy2bf=(t)=>t.replace(/(X[XY]¥s*)/ig,(x)=>{ switch(x.replace(/¥s/g,"")){ case"Xx":return"<"; case"xX":return">"; case"XX":return"+"; case"xx":return"-"; case"xY":return"."; case"Xy":return","; case"xy":return"["; case"XY":return"]"; default :return""; } }) + "";

Slide 22

Slide 22 text

Arrow_function = (ES6) => "return" + ES6 let bf = (t) => "var m=[];var o='';var p=0;" + t.replace(/(.)/g, (x) => { switch(x){ case"<":return"p&&p--;"; case">":return"p++;"; case"+":return"m[p]|=0;m[p]++;"; case"-":return"m[p]&&m[p]--;"; case".":return"o+=String.fromCharCode(m[p]);"; case",":return";"; case"[":return"m[p]|=0;while(m[p]){"; case"]":return"}"; default:return""; } }) + "return o;";

Slide 23

Slide 23 text

 ECMA-262 6th Edition – ECMAScript 2015 言語仕様 (2015.06.17)  Arrow function (Coffee Script)  Class (大規模開発)  Module (import, export)  Block Scope (let, const)  Template Literal (複数行文字列リテラル)  Generator (function *, yield, next), Iterator (for of, Map)  Typed Array  Math.imul(0xffffffff, 3) // -3  Tail Call Optimization ECMAScript6 で使える新機能

Slide 24

Slide 24 text

Template Literal で複数行文字が楽に書ける! let prime = ` xX XX XX XX XX xy Xx XX XX XX XX XX XX XX XX xX xx XY xX XX XX XX XX XX XX XX xy Xx XX XX XX XX XX XX XX XX xX xx XY Xx XX xX XX XX XX XX XX XX XX XX XX xX xX XX XX XX XX XX XX XX XX XX XX xy Xx XX XX XX XX XX XX XX XX XX XX xX xx XY Xx xx xx xy [...] `; 構造化プロ グラミング

Slide 25

Slide 25 text

おまけ: Perl でも新言語 XY を実装してみた

Slide 26

Slide 26 text

新言語 XY って役に立つの?  愛の告白にぜひ  XX XX XX XX XX XX XX XX xy xX XX xX XX XX xX XX XX XX xX XX XX XX XX xX XX XX XX XX XX xX XX XX XX XX XX XX xX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX xX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xx XY xX xX xX xX xX xX xX xX xX XX xY xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xX xX xX xX xY Xx Xx Xx Xx xX xX xX xX xX xX xX xX xX xX xX xX xX xX xx xx xx xx xY XX XX XX XX Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xX xX xX xX xX xX xX xX xX xX xX xX xX xX xx xY XX Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xX xX xX xX xX xX xX xX xX xX xX xX xX xX xX xx xx xY XX XX Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xX xX xX xX xX xX xX xX xX xX xX xX xX xx xx xx xY XX XX XX Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xX xX xX xX xY Xx Xx Xx Xx xX xX xX xX xX xX xX xX xX xX xX xX xX xX xX XX xY xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xX xX xX xX xX xX xX xX xX xX xX xX xX xX xx xY XX Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xX xX xX xX xX xX xX xX xX xX xX xX xX xX xX xx xx xx xY XX XX XX Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx Xx xX xX xX xX XX xY xx Xx Xx Xx Xx xY

Slide 27

Slide 27 text

XYでプロポーズ 新言語 XY で内気なギークも照れずに告白♪ リクルートマーケティングパートナーズでは 新規サービス開発で社会問題を解決したい 内製開発エンジニアを募集しています! ひとりひとりのライフイベントの積み重ねに寄り添い、人 生の"しあわせの総量"が増えている世界を目指します。 ひとりひとりの人生に起こる拍手の機会と量を増やして いきます。 cheers! your life. 人生に、拍手があふれる世界を。