Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Neon: JavaScript Native Extensions in Rust - Dr...
Search
hone
November 06, 2017
Programming
0
71
Neon: JavaScript Native Extensions in Rust - Dreamforce 2017 OSS Booth
https://github.com/hone/electronjs-mandelbrot
https://github.com/hone/neon-mandelbrot
hone
November 06, 2017
Tweet
Share
More Decks by hone
See All by hone
Limitless - RubyUnconf Hamburg 2019
hone
0
160
Deep Dive: Cloud Native Buildpacks - KubeCon EU 2019
hone
1
250
Intro: Cloud Native Buildpacks - KubeCon EU 2019
hone
0
39
KubeCon 2018 - Intro: Cloud Native Buildpacks
hone
0
140
A Droid's Journey - CodeDaze 2018
hone
0
90
A Droid's Journey - RubyKaigi 2018
hone
0
640
Helix: Native Extensions for Everyone - RubyConf Colombia 2017
hone
1
160
Leveraging Rust with mruby: Loving our fellow Windows® users - FOSDEM 2017
hone
0
260
After A Decade: Still a Rubyist - Red Dot Ruby Conference 2016
hone
0
320
Other Decks in Programming
See All in Programming
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
140
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
430
最近のVS Codeで気になるニュース 2025/01
74th
1
110
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
390
Flatt Security XSS Challenge 解答・解説
flatt_security
0
740
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
300
20241217 競争力強化とビジネス価値創出への挑戦:モノタロウのシステムモダナイズ、開発組織の進化と今後の展望
monotaro
PRO
0
290
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
為你自己學 Python
eddie
0
520
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
550
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
1.9k
Beyond ORM
77web
11
1.6k
Featured
See All Featured
Embracing the Ebb and Flow
colly
84
4.5k
A designer walks into a library…
pauljervisheath
205
24k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Building Applications with DynamoDB
mza
93
6.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Facilitating Awesome Meetings
lara
51
6.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
GitHub's CSS Performance
jonrohan
1030
460k
Making the Leap to Tech Lead
cromwellryan
133
9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Transcript
Neon JavaScript Native Extensions in Rust
JavaScript Native Extensions (C++) • Unsafe • Risky - segfaults!
• Maintenance burden • Contribution barrier • Cross Platform Support
None
Meet Rust • Like C: compiled, statically typed, very fast
• Unlike C: enjoyable to use, guarantees safety • "If it compiles, it doesn't crash" • Same guarantee as JavaScript with memory safety • Strong C/FFI support
Cargo - Dependency Manager
What is Neon? • Rust bindings for writing safe and
fast native Node.js modules • Crash free memory protection (works with JS GC) • Parallelism (use multiple threads)
Mandelbrot Demo
None
z n+1 = z n 2 + c
DEMO https://github.com/hone/electronjs-mandelbrot https://github.com/hone/neon-mandelbrot
Wire App
None
Neon @ Heroku/Salesforce
Heroku/SFDX CLI
Distribution