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
Emojicode
Search
Francesco
August 02, 2016
Programming
0
240
Emojicode
Apresentação dada na SECOMP UNICAMP 2016
Cógido e Deckset:
https://github.com/fpg1503/EmojicodeTalk
Francesco
August 02, 2016
Tweet
Share
More Decks by Francesco
See All by Francesco
Testando o App do Nubank - TDC Florianópolis 2019
fpg1503
2
250
Testando o App do Nubank - CocoaHeads
fpg1503
2
260
Garantindo qualidade no app do Nubank
fpg1503
0
160
Testando o App do Nubank
fpg1503
1
110
Testes na Prática
fpg1503
0
78
What's good code and How do I write it?
fpg1503
0
160
A coisa mais sensacional que passou despercebida na WWDC
fpg1503
0
340
Optionals e o Gato de Schrödinger
fpg1503
0
170
FRP em Swift - Programação Funcional Reativa
fpg1503
0
270
Other Decks in Programming
See All in Programming
機能追加とリーダー業務の類似性
rinchoku
2
1.3k
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
710
Testing Trophyは叫ばない
toms74209200
0
890
Improving my own Ruby thereafter
sisshiki1969
1
160
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
140
はじめてのMaterial3 Expressive
ym223
2
890
testingを眺める
matumoto
1
140
基礎から学ぶ大画面対応(Learning Large-Screen Support from the Ground Up)
tomoya0x00
0
3.3k
アセットのコンパイルについて
ojun9
0
130
rage against annotate_predecessor
junk0612
0
170
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
250
個人開発で徳島大学生60%以上の心を掴んだアプリ、そして手放した話
akidon0000
1
140
Featured
See All Featured
Six Lessons from altMBA
skipperchong
28
4k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Into the Great Unknown - MozCon
thekraken
40
2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Thoughts on Productivity
jonyablonski
70
4.8k
Transcript
!"
!"
FRANCESCO PERROTTI-GARCIA IOS DEVELOPER @FPG1503
>!<
⌚"#$
!"#$%
EMOJI
UNICODE
CONSORTIUM
90S !
+1000 EMOJI!
ZWJ
ZERO WIDTH-JOINER
OLYMPICS RINGS
DIVERSITY
GENDER EQUALITY
FITZPATRICK MODIFIER
YOU CAN REQUEST YOUR OWN EMOJI!
UNICODE 10.0 (2017)
WHY WOULD I CODE IN EMOJI?
!✨
!"
???
GITHUB
GITHUB.COM/EMOJICODE
!!
BASIC TYPES
S PACKAGE
VALUE TYPES
NUMERIC TYPES
!"
>>!
> ! can represent any integer in the interval .
>>!
> ! can be used to store a real number
with the common limitations.
BOOLEAN
>>!
!"
! emojicodeIsTheFunniestLanguage " ! phpIsAsCool #
SYMBOLS
>>!
! blue_heart "#
CLASSES
>>!
STRING
>>!
ORDERED MUTABLE COLLECTION
>>!
ERROR
>>!
INTERFACE TO BINARY DATA
>>!
DICTIONARY
>>⏩
RANGE
>>!
OPERATING SYSTEM INTERACTION
>>!
THREAD
>>!
MUTEX
PROTOCOLS
!!!
OUR FIRST PROGRAM
THE ! BLOCK
! ➡ # $ % Our first program & 0
% Return a code here. '
! " # Yaay! Much simpler $ %
! " # $Hello, EmojiCode.$ %
>>!
>>!
CONTROL FLOW
LOOPS
!"
>>!
! variable value " #
!AND ⏩
>>!
! expression " #
EXECUTES WHILE expression IS !
CONDITIONALS
!"#
>>!
! boolean " #
EXECUTES IF !EVALUATES TO "
>>▶
▶ a b
a > b
PREFIX!
! ▶ a b # $ %a is bigger b%
&
>>!
>>!
!a b
a == b
>>!
COMPARE ADDRESS
! "Strawberries" "Strawberries" #$ ! %"Straw" "berries"% "Strawberries" #&
IN DOUBT? USE !
! ▶ a b # $ %a is bigger b%
& ' ( a b # $ %a equal to b% &
>>!
! " # $a is smaller than b$ %
! ▶ a b # $ %a is bigger b%
& ' ( a b # $ %a equal to b% & ) # $ %a is smaller than b% &
>>!
LET'S CREATE THE ! "!!!
! " # $
>>!
INITIALIZER
!"#$
>>!
! INSTANCE "#$
!"
>>!
VARIABLE
>>!
FROZEN VARIABLE
! INSTANCE "#$
TYPE INFERENCE
!!
FUNCTIONS
!"N #➡#
!⬅n 1# $n % $ ➕'(➖n 1 '(➖n 2
! ➕#$➖N 1 #$➖N 2
>>!
RETURN
➕"#➖N 1 "#➖N 2
(!"➖n 1) + (!"➖n 2)
(fib(n - 1))+(fib(n - 2))
fib(n-1) + fib(n-2)
(fib(n - 1))+(fib(n - 2))
(!"➖n 1) + (!"➖n 2)
➕"#➖N 1 "#➖N 2
! ➕#$➖N 1 #$➖N 2
!⬅n 1# $n % $ ➕'(➖n 1 '(➖n 2
>>!
>>! SELF, THIS
! instance "#$
!i 0
! ◀i 100 # $
! ◀i 100 # $i %
INCREMENT AND DECREMENT
!"
>>! INCREMENT
>> ! DECREMENT
!"#$instance i 10
! ◀i 100 # $%&'instance i 10 (i )
FIBONACCI MINIFIED
!"#$%#&'(v )➡) #+⬅v 1#-v&-➕( /➖v 1(/➖v 2& !'1➡)#2f3"% 2i 04◀i
100#637 )(f i 108i&-0&&
COMMENTS
! This comment ends at the end of the line.
Exactly here
! This is a multiline comment. You can even make
line breaks. !
➕"#
VALUE TYPES
GENERICS
CALLABLES
THREADS
METATYPES
TYPE INFERENCE
REFLECTION
None
OTHER PACKAGES
FILES
SDL
SOCKETS
ECPM
THANKS!
Q&A?
!"#
GITHUB.COM/FPG1503/EMOJICODETALK
EMOJICODE.ORG
@FPG1503
!"