[plt-dev] make eval namespace argument mandatory

From: Ryan Culpepper (ryanc at ccs.neu.edu)
Date: Wed Mar 17 17:48:55 EDT 2010

For racket, I propose we make the namespace argument to the 'eval' 
function mandatory. It's currently optional, and one-arg 'eval' is an 
attractive nuisance. If programmers have to specify the evaluation 
context---especially if they have to read up on namespaces to figure out 
how to get one---they are less likely to expect magical behavior from 
one-arg 'eval'.

For scheme, I think we should leave it alone but perhaps mark it as 
deprecated in the docs.

The same argument could in principle be made for anything that 
implicitly uses (current-namespace), but I think 'eval' is by far the 
largest source of problems.

Ryan


Posted on the dev mailing list.