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
The Fancy Programming Language - FrOSCon 2013
Search
bakkdoor
August 25, 2013
Programming
0
76
The Fancy Programming Language - FrOSCon 2013
Talk I gave about Fancy at FrOSCon 2013 in Bonn, Germany. The talk is in German.
bakkdoor
August 25, 2013
Tweet
Share
More Decks by bakkdoor
See All by bakkdoor
Learning Elm in 3 Days
bakkdoor
1
37
Fancy Hacking / Hacking Fancy
bakkdoor
0
120
Getting Fancy on Rubinius
bakkdoor
3
310
Other Decks in Programming
See All in Programming
Next.js App Router
quramy
11
1.8k
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
240
Ruby Function Composition
bkuhlmann
1
340
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
140
SIMD Parallel Programming with the Vector API
josepaumard
0
230
CDKコントリビュートの最初の壁を越えよう! -簡単issueの見つけ方-
badmintoncryer
3
210
GitHub Copilotのススメ
marcy731
1
220
Elm Form Validation
bkuhlmann
0
510
Polars入門
daikikatsuragawa
1
170
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
43
19k
Milestoner
bkuhlmann
1
410
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
27
8.5k
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
Optimizing for Happiness
mojombo
370
69k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
79
43k
From Idea to $5000 a Month in 5 Months
shpigford
378
45k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
Statistics for Hackers
jakevdp
790
220k
Bash Introduction
62gerente
605
210k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Docker and Python
trallard
35
2.7k
The Mythical Team-Month
searls
216
42k
Ruby is Unlike a Banana
tanoku
96
10k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.2k
Transcript
Christopher Bertels @bakkdoor http://www.fancy-lang.org
About me • Interested in programming language and their implementations
• Professionally work on • backend systems • tools • language compilers, parsers, translators ...
I love languages
So I’ve created my own.
None
dynamic
pure object-oriented
class-based
reflective concurrent simple extendable minimalistic
self-hosted
None
Literal Syntax
Numbers
Strings
Regular Expressions
Symbols
Arrays
Hashes
Tuples
Ranges
Blocks
Message Passing
None
Message Grouping Operators
None
None
Classes
None
None
None
None
Flow-Control
None
None
None
None
None
None
None
None
None
None
None
None
Dynamic Variables
Dynamic Variables • Come from Lisp • Thread-local • Dynamic
binding (runtime call stack) • Used for things like stdio • Like global variables, but way better
None
None
None
Actors & Futures
Actors & Futures • Built-in support for async & future
sends • Multiple implementations, thinking about using Celluloid as default implementation • Currently using Rubinius’ Actor library • rubinius-actor gem
None
None
None
Actors & Futures • @ / @@ syntax compiled into:
• Object#send_future:with_params: • Object#send_async:with_params:
Rubinius & Ruby Interop
None
None
Tools
fspec
None
None
fdoc
None
package system
redis.fy.fancypack
None
Editor Support • Emacs • Vim (not maintained by me)
• TextMate • Sublime Text
What can it be used for?
automation
“scripting”
backend systems
web development
web development
web development
distributed services
realtime computation with Storm
None
None
None
None
None
None
Riak
Riak
Riak
Riak
Riak
$ fancy install bakkdoor/ripple.fy Riak
Redis
$ fancy install bakkdoor/redis.fy Redis
None
and much more ...
and much more ...
Installation
None
fancy-lang.org github.com/bakkdoor/fancy
Thanks! @bakkdoor bakkdoor.net