Dylan Baker
296e94f25a
Add .DS_Store and .oslo files to gitignore
I keep test .oslo files around and I hate not
having a clean repo.
6 gadus atpakaļ
Dylan Baker
681a88a755
Clean up unused stuff
6 gadus atpakaļ
Dylan Baker
a3e6a6df66
Move list of selfclosing tags into its own module
6 gadus atpakaļ
Dylan Baker
60c6d9a24a
Don't include ="" for attributes with empty string
6 gadus atpakaļ
Dylan Baker
20ab139ca7
Add doctype to list of self closing tags
I added upper and lowercase because that seemed
preferable to always casting every html function
name to lowercase.
6 gadus atpakaļ
Dylan Baker
f77ad26a69
Allow empty strings
6 gadus atpakaļ
Dylan Baker
581c99f794
Rewrite AST and compiler to be more normal
6 gadus atpakaļ
Dylan Baker
c7c40f7df7
Implement number and boolean types
6 gadus atpakaļ
Dylan Baker
64e2ab8eb0
Implement some very basic error handling
It's a little hacky and not very clean but it's
working for now.
6 gadus atpakaļ
Dylan Baker
802884b135
Runn prettier
6 gadus atpakaļ
Dylan Baker
31f584d688
Allow for self-closing tags
6 gadus atpakaļ
Dylan Baker
ebae8a3536
Rework main parser logic
The way that we were doing it before was going to
make it very difficult to implement any sort of
error handling or extension to the language.
6 gadus atpakaļ
Dylan Baker
d82d4ed612
Don't wrap eaches in an empty function call node
Because I was assuming that every expression
started with a literal, calls to `each` were
getting wrapped by a functionCall node with no
functionName, which was subsequently ignored by
the compiler. This removes all of that uselessness
6 gadus atpakaļ
Dylan Baker
ebc21f694d
Redo map as each, still playing with the syntax
6 gadus atpakaļ
Dylan Baker
db64e79472
Implement mapping
6 gadus atpakaļ
Dylan Baker
c9c2e34940
Check for blank cli arguments
6 gadus atpakaļ
Dylan Baker
d46f25c589
Run prettier
6 gadus atpakaļ
Dylan Baker
d60e736fec
Allow using special characters in literals
6 gadus atpakaļ
Dylan Baker
4ae6bd884b
Implement CLI
6 gadus atpakaļ
Dylan Baker
69dc0975d0
Manage the whitespace produced by the compiler
6 gadus atpakaļ
Dylan Baker
564b4808e9
Allow using variables as attribute values
6 gadus atpakaļ
Dylan Baker
ef0845237f
Allow whitespace while between quotes
What was happening was that spaces were allowed in
all literals to account for quoted strings, but
this meant that two identifiers in a row would get
parsed as a single literal. This commit sets a
flag to allow whitespace in literals when a quote
is encountered and then unsets that flag at the
next quote.
6 gadus atpakaļ
Dylan Baker
709986560e
First try at the compiler
No variables or conditionals or anything yet, just
the basic ability to turn s-expressions into HTML.
6 gadus atpakaļ
Dylan Baker
f7d7e9f46f
Fix up some stuff and add a test for parser
7 gadus atpakaļ
Dylan Baker
a6b691807d
Handle nested expressions
7 gadus atpakaļ
Dylan Baker
0bd9afe74b
Fix broken lexer test
7 gadus atpakaļ
Dylan Baker
d746573773
Fix lexer
7 gadus atpakaļ
Dylan Baker
bdf7527409
WIP Parser
7 gadus atpakaļ
Dylan Baker
5c8194cc44
Package lock
7 gadus atpakaļ
Dylan Baker
fdee6a6367
Use classes after all
7 gadus atpakaļ
Dylan Baker
22512cf334
Somehow I wasn't initializing variables?
7 gadus atpakaļ
Dylan Baker
cd6eccabb1
Update prettier config
7 gadus atpakaļ
Dylan Baker
190d19a7a1
Initial commit
7 gadus atpakaļ