add a standard library, and introduce formed imports (import std "myfile.pork")

This commit is contained in:
2023-09-06 21:39:57 -07:00
parent f31e12df89
commit 0e4362eefb
18 changed files with 153 additions and 32 deletions

View File

@ -183,7 +183,11 @@ class Parser(source: PeekableSource<Token>, val attribution: NodeAttribution) {
private fun readImportDeclaration(): ImportDeclaration = within {
expect(TokenType.Import)
ImportDeclaration(readStringLiteral())
var form: Symbol? = null
if (peek(TokenType.Symbol)) {
form = readSymbolRaw()
}
ImportDeclaration(form, readStringLiteral())
}
private fun readFunctionDeclaration(): FunctionDefinition = within {