>> Racket is call-by-value. Period. Always. -- Matthias

On Thu, Oct 21, 2010 at 6:38 PM, Shriram Krishnamurthi <s...@cs.brown.edu> 
wrote:
> There is a variation on what Matthias said, which is when you need a
> shared structure whose value changes but whose representation may
> contain immutable constants.

I disagree.  `Call-by-value' is a statement about the way procedure
parameters (variables) are handled.  It is *not* a statement about
`values'.

Matthias is stating that if you have this code:
    (let ((a b))
      (F a b)
      (eq? a b))
then there is no procedure F that can make this fragment return false.
This has nothing to do with the any values that a and b may take on.

-- 
~jrm
_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/users

Reply via email to