Re: Expressions versus the value they represent

From: David BL <davidbl_at_iinet.net.au>
Date: Fri, 16 Apr 2010 19:51:58 -0700 (PDT)
Message-ID: <1f7e2ffc-18fa-4ba4-98c3-27d0db1f98a5_at_8g2000yqz.googlegroups.com>


On Apr 17, 8:14 am, paul c <toledobythe..._at_oohay.ac> wrote:
> David BL wrote:
>
> ...
>
>
>
>
>
> > Below 'variable' is restricted to something that can be accessed by
> > imperative statements, and not to be confused with a FOL variable.
>
> > I don't say a variable points at a value. I say a variable *holds* a
> > value. I restrict my usage of the word "pointer" to mean a *value*
> > that represents an address or you could say an identifier for a
> > variable. So a pointer points at a variable, not directly at a
> > value.
>
> > E.g. In C++
>
> > int x = 10;
> > int* p = &x;
>
> > x is not a pointer. x is a variable that holds the value 10. p is a
> > pointer variable that holds a pointer value. The pointer value points
> > at the variable named x. There is no concept of a pointer value that
> > points at the value 10. I don't understand what that could mean.
> > Note that C++ outlaws the expression &10.
>
> What has C++ got to do with any algebraic language? What does
> assignment have to do with any algebraic language?

Nothing, as also "pointer" has nothing to do with any algebraic language.

My interpretation of the conversation is:

  1. As far as RA being a pure algebra is concerned I incorrectly stated that R1,R2,R3 were relvar names. I acknowledged that in a subsequent post where I instead suggested R1,R2,R3 represent FOL function symbols or else FOL variables. In the case that they are function symbols, it can be the case that the intention is for them to be given the current values of the physical database relvars of the same name under interpretation.
  2. You corrected me, but in doing so incorrectly claimed that relvars are pointers, when really they are just assignable variables that hold relation values in the context of an imperative language.
  3. I proceeded to talk about what "pointer" means (a value that identifies a variable in the context of an imperative language).
  4. You appear to think incorrectly that I'm talking about pointers in the context of an algebra.

> (Regarding C++ I would say a more apt comparison with algebra symbols
> would be "const int x = 10;").

I wasn't making any comparison with algebra symbols. Received on Sat Apr 17 2010 - 04:51:58 CEST

Original text of this message