When a variable is assigned the empty symbol, looking up the variable
results in an error message that looks like a function call:

> foo <- as.list(lm)$data
> ls()
[1] "foo"
> foo
Error: argument "foo" is missing, with no default
> get("foo")
Error in get("foo") : argument "foo" is missing, with no default
> rm("foo")

I ran into this problem when writing a function to serialize functions by
their list representation, e.g. as.list(lm). It is quite hard to debug
because of the confusing error message. I would have expected that:

  foo == substitute()

just like

  as.list(lm)$data == substitute()

Is this intended behaviour?

	[[alternative HTML version deleted]]

