Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Logico
PDF, PPTX
2,900 views
これからのNashorn
Nashorn in the Futureの日本語版です。
Technology
◦
Read more
4
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 23
2
/ 23
3
/ 23
4
/ 23
5
/ 23
6
/ 23
7
/ 23
8
/ 23
9
/ 23
10
/ 23
11
/ 23
12
/ 23
13
/ 23
14
/ 23
15
/ 23
16
/ 23
17
/ 23
18
/ 23
19
/ 23
20
/ 23
21
/ 23
22
/ 23
23
/ 23
More Related Content
PDF
HeapStats: Introduction and Technical Preview
by
Yuji Kubota
PPTX
Java トラブル解析支援ツール HeapStats のご紹介
by
Shinya Takebayashi
PDF
10のJava9で変わるJava8の嫌なとこ!
by
bitter_fox
PPTX
Java EE8 Report
by
Norito Agetsuma
PDF
Nashorn in the future (Japanese)
by
Logico
PDF
HeapStats @ Seasar Conference 2015 LT
by
Yuji Kubota
PDF
Introduction to JShell #JavaDayTokyo #jdt_jshell
by
bitter_fox
PPT
Java9新機能概要
by
HonMarkHunt
HeapStats: Introduction and Technical Preview
by
Yuji Kubota
Java トラブル解析支援ツール HeapStats のご紹介
by
Shinya Takebayashi
10のJava9で変わるJava8の嫌なとこ!
by
bitter_fox
Java EE8 Report
by
Norito Agetsuma
Nashorn in the future (Japanese)
by
Logico
HeapStats @ Seasar Conference 2015 LT
by
Yuji Kubota
Introduction to JShell #JavaDayTokyo #jdt_jshell
by
bitter_fox
Java9新機能概要
by
HonMarkHunt
What's hot
PPTX
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
by
SEGADevTech
PPTX
Java 9で進化する診断ツール
by
Yasumasa Suenaga
PDF
20180109 titech lecture_ishizaki_public
by
Kazuaki Ishizaki
PDF
アドテク×Scala×パフォーマンスチューニング
by
Yosuke Mizutani
PPTX
Heap statsfx analyzer
by
Yasumasa Suenaga
PDF
Getting Started GraalVM / GraalVM超入門 #jjug_ccc #ccc_c2
by
tamtam180
PDF
Logicadの秒間16万リクエストをさばく広告入札システムにおける、gRPCの活用事例
by
Hironobu Isoda
PPTX
java.lang.OutOfMemoryError #渋谷java
by
Yuji Kubota
PDF
【Spring fest 2019】徹底解剖Spring MVCアーキテクチャー
by
ssuser070fa9
PPTX
jcmd をさわってみよう
by
Tsunenaga Hanyuda
PDF
Javaはどのように動くのか~スライドでわかるJVMの仕組み
by
Chihiro Ito
PPTX
20140518 JJUG MySQL Clsuter as NoSQL
by
Ryusuke Kajiyama
PDF
Ahead-of-Time Compilation with JDK 9 [Java Day Tokyo 2017 D1-A1]
by
David Buck
PDF
20160906 pplss ishizaki public
by
Kazuaki Ishizaki
PDF
hscj2019_ishizaki_public
by
Kazuaki Ishizaki
PDF
JavaOne2015報告またはこれからのJava
by
なおき きしだ
PDF
JavaOne 2015 JDK Update (Jigsaw) #j1jp
by
Yuji Kubota
PDF
コンピューティングとJava~なにわTECH道
by
なおき きしだ
PPTX
Panamaを先取り!? JVMCIでJITと遊ぶ
by
Yasumasa Suenaga
PDF
ScalaでDSP作ってみた
by
Jiro Hiraiwa
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
by
SEGADevTech
Java 9で進化する診断ツール
by
Yasumasa Suenaga
20180109 titech lecture_ishizaki_public
by
Kazuaki Ishizaki
アドテク×Scala×パフォーマンスチューニング
by
Yosuke Mizutani
Heap statsfx analyzer
by
Yasumasa Suenaga
Getting Started GraalVM / GraalVM超入門 #jjug_ccc #ccc_c2
by
tamtam180
Logicadの秒間16万リクエストをさばく広告入札システムにおける、gRPCの活用事例
by
Hironobu Isoda
java.lang.OutOfMemoryError #渋谷java
by
Yuji Kubota
【Spring fest 2019】徹底解剖Spring MVCアーキテクチャー
by
ssuser070fa9
jcmd をさわってみよう
by
Tsunenaga Hanyuda
Javaはどのように動くのか~スライドでわかるJVMの仕組み
by
Chihiro Ito
20140518 JJUG MySQL Clsuter as NoSQL
by
Ryusuke Kajiyama
Ahead-of-Time Compilation with JDK 9 [Java Day Tokyo 2017 D1-A1]
by
David Buck
20160906 pplss ishizaki public
by
Kazuaki Ishizaki
hscj2019_ishizaki_public
by
Kazuaki Ishizaki
JavaOne2015報告またはこれからのJava
by
なおき きしだ
JavaOne 2015 JDK Update (Jigsaw) #j1jp
by
Yuji Kubota
コンピューティングとJava~なにわTECH道
by
なおき きしだ
Panamaを先取り!? JVMCIでJITと遊ぶ
by
Yasumasa Suenaga
ScalaでDSP作ってみた
by
Jiro Hiraiwa
Viewers also liked
PDF
Nashorn: JavaScript Running on Java VM (English)
by
Logico
PDF
A new execution model for Nashorn in Java 9
by
Marcus Lagergren
PPTX
ついに始まるJava EE 7時代のアプリケーション開発
by
Takakiyo Tanaka
PDF
Nashorn in the future (English)
by
Logico
PDF
Java 7 invokedynamic の概要
by
Taku Miyakawa
PPTX
SORACOM Bootcamp Rec1 - SORACOM Air (1)
by
SORACOM,INC
PDF
SolrとElasticsearchを比べてみよう
by
Shinsuke Sugaya
PPTX
【講演資料】激変する自動車業界におけるクルマ屋の戦略
by
naoto kyo
PDF
Nashorn in the future (English)
by
Logico
PDF
Virtua Fighter5 Final ShowdownのTwitter連動機能について #twtr_hack
by
Takeshi Iwasaki
PDF
NashornとServerSideJavaScript
by
Mizuho Sakamaki
PDF
Java9 and Project Jigsaw
by
takezoe
PDF
APIdays Australia 2017 TOI #APIdaysAU
by
Tatsuo Kudo
PDF
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
by
Tatsuo Kudo
PDF
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
by
Yusuke Yamamoto
Nashorn: JavaScript Running on Java VM (English)
by
Logico
A new execution model for Nashorn in Java 9
by
Marcus Lagergren
ついに始まるJava EE 7時代のアプリケーション開発
by
Takakiyo Tanaka
Nashorn in the future (English)
by
Logico
Java 7 invokedynamic の概要
by
Taku Miyakawa
SORACOM Bootcamp Rec1 - SORACOM Air (1)
by
SORACOM,INC
SolrとElasticsearchを比べてみよう
by
Shinsuke Sugaya
【講演資料】激変する自動車業界におけるクルマ屋の戦略
by
naoto kyo
Nashorn in the future (English)
by
Logico
Virtua Fighter5 Final ShowdownのTwitter連動機能について #twtr_hack
by
Takeshi Iwasaki
NashornとServerSideJavaScript
by
Mizuho Sakamaki
Java9 and Project Jigsaw
by
takezoe
APIdays Australia 2017 TOI #APIdaysAU
by
Tatsuo Kudo
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
by
Tatsuo Kudo
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
by
Yusuke Yamamoto
Similar to これからのNashorn
PDF
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
by
PE-BANK
PDF
Oracle code one 2018 報告会概要
by
Chihiro Ito
PDF
JDK: 新しいリリースモデル解説
by
オラクルエンジニア通信
PDF
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
by
NTT DATA Technology & Innovation
PDF
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
by
NTT DATA Technology & Innovation
PDF
ATN No.2 Scala事始め
by
AdvancedTechNight
PDF
Oracle jdk 20190827 - 今、あらためてOracle提供のJDKを語る
by
オラクルエンジニア通信
PPTX
キャッチアップJavaScriptビルド -ビルドから見るJSの今/2016春
by
Kondo Hitoshi
PDF
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
by
Akira Inoue
PDF
Java SE 8におけるHotSpotの進化 [Java Day Tokyo 2014 C-2]
by
David Buck
PDF
20161111 java one2016-feedback
by
Takashi Ito
PDF
20161119 java one-feedback_osaka
by
Takashi Ito
PDF
今年はJava進化の年!今知っておくべき新しいJava
by
Takashi Ito
PPTX
Continuous delivery 6
by
ShinyaOzawa
PPTX
Continuous delivery chapter13
by
favril1
PPT
Intalio Cloud Workshop
by
Daisuke Sugai
KEY
関ジャバ JavaOne Tokyo 2012報告会
by
Koichi Sakata
PPT
Java 7
by
Tetsuya Yoshida
PDF
20190202 jdk new_release_model_sendai
by
オラクルエンジニア通信
PDF
Scala conf2013
by
Takafumi Ikeda
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
by
PE-BANK
Oracle code one 2018 報告会概要
by
Chihiro Ito
JDK: 新しいリリースモデル解説
by
オラクルエンジニア通信
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
by
NTT DATA Technology & Innovation
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
by
NTT DATA Technology & Innovation
ATN No.2 Scala事始め
by
AdvancedTechNight
Oracle jdk 20190827 - 今、あらためてOracle提供のJDKを語る
by
オラクルエンジニア通信
キャッチアップJavaScriptビルド -ビルドから見るJSの今/2016春
by
Kondo Hitoshi
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
by
Akira Inoue
Java SE 8におけるHotSpotの進化 [Java Day Tokyo 2014 C-2]
by
David Buck
20161111 java one2016-feedback
by
Takashi Ito
20161119 java one-feedback_osaka
by
Takashi Ito
今年はJava進化の年!今知っておくべき新しいJava
by
Takashi Ito
Continuous delivery 6
by
ShinyaOzawa
Continuous delivery chapter13
by
favril1
Intalio Cloud Workshop
by
Daisuke Sugai
関ジャバ JavaOne Tokyo 2012報告会
by
Koichi Sakata
Java 7
by
Tetsuya Yoshida
20190202 jdk new_release_model_sendai
by
オラクルエンジニア通信
Scala conf2013
by
Takafumi Ikeda
More from Logico
PDF
Polyglot on the JVM with Graal (English)
by
Logico
PDF
Nashorn : JavaScript Running on Java VM (Japanese)
by
Logico
PDF
Another compilation method in java - AOT (Ahead of Time) compilation
by
Logico
PDF
CDI 2.0 (JSR 365) - Java Day Tokyo 2017 (English)
by
Logico
PDF
ADBA (Asynchronous Database Access)
by
Logico
PDF
Welcome, Java 15! (Japanese)
by
Logico
PDF
Jvmls 2019 feedback valhalla update
by
Logico
PDF
Polyglot on the JVM with Graal (Japanese)
by
Logico
PDF
Project Helidon Overview (Japanese)
by
Logico
PDF
Java EE 8 Overview (Japanese)
by
Logico
PDF
Oracle Code One 2018 Feedback (Server Side / Japanese)
by
Logico
PDF
Look into Project Valhalla from CLR viewpoint
by
Logico
Polyglot on the JVM with Graal (English)
by
Logico
Nashorn : JavaScript Running on Java VM (Japanese)
by
Logico
Another compilation method in java - AOT (Ahead of Time) compilation
by
Logico
CDI 2.0 (JSR 365) - Java Day Tokyo 2017 (English)
by
Logico
ADBA (Asynchronous Database Access)
by
Logico
Welcome, Java 15! (Japanese)
by
Logico
Jvmls 2019 feedback valhalla update
by
Logico
Polyglot on the JVM with Graal (Japanese)
by
Logico
Project Helidon Overview (Japanese)
by
Logico
Java EE 8 Overview (Japanese)
by
Logico
Oracle Code One 2018 Feedback (Server Side / Japanese)
by
Logico
Look into Project Valhalla from CLR viewpoint
by
Logico
Recently uploaded
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):コアマイクロシステムズ株式会社 テーマ 「AI HPC時代のトータルソリューションプロバイダ」
by
PC Cluster Consortium
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):日本ヒューレット・パッカード合同会社 テーマ1「大規模AIの能力を最大限に活用するHPE Comp...
by
PC Cluster Consortium
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):Pacific Teck Japan テーマ3「『TrinityX』 AI時代のクラスターマネジメ...
by
PC Cluster Consortium
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):Pacific Teck Japan テーマ2「『Slinky』 SlurmとクラウドのKuber...
by
PC Cluster Consortium
PDF
論文紹介:DiffusionRet: Generative Text-Video Retrieval with Diffusion Model
by
Toru Tamaki
PDF
論文紹介:HiLoRA: Adaptive Hierarchical LoRA Routing for Training-Free Domain Gene...
by
Toru Tamaki
PDF
論文紹介:MotionMatcher: Cinematic Motion Customizationof Text-to-Video Diffusion ...
by
Toru Tamaki
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):エヌビディア合同会社 テーマ1「NVIDIA 最新発表製品等のご案内」
by
PC Cluster Consortium
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):日本ヒューレット・パッカード合同会社 テーマ3「IT運用とデータサイエンティストを強力に支援するH...
by
PC Cluster Consortium
PPTX
ChatGPTのコネクタ開発から学ぶ、外部サービスをつなぐMCPサーバーの仕組み
by
Ryuji Egashira
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):富士通株式会社 テーマ1「HPC&AI: Accelerating material develo...
by
PC Cluster Consortium
PPTX
2025年11月24日情報ネットワーク法学会大井哲也発表「API利用のシステム情報」
by
Tetsuya Oi
PDF
AI開発の最前線を変えるニューラルネットワークプロセッサと、未来社会における応用可能性
by
Data Source
PDF
ニューラルプロセッサによるAI処理の高速化と、未知の可能性を切り拓く未来の人工知能
by
Data Source
PDF
膨大なデータ時代を制する鍵、セグメンテーションAIが切り拓く解析精度と効率の革新
by
Data Source
PCCC25(設立25年記念PCクラスタシンポジウム):コアマイクロシステムズ株式会社 テーマ 「AI HPC時代のトータルソリューションプロバイダ」
by
PC Cluster Consortium
PCCC25(設立25年記念PCクラスタシンポジウム):日本ヒューレット・パッカード合同会社 テーマ1「大規模AIの能力を最大限に活用するHPE Comp...
by
PC Cluster Consortium
PCCC25(設立25年記念PCクラスタシンポジウム):Pacific Teck Japan テーマ3「『TrinityX』 AI時代のクラスターマネジメ...
by
PC Cluster Consortium
PCCC25(設立25年記念PCクラスタシンポジウム):Pacific Teck Japan テーマ2「『Slinky』 SlurmとクラウドのKuber...
by
PC Cluster Consortium
論文紹介:DiffusionRet: Generative Text-Video Retrieval with Diffusion Model
by
Toru Tamaki
論文紹介:HiLoRA: Adaptive Hierarchical LoRA Routing for Training-Free Domain Gene...
by
Toru Tamaki
論文紹介:MotionMatcher: Cinematic Motion Customizationof Text-to-Video Diffusion ...
by
Toru Tamaki
PCCC25(設立25年記念PCクラスタシンポジウム):エヌビディア合同会社 テーマ1「NVIDIA 最新発表製品等のご案内」
by
PC Cluster Consortium
PCCC25(設立25年記念PCクラスタシンポジウム):日本ヒューレット・パッカード合同会社 テーマ3「IT運用とデータサイエンティストを強力に支援するH...
by
PC Cluster Consortium
ChatGPTのコネクタ開発から学ぶ、外部サービスをつなぐMCPサーバーの仕組み
by
Ryuji Egashira
PCCC25(設立25年記念PCクラスタシンポジウム):富士通株式会社 テーマ1「HPC&AI: Accelerating material develo...
by
PC Cluster Consortium
2025年11月24日情報ネットワーク法学会大井哲也発表「API利用のシステム情報」
by
Tetsuya Oi
AI開発の最前線を変えるニューラルネットワークプロセッサと、未来社会における応用可能性
by
Data Source
ニューラルプロセッサによるAI処理の高速化と、未知の可能性を切り拓く未来の人工知能
by
Data Source
膨大なデータ時代を制する鍵、セグメンテーションAIが切り拓く解析精度と効率の革新
by
Data Source
これからのNashorn
1.
これからのNashorn Akihiro Nishikawa Oracle Corporation
Japan November, 12, 2014 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |
2.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 2
3.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | Agenda Nashornとは 8u40で登場予定の機能 将来のNashorn 1 2 3 3
4.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | Nashornとは 4
5.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | Nashorn -‐ JavaScript Engine • Java VM上で動作するJavaScriptエンジン – Compact1 profileでも動作 • Java 8に同梱(2014年3月から) • ECMAScript-‐262 Edition 5.1の100%互換実装 • JSR-‐292 (invokedynamic)とDynalinkを用いた、軽量なJavaへのインター フェースを提供 • 開発者向けWiki(英語) – https://wiki.openjdk.java.net/display/Nashorn 5
6.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | 8u20 • --const-as-var – ‘const’を ‘var’で置き換えるオプション • --no-java – “Java”オブジェクトや“Packages”オブジェクトなどのJava固有の拡張を使わなくするた めのオプション 6 主としてセキュリティ対応やJITやJDKの改善
7.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | 8u40で登場予定の機能 7
8.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | 8u40 • パフォーマンスの最適化 – 遅延コンパイル – 楽観的型付け (Optimistic typing) – invokedynamicのパフォーマンス改善 – プリミティブ型の特殊化 (Primitive type specializations / Optimistic built-‐in) • Array • String • 数学組み込み関数 (Math intrinsics) – 全体的なランタイムの改善 • その他 – クラスフィルタ (Class filter) – 限定的なECMAScript 6仕様のサポート • 字句スコープの変数と定数の定義 (Lexical-‐ scoped variables and constant definition) 8 パフォーマンス改善を主目的としたリリース
9.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | JEP 194: Code Persistence • 概要 – メモリ使用量の削減ならびに起動時間の短縮のため、同じプロセス内で再利用でき るようコードをキャッシュできる – キャッシュの利用は同一プロセスに限定され、プロセス間では共有しない • 利用方法 – 以下のオプションを利用 • --persistent-code-cache=true|false (-pcc) – 楽観的型付け情報(Optimistic type information)もキャッシュされる • --class-cache-size=50 (-ccs) – グローバル・スコープ毎のクラス・キャッシュサイズ。デフォルトサイズは50 9 コードの永続化
10.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | JEP 196: Optimistic Typing • 概要 – 以下の方針に従い、できるだけ実行時に型付けせずに、Nashornのパフォーマンス 向上をはかる • 演算および配列のインデックス操作で使用する特定の型(type)を仮定 • 型に対する仮定が正しくない場合に、仮定を取り消し、フォールバック – コンセプト実現のため、非Javaバイトコードを最適化するためのHotSpot JVMの能力 を向上させる必要があり、同時に実装中 10 楽観的型付け – Javaのようなバイトコードを生成するために int long double Object
11.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | JEP 202: Class Filter • 概要 – Javaクラスへのアクセスをフィルタリングするためのインターフェース (ClassFilter) – Nashornを使うJavaアプリケーションが実装可能 • jdk.nashorn.api.scripting.ClassFilter • 注意 – RhinoのClassShuttersとの互換性はない • NashornのClassFilter APIは、RhinoのClassShutter APIとコンセプトが類似しているだけ • ClassFilter APIにはRhinoと同じパッケージ名やクラス名、メソッド名はない(予定) 11 Javaクラスへのアクセスをフィルタリング
12.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | JEP 202: Class Filter import jdk.nashorn.api.scripting.ClassFilter; static class MyFilter implements ClassFilter { @Override public boolean exposeToScripts(String classname) { return false; } } … NashornScriptEngine engine = factory.getScriptEngine(new MyFilter()); try { engine.eval("Java.type('java.util.Vector')"); } catch (ex) { print("No access to Java Classes"); } 12 例
13.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | JEP 203: Lexically-‐scoped variable and constant declarations • 概要 – letやconstだけでなく、関数宣言も使って、スコープ内変数や定数を実装 – ECMAScript 6仕様で必要 • 利用方法 – --language=es6を付ける必要がある – let • ブロックに含まれるスコープ内変数の宣言に利用 – const • letと同様、constを使って宣言した定数はブロック内に生存範囲を限定 13 スコープ内変数(let)や定数(const)の宣言
14.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | JEP 203: Lexically-‐scoped variable and constant declarations // let let a = 2; function f(x) { // "a" is 2 here if (x) { let a = 42; } // "a" is still 2 } 14 letの例 // var var a = 2; function f(x) { // "a" is undefined here if (x) { var a = 42; } // Depending on "x", "a" is 42 or undefined }
15.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | JEP 203: Lexically-‐scoped variable and constant declarations // const 1 function f(x) { const b = 1; b = 99; // Syntax Error } // const 2 function f(x) { const b = 1; var z = b + 1; // z = 2 } var y = b + 1; // b is undefined 15 constの例 // const 3 function f(x) { const b = 1; var z = b + 1; // z = 2 } const b = 10; // Able to define b
16.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | その他の最適化 • xをMethodHandle.constantをinvokedynamicのgetterとして利用できる • xがスコープ内で変更される場合、SwitchPointを使い無効化できる • このcallsiteが再度定数になることを禁止する、n回の再試行を認める、ま たはreceiver guardを使って試行する、のいずれかを手段としてとることが できる 16 部分評価 (Partial Evaluation) for (var i = 0; i < x.length; i++) { //xが不変の場合... }
17.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | その他の最適化 • オンデマンドでメソッドのコンパイルのみ実行 – リンク時にマッチするシグネチャがない場合 • できる限り曖昧でないメソッドをコンパイル – リンク時にマッチするシグネチャが存在する場合 • もっと具体的にメソッドのコンパイルを試行 17 遅延コンパイル
18.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | もっと先の話 18
19.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | The Future • プロファイリング • Java Flight Recorderの活用 • ECMAScript6のサポート(仕様が確定した暁には) ...などなど 19 Java 9からその先
20.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 20
21.
Copyright © 2014,
Oracle and/or its affiliates. All rights reserved. | 21
Download