Hola Pancho,

Bueno, en el ST/80 original, se usaba la flecha (pero en el sentido
opuesto) y en el Squeak, no hasta hace mucho, usábamos el _ que se
mostraba en pantalla como una flecha.

La diferencia es el sentido de la flecha, en ST/80 era así:

        | a temp |
        temp <- a.
        a <- [EMAIL PROTECTED]
        temp = a
        
También leí por ahí, que los dos-puntos (:), indican el "flujo" de los
objetos... es como el lugar por donde "entran" los objetos, mejor veamos
un ejemplo:

        receiver foo: 1. "el 1 viaja desde el mensaje al receptor"
        collection do: [:each | ]. "el each se 'llena' desde el
        receptor"
        
Eso explica porque los : en los keywords van al final, y en las
argumentos de bloque van al principio.

Saludos,

-- Diego

> Ayer Esteban (alias Maringa) me dejo pensando con un problemita. A que
> evalua la siguiente expresion?
> 
>     | a temp |
>     temp := a.
>     a := [EMAIL PROTECTED]
>     temp = a
> 
> Si uno piensa en variables, entonces esperaria que retornara "true". La
> logica es que las dos variables apuntan a la misma cosa y por ende,
> cuando "leamos su contenido" obtengamos el mismo valor.
> 
> Pero la expresion retorna "false" en todos los Smalltalk. Y esta bien
> que asi sea.
> 
> El problema es que las variables no existen en Smalltalk. Una variable
> es en realidad un nombre, tag o alias que se utiliza para referenciar a
> un objeto. En el parse tree, VariableNode deberia llamarse AliasNode y
> AssignmentNode deberia llamarse AliasingNode.
> 
> Ahora entiendo bien porque Leandro Caniglia habia cambiado el font del
> caracter de asignacion en los MorphicWrappers. (En Squeak se usa el
> caracter $_ para asignar y font normal de Squeak lo muestra como una
> flechita asi '<-' )
> 
> Con esta nueva sintaxis queda mas claro lo que esta pasando:
> 
>     | a temp |
>     temp -> a.
>     a -> [EMAIL PROTECTED]
>     temp = a
> 
> Que les parece? Valdria la pena modificar la sintaxis de Smalltalk?
> 
> Saludos,
> Pancho



--~--~---------~--~----~------------~-------~--~----~
  Ha recibido este mensaje porque está suscrito a Grupo "clubSmalltalk" de 
Grupos de Google.
 Si quieres publicar en este grupo, envía un mensaje de correo 
electrónico a [email protected]
 Para anular la suscripción a este grupo, envíe un mensaje a [EMAIL PROTECTED]
 Para obtener más opciones, visita este grupo en 
http://groups-beta.google.com/group/clubSmalltalk?hl=es.

-~----------~----~----~----~------~----~------~--~---

Responder a