aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ast/ast.go10
-rw-r--r--evaluator/macro_expansion.go4
-rw-r--r--object/object.go8
-rw-r--r--parser/parser.go6
4 files changed, 13 insertions, 15 deletions
diff --git a/ast/ast.go b/ast/ast.go
index 4108d14..2d78039 100644
--- a/ast/ast.go
+++ b/ast/ast.go
@@ -227,7 +227,7 @@ func (fl *FunctionLiteral) TokenLiteral() string { return fl.Token.Literal }
func (fl *FunctionLiteral) String() string {
var out strings.Builder
- params := []string{}
+ var params []string
for _, p := range fl.Parameters {
params = append(params, p.String())
}
@@ -252,7 +252,7 @@ func (ce *CallExpression) TokenLiteral() string { return ce.Token.Literal }
func (ce *CallExpression) String() string {
var out strings.Builder
- args := []string{}
+ var args []string
for _, a := range ce.Arguments {
args = append(args, a.String())
}
@@ -284,7 +284,7 @@ func (al *ArrayLiteral) TokenLiteral() string { return al.Token.Literal }
func (al *ArrayLiteral) String() string {
var out strings.Builder
- elements := []string{}
+ var elements []string
for _, el := range al.Elements {
elements = append(elements, el.String())
}
@@ -326,7 +326,7 @@ func (hl *HashLiteral) TokenLiteral() string { return hl.Token.Literal }
func (hl *HashLiteral) String() string {
var out strings.Builder
- pairs := []string{}
+ var pairs []string
for key, value := range hl.Pairs {
pairs = append(pairs, key.String()+":"+value.String())
}
@@ -349,7 +349,7 @@ func (ml *MacroLiteral) TokenLiteral() string { return ml.Token.Literal }
func (ml *MacroLiteral) String() string {
var out strings.Builder
- params := []string{}
+ var params []string
for _, p := range ml.Parameters {
params = append(params, p.String())
}
diff --git a/evaluator/macro_expansion.go b/evaluator/macro_expansion.go
index 98fce8c..21d3dcb 100644
--- a/evaluator/macro_expansion.go
+++ b/evaluator/macro_expansion.go
@@ -6,7 +6,7 @@ import (
)
func DefineMacros(program *ast.Program, env *object.Environment) {
- definitions := []int{}
+ var definitions []int
for i, statement := range program.Statements {
if isMacroDefinition(statement) {
@@ -93,7 +93,7 @@ func isMacroCall(exp *ast.CallExpression, env *object.Environment) (*object.Macr
}
func quoteArgs(exp *ast.CallExpression) []*object.Quote {
- args := []*object.Quote{}
+ var args []*object.Quote
for _, a := range exp.Arguments {
args = append(args, &object.Quote{Node: a})
diff --git a/object/object.go b/object/object.go
index 4dc974b..9ef0687 100644
--- a/object/object.go
+++ b/object/object.go
@@ -100,7 +100,7 @@ func (f *Function) Type() ObjectType { return FUNCTION }
func (f *Function) Inspect() string {
var out strings.Builder
- params := []string{}
+ var params []string
for _, p := range f.Parameters {
params = append(params, p.String())
}
@@ -143,7 +143,7 @@ func (ao *Array) Type() ObjectType { return ARRAY }
func (ao *Array) Inspect() string {
var out strings.Builder
- elements := []string{}
+ var elements []string
for _, e := range ao.Elements {
elements = append(elements, e.Inspect())
}
@@ -168,7 +168,7 @@ func (h *Hash) Type() ObjectType { return HASH }
func (h *Hash) Inspect() string {
var out strings.Builder
- pairs := []string{}
+ var pairs []string
for _, pair := range h.Pairs {
pairs = append(pairs, fmt.Sprintf("%s: %s",
pair.Key.Inspect(), pair.Value.Inspect()))
@@ -200,7 +200,7 @@ func (m *Macro) Type() ObjectType { return MACRO }
func (m *Macro) Inspect() string {
var out strings.Builder
- params := []string{}
+ var params []string
for _, p := range m.Parameters {
params = append(params, p.String())
}
diff --git a/parser/parser.go b/parser/parser.go
index fb113e3..6303cb8 100644
--- a/parser/parser.go
+++ b/parser/parser.go
@@ -128,7 +128,6 @@ func (p *Parser) noPrefixParseFnError(t token.TokenType) {
func (p *Parser) ParseProgram() *ast.Program {
program := &ast.Program{}
- program.Statements = []ast.Statement{}
for !p.curTokenIs(token.EOF) {
stmt := p.parseStatement()
@@ -341,7 +340,6 @@ func (p *Parser) parseIfExpression() ast.Expression {
func (p *Parser) parseBlockStatement() *ast.BlockStatement {
block := &ast.BlockStatement{Token: p.curToken}
- block.Statements = []ast.Statement{}
p.nextToken()
@@ -375,7 +373,7 @@ func (p *Parser) parseFunctionLiteral() ast.Expression {
}
func (p *Parser) parseFunctionParameters() []*ast.Identifier {
- identifiers := []*ast.Identifier{}
+ var identifiers []*ast.Identifier
if p.peekTokenIs(token.RPAREN) {
p.nextToken()
@@ -408,7 +406,7 @@ func (p *Parser) parseCallExpression(function ast.Expression) ast.Expression {
}
func (p *Parser) parseExpressionList(end token.TokenType) []ast.Expression {
- list := []ast.Expression{}
+ var list []ast.Expression
if p.peekTokenIs(end) {
p.nextToken()