﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	difficulty
1354	Clean up the expander a bit	sjamaan	sjamaan	"Currently the expander is full of hooks and hacks, mostly for maintaining the line number database and various syntactic environments.  It would be nice if we can clean things up a bit. A few ideas:

* {{{##sys#syntax-context}}} and {{{##sys#syntax-error/context}}} are weird and can maybe be cleaned up if we can make {{{##sys#check-syntax}}} work better with line number info.
* {{{##sys#syntax-error-culprit}}} seems to be unnecessary, because while expanding {{{##sys#check-syntax}}} should have access to the input form already?
* {{{##sys#line-number-database}}} is defined in expander, but only really used in {{{core.scm}}} (except for getting the line number)
* The new {{{expansion-result-hook}}} is yet another hook, and can perhaps be combined with the previous two.
* The special-cased hack in {{{##sys#canonicalize-body}}} that prevents expansion of {{{import}}} and hands back control to the compiler after expansion of {{{##core#module}}}) (in a currently pending patch) needs to die. No clue yet how to do this..."	task	new	minor	6.0.0	expander	5.0.0		expander		hard
