2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
Infoshare attendee!
2020 @phenomnominal
(School of Witchcraft and Wizardry)
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
But there's a problem...
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
(this is 100% canon, don't look it up)
2020 @phenomnominal
2020 @phenomnominal
<~
sss
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
~>
2020 @phenomnominal
sssCast
alert
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
(the darkest of the dark arts)
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
(aka transfiguration)
2020 @phenomnominal
"Transpiling is a specific term for taking source code written in one language and transforming into another language that has a similar level of abstraction"
2020 @phenomnominal
String literal
Function call
Identifier
Expression
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
disassociated from any specific instance
the way in which linguistic elements are put together
data structure made up of vertices and edges without any cycles
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
a data structure that represents the structure of code, without any actual syntax.
2020 @phenomnominal
a data structure that represents the structure of code, without any actual syntax.
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
Esprima takes code written in a specific language (JavaScript) and turns it into an AST!
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
"Lexing is the process of breaking down source code into words that are relevant to the language, which are called tokens"
2020 @phenomnominal
Identifier
Keyword
Literal - bool, null, number, string
Punctuator
EOF
RegularExpression
Template
(we're getting a bit intense now - here's an owl)
2020 @phenomnominal
Identifier
Keyword
Literal - bool, null, number, string
Punctuator
EOF
Indent
LineTerminator
Space
(we're getting a bit intense now - here's an owl)
2020 @phenomnominal
Identifier characters
Space
Punctuator characters
Space
Quote character
Punctuator
Punctuator
String characters
Quote character
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
"Parsing is the process of taking the lexical tokens and applying the grammar of the language to them"
2020 @phenomnominal
Identifier
Space
Punctuator -
Space
String literal
<~
2020 @phenomnominal
Identifier
Space
Punctuator -
Identifier
Punctuator -
Space
Identifier
Punctuator -
Line Terminator
Indent
[
,
]
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
2020 @phenomnominal
Me: Craig
Twitter: @phenomnominal