Re: will someone explain the behavior of Unevaluated in this example?

• To: mathgroup at smc.vnet.net
• Subject: [mg71435] Re: will someone explain the behavior of Unevaluated in this example?
• From: "Chris Chiasson" <chris at chiasson.name>
• Date: Sat, 18 Nov 2006 04:41:06 -0500 (EST)
• References: <acbec1a40611180027m5fb197b9hcb414978770ca4ef@mail.gmail.com>

```this expression should, imho, produce an error or False

Block[{names,Unevaluated},Unevaluated[names["1","0"]]===names["1","0"]]

but it produces True

On 11/18/06, Chris Chiasson <chris at chiasson.name> wrote:
> sorry, that second one should be:
>
> Block[{q = 5, f, g}, {Module[{f =
>     Unevaluated[q], g}, g =
>       Block[{Unevaluated}, First@f]; f === g], Unevaluated[q] === q}]
>
> (and it still produces {False, False})
>
> also, I have a similar expression in some code, and a TracePrint on it
> contains this:
>
> Unevaluated[names["1", "0"]] === names["1", "0"]
>
> with the _next line_ saying False
>
> (even though Unevaluated and SameQ aren't Blocked and names isn't
> Blocked, but doesn't have a value) (afaik)
>
> On 11/18/06, Chris Chiasson <chris at chiasson.name> wrote:
> > Block[{q = 5, f, g}, {Module[{f =
> >     Unevaluated[q], g}, g = Evaluate@f; f === g], Unevaluated[q] === q}]
> >
> > gives {True,False}, which is unexpected (by myself)
> >
> > Block[{q = 5, f, g}, {Module[{f = Unevaluated[q], g},
> >     g = Block[{Unevaluated}, f]; f === g], Unevaluated[q] === q}]
> >
> > gives {False,False}, as expected
> >
> > --
> > http://chris.chiasson.name/
> >
>
>
> --
> http://chris.chiasson.name/
>

--
http://chris.chiasson.name/

```

• Prev by Date: Re: Patterns_ to define linear operators?
• Next by Date: Integrate failure
• Previous by thread: Re: will someone explain the behavior of Unevaluated in this example?
• Next by thread: Re: Re: will someone explain the behavior of Unevaluated in this example?