Entrar
¿Nuevo usuario? Inscribirme
smalltalking · Un lugar para el estudio y desarrollo de Ambientes de Objetos virtuales.
? ¿Ya estás suscrito? Entra a Yahoo!

Consejos

¿Sabías que...?
Podés cambiar el orden de los mensajes. Simplemente hacé clic en el enlace de columna fecha. Tus preferencias se guardarán, por lo tanto no necesitarás hacerlo otra vez cuando vuelvas a entrar.

Mensajes

  Mensajes Ayuda
Avanzado
Mensajes 14750 - 14779 de 17190   Más reciente  |  < Más reciente  |  Más antiguo >  |  Más antiguo
Mensajes: Mostrar resúmenes de los mensajes   (Agrupar por tema) Clasificar por fecha v  
#14779 De: kikote gregoris <kikogregoris@...>
Fecha: Mar, 2 de May, 2006 1:59 pm
Asunto: fromAddress, fromBytes ???? y algo mas
kikogregoris
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola
 
Quería saber si una ExternalAddress de Vs es igual a un puntero.
Esto lo pregunto ya que en MT no existe ExternalAddress y si Pointer.
 
Estaba teniendo problemas para usar algunas funciones de genesis3d debido a que estaba construyendo las estructuras con el mensaje #fromBytes:,   al pasarle la estructura la función no restornaba nada o fallaba en el peor de los casos.
Luego probé el mensaje #fromAddress: lo cual resulto siendo lo que necesitaba.
De todas maneras quería saber cual es la diferencia entre un mensaje y otro, aparte de que uno retorna un puntero y otro un entero.
Por que existe uno y otro, un puntero no es mas que un numero que indica una dirección  de memoria, lo cual no es lo mismo que un entero.?????????
Los comentario es uno y otro ST son identicos.
 
Por ultimo quería saber cual es el propósito del mensaje #species, algo muy curioso es que en MT este mensaje esta implementado en 5 lugares y no esta en Object como yo esperaba, ya que en VS si esta en Object.
 
Saludos kiko

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


#14778 De: "Francisco A. Lizarralde" <st_easy_rider@...>
Fecha: Mié, 26 de Abr, 2006 12:28 pm
Asunto: Re: [objetos] Dolphin + Active-X
st_easy_rider
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola Mariano,
Te contesto la segunda pregunta, ya que la primera es también un
misterio para mí.
Hay un package de Didier Besset para Dolphin que implementa un amplio
conjunto de métodos numéricos. Lo podés bajar de:

http://sourceforge.net/project/showfiles.php?group_id=53783&package_id=50421

Saludos,

Francisco

El mar, 25-04-2006 a las 19:47 -0300, mariano ll escribió:
> Hace unos días escribí con respecto a unas dudas que tengo. Estoy
> experimentando con dolphin unos trabajos de simulación (la clásica
> pelotita q rebota, los tanques q se llenan, etc. J.). El problema es
> que no encuentro la manera de realizar gráficos estadísticos con los
> resultados que obtengo ni como derivar, integrar ni resolver
> ecuaciones diferenciales (aunque sea con algún método). En la
> actualidad heche teclas a mi vicios de programador estructurado y pude
> realizar un método (de unas 20 líneas) que me resuelva el problema de
> resolver las ecuaciones. Me han recomendado bajar unas aplicaciones
> (con respecto de la parte de gráficos solamente) pero el problema es
> que desconozco como trabajar con active-x. Mi preguntas serian:
>      1. ¿Cómo hago para conectar mi ambiente a una aplicación mediante
>         active-x?.
>      2. ¿Existe alguna clase en el ambiente para calcular ecuaciones
>         diferenciales?.
>
> Gracias por su ayuda!.
> Mariano.
>
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
>
> Para más información sobre la Asociación escribir a
> info@...
>
> Smalltalking es un espacio colaborativo creado para el estudio y
> desarrollo en Ambientes de Objetos.
> Se sustenta gracias a la participación de sus socios.
>
> Las reglas de etiqueta sobre la lista están en
> http://www.smalltalking.net/join/netiquete.htm
>
>
>
>
>
>
> ______________________________________________________________________
> Enlaces de Yahoo! Grupos
>       * Para visitar el sitio web del grupo, andá a:
>         http://ar.groups.yahoo.com/group/smalltalking/
>
>       * Para cancelar tu suscripción a este grupo, enviá un mensaje a:
>         smalltalking-unsubscribe@...
>
>       * El uso de Yahoo! Grupos está sujeto a las Condiciones del
>         servicio de Yahoo!.
>

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar

#14777 De: mariano ll <malo_gabi1@...>
Fecha: Mar, 25 de Abr, 2006 10:47 pm
Asunto: Dolphin + Active-X
malo_gabi1
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hace unos días escribí con respecto a unas dudas que tengo. Estoy experimentando con dolphin unos trabajos de simulación (la clásica pelotita q rebota, los tanques q se llenan, etc. J.). El problema es que no encuentro la manera de realizar gráficos estadísticos con los resultados que obtengo ni como derivar, integrar ni resolver ecuaciones diferenciales (aunque sea con algún método). En la actualidad heche teclas a mi vicios de programador estructurado y pude realizar un método (de unas 20 líneas) que me resuelva el problema de resolver las ecuaciones. Me han recomendado bajar unas aplicaciones (con respecto de la parte de gráficos solamente) pero el problema es que desconozco como trabajar con active-x. Mi preguntas serian:
  1. ¿Cómo hago para conectar mi ambiente a una aplicación mediante active-x?.
  2. ¿Existe alguna clase en el ambiente para calcular ecuaciones diferenciales?.
 
Gracias por su ayuda!.
Mariano.
 

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


#14776 De: "Alejandro F. Reimondo" <aleReimondo@...>
Fecha: Mar, 25 de Abr, 2006 5:56 pm
Asunto: Re: [objetos] Consulta Genesis3d
alereimondo
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola,

>   Alguna pista de por que pasa esto.
no.

>   Otra cosa vos le pasas como segundo argumento nil, por que ¿?.
Fijate en la especificacion de la API, vas a ver que esa funcion
  se usa para iterar en los drivers... con nil le decis que te
  de el primero...

>   En MT no se puede pasar nil a un API.
El nil es cero...

hasta pronto,
Ale.



----- Original Message -----
From: "kikote gregoris" <kikogregoris@...>
To: <smalltalking@...>
Sent: Tuesday, April 25, 2006 11:48 AM
Subject: [objetos] Consulta Genesis3d


> Hola Ale
>
>   Después de crear el motor e inicializar el SystemDriver, quiero obtener
los driver correspondientes, pero al usar esta API:
>
>
>   GENESISAPI geDriver
*geDriver_SystemGetNextDriver(geDriver_System *DriverSystem, geDriver
*Start);
>
>   Me retorna 0  lo cual no sucede en tu implementación la cual retorna una
dirección de memoria.
>
>   Yo saque los driver del home de VS para ver que pasaba y ocurría que
retornaba un 0.
>   Estoy suponiendo que no esta encontrando los drivers .
>   Pero la inicialización del motor y el SystemDriver aparentemente están
OK.
>   Alguna pista de por que pasa esto.
>   Otra cosa vos le pasas como segundo argumento nil, por que ¿?.
>   En MT no se puede pasar nil a un API.
>
>   Saludos kiko
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar

#14775 De: "Alejandro F. Reimondo" <aleReimondo@...>
Fecha: Mar, 25 de Abr, 2006 5:52 pm
Asunto: Re: [objetos] Consulta
alereimondo
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola,
>   O debería ir a Project \ Settings e ir a la pestaña Debug ??.
Si.
Usando el proyecto de la librería debes colocar la opción
  de debug para que cargue el ejecutable que te arranca
  el ambiente que estas usando.

Espero no te quemes "las pestañas",
  en especial la de Debug :-)

suerte,
Ale.

----- Original Message -----
From: "kikote gregoris" <kikogregoris@...>
To: <smalltalking@...>
Sent: Tuesday, April 25, 2006 11:40 AM
Subject: Re: [objetos] Consulta


> Hola ALe
>
>   Estoy complicado con el tema ya que no se mucho de VC ++ y no se cual
proyecto debo cargar .
>
>   Supongo que es el GenesisDLL.dsw que en terminos de VC++ es un workspace
y no tengo idea de que signifique en este contexto.
>   No creo que sea lo mismo que para un St.
>   Podria decirme algo mas preciso sobre cual es el proyecto a cargar.
>   Luego de esto deberia ir a Build\Start Debug\ attach to process y
enganchar al MT ??.
>   O deberia ir a Project \ Settings e ir a la pestaña Debug ??.
>
>   saludos kiko
>
>
>
> "Alejandro F. Reimondo" <aleReimondo@...> escribió:
>   Hola,
> Normalmente es simple...
> Abrí el proyecto de la librería que estás trabajando,
> configuralo para compilar en debug; y colocá
> en el ejecutable a debugear el arranque del ambiente.
> Antes de arrancar el debugger, pone algunos breakpoints
> en las llamadas que vas a verificar.
> Arranca el ambiente y asegurate que:
> 1.- se cargue desde el ambiente la versión de
> debugging de la libraría que estas usando (que sea el archivo
> que generó el compilador C)
> 2.- que efectivamente estés llamando a la función
> que pusiste el breakpoint.
> Si esta todo ok, al activarse el método API correspondiente
> a la función con el breakpoint deberás ver que se activa
> el debugger y podes trabajar a bajo nivel.
> hasta pronto,
> Ale.
>
>
>
> ----- Original Message -----
> From: "kikote gregoris" <kikogregoris@...>
> To: <smalltalking@...>
> Sent: Saturday, April 22, 2006 11:18 AM
> Subject: [objetos] Consulta
>
>
> > Hola
> >
> >   Queria usar el debug de VC++ para ver que pasa del lado de la libreria
> que estoy usando, esta es genesis.dll.
> >   Se que me lo explicaron alguna vez pero no encuentro dicho mail.
> >   Se que era facil, pero no me acuerdo.
> >   El ST es MT.
> >
> >   saludos kiko
> >
> > __________________________________________________
> > Correo Yahoo!
> > Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> > ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
>
>
>
> Para más información sobre la Asociación escribir a info@...
>
> Smalltalking es un espacio colaborativo creado para el estudio y
desarrollo en Ambientes de Objetos.
> Se sustenta gracias a la participación de sus socios.
>
> Las reglas de etiqueta sobre la lista están en
http://www.smalltalking.net/join/netiquete.htm
>
>
>
>
> ---------------------------------
>   Enlaces de Yahoo! Grupos
>
>    Para visitar el sitio web del grupo, andá a:
> http://ar.groups.yahoo.com/group/smalltalking/
>
>    Para cancelar tu suscripción a este grupo, enviá un mensaje a:
> smalltalking-unsubscribe@...
>
>    El uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de
Yahoo!.
>
>
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar

#14774 De: Guillermo Sapaya <gsapaya@...>
Fecha: Mar, 25 de Abr, 2006 2:19 pm
Asunto: Oportunidad laboral!
gsapaya
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola gente!
Les comento que en la empresa para la cual trabajo (InfOil S.A.) estamos
necesitando gente.
A grandes rasgos les comento que InfOil es una empresa desarrolladora de
software en la que se trabaja con Tecnología de Objetos
(específicamente, ambientes de objetos Smalltalk). Usamos como medios de
almacenamiento, bases de datos relacionales (en el 90% de los casos Oracle).
Actualmente estamos inmersos en una etapa de grandes cambios (los cuales
incluyen cambios tecnológicos como así también en la forma de trabajar).
Estamos experimentando trabajo en grupos mediante la práctica de algunas
técnicas de XP (Pair-Programming, TDD, etc).
Tenemos productos instalados en las compañías petroleras más importantes
de la Argentina sobre los cuales les estamos dando soporte hace ya
varios años.
Los conocimientos básicos que se necesitan para trabajar en InfOil son:

- Conocimiento de Ambientes de Objetos/Lenguajes Orientados a Objetos
(preferiblemente Smalltalk)
- Conocimiento y manejo fluido del lenguaje SQL
- Conocimiento sobre Bases de datos (preferiblemente Oracle)

Otras aptitudes que preferenciamos son:

- Capacidad de trabajo en grupo
- Predisposición para el trato con el cliente
- Ganas de aprender y crecer profesionalmente

Sabemos que no todos poseen una experiencia previa con las tecnologías
antes mencionadas (mas que nada con Smalltalk). Eso no quita que podamos
mantener una entrevista en la cual podamos charlar sobre la posibilidad
de trabajar en nuestra compañía capacitándose en las mismas.
A los que estén interesados les pido que por favor me manden su CV para
que podamos mantener una entrevista y ver si podemos llegar a un acuerdo
laboral.

Saludos!

--
Guillermo Sapaya
InfOil S.A.
Desarrollo de software
(54-11) 4315-7624 x142
gsapaya@...

#14773 De: kikote gregoris <kikogregoris@...>
Fecha: Mar, 25 de Abr, 2006 2:48 pm
Asunto: Consulta Genesis3d
kikogregoris
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola Ale
 
Después de crear el motor e inicializar el SystemDriver, quiero obtener los driver correspondientes, pero al usar esta API:
 
 
GENESISAPI geDriver                      *geDriver_SystemGetNextDriver(geDriver_System *DriverSystem, geDriver *Start);
 
Me retorna 0  lo cual no sucede en tu implementación la cual retorna una dirección de memoria.
 
Yo saque los driver del home de VS para ver que pasaba y ocurría que retornaba un 0.
Estoy suponiendo que no esta encontrando los drivers .
Pero la inicialización del motor y el SystemDriver aparentemente están OK.
Alguna pista de por que pasa esto.
Otra cosa vos le pasas como segundo argumento nil, por que ¿?.
En MT no se puede pasar nil a un API.
 
Saludos kiko

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


#14772 De: kikote gregoris <kikogregoris@...>
Fecha: Mar, 25 de Abr, 2006 2:40 pm
Asunto: Re: [objetos] Consulta
kikogregoris
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola ALe
 
Estoy complicado con el tema ya que no se mucho de VC ++ y no se cual proyecto debo cargar .
 
Supongo que es el GenesisDLL.dsw que en terminos de VC++ es un workspace y no tengo idea de que signifique en este contexto.
No creo que sea lo mismo que para un St.
Podria decirme algo mas preciso sobre cual es el proyecto a cargar.
Luego de esto deberia ir a Build\Start Debug\ attach to process y enganchar al MT ??.
O deberia ir a Project \ Settings e ir a la pestaña Debug ??.
 
saludos kiko
 

"Alejandro F. Reimondo" <aleReimondo@...> escribió:
Hola,
Normalmente es simple...
Abrí el proyecto de la librería que estás trabajando,
configuralo para compilar en debug; y colocá
en el ejecutable a debugear el arranque del ambiente.
Antes de arrancar el debugger, pone algunos breakpoints
en las llamadas que vas a verificar.
Arranca el ambiente y asegurate que:
1.- se cargue desde el ambiente la versión de
debugging de la libraría que estas usando (que sea el archivo
que generó el compilador C)
2.- que efectivamente estés llamando a la función
que pusiste el breakpoint.
Si esta todo ok, al activarse el método API correspondiente
a la función con el breakpoint deberás ver que se activa
el debugger y podes trabajar a bajo nivel.
hasta pronto,
Ale.



----- Original Message -----
From: "kikote gregoris" <kikogregoris@...>
To: <smalltalking@...>
Sent: Saturday, April 22, 2006 11:18 AM
Subject: [objetos] Consulta


> Hola
>
>   Queria usar el debug de VC++ para ver que pasa del lado de la libreria
que estoy usando, esta es genesis.dll.
>   Se que me lo explicaron alguna vez pero no encuentro dicho mail.
>   Se que era facil, pero no me acuerdo.
>   El ST es MT.
>
>   saludos kiko
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


#14771 De: "Darío Renzulli" <dario.renzulli@...>
Fecha: Lun, 24 de Abr, 2006 11:09 pm
Asunto: Re: [objetos] que tal, quiero liberar la memoria de proceso
dario_renzulli
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Eduardo,
 
Esa funcion setea el tamaño en memoria del proceso que le pasas (defragmentando la memoria), si no lo usas bien, podes tener problemas graves. Usalo solo en casos necesarios realmente, ya que, por lo menos en el GC de .NET, pagas un costo muy alto en el tiempo de proceso que te consume el GC en si.
A eso sumale que esta funcion no esta implementada en win 98 y ME, por lo que no haria nada cuando la llamas y tiene bugs en Windows 2000 y 2003 versiones server.
 
Si lo que queres es optimizar los procesos, yo primero buscaría por otro lado, y como ultima opcion usaria esta funcion.
 
Saludos,
 
D.
 
El día 24/04/06, Eduardo Rueda Sosa <edirue@...> escribió:
Que tal amigos
    'Declaración de la API
    Private Declare Auto Function SetProcessWorkingSetSize Lib
"kernel32.dll" (ByVal procHandle As IntPtr, ByVal min As Int32, ByVal max As
Int32) As Boolean

    'Funcion de liberacion de memoria
    Public Sub ClearMemory()

          Try
                Dim Mem As Process
                Mem = Process.GetCurrentProcess()
SetProcessWorkingSetSize( Mem.Handle, -1, -1)

          Catch ex As Exception
          'Control de errores
          End Try

    End Sub

encontre esta funcion pero no se que hace SetProcessWorkingSetSize en el
garbage collector alguno de uds a intentado hacer algo asi desde VB .net
gracias listeros




Para más información sobre la Asociación escribir a info@...

Smalltalking es un espacio colaborativo creado para el estudio y desarrollo en Ambientes de Objetos.
Se sustenta gracias a la participación de sus socios.

Las reglas de etiqueta sobre la lista están en http://www.smalltalking.net/join/netiquete.htm




Enlaces de Yahoo! Grupos


#14770 De: "Eduardo Rueda Sosa" <edirue@...>
Fecha: Lun, 24 de Abr, 2006 10:10 pm
Asunto: que tal, quiero liberar la memoria de proceso
vaneruedafe
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Que tal amigos
     ‘Declaración de la API
     Private Declare Auto Function SetProcessWorkingSetSize Lib
“kernel32.dll” (ByVal procHandle As IntPtr, ByVal min As Int32, ByVal max As
Int32) As Boolean

     ‘Funcion de liberacion de memoria
     Public Sub ClearMemory()

           Try
                 Dim Mem As Process
                 Mem = Process.GetCurrentProcess()
SetProcessWorkingSetSize(Mem.Handle, -1, -1)

           Catch ex As Exception
           ‘Control de errores
           End Try

     End Sub

encontre esta funcion pero no se que hace SetProcessWorkingSetSize en el
garbage collector alguno de uds a intentado hacer algo asi desde VB .net
gracias listeros

#14769 De: Hernan Wilkinson <hernan.wilkinson@...>
Fecha: Lun, 24 de Abr, 2006 1:49 pm
Asunto: Re: [Fwd: Re: [objetos] Modelos de Medidas y Fechas]
hernan_wilki...
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Alejandro F. Reimondo wrote:
Hola Hernán,
Se me hace difícil responderte sin usar solo unas frases de tu respuesta,
las que encuentro interesantes para motivar un diálogo y permitirles
conocer mis intereses sobre estos temas.
Ok, demosle para adelante nomas!
Medidas, fechas y monedas... ante todo quiero decirles
que el tema de mi interés es sobre "medición", y claro esta,
unidades de medición.
Su extensión a fechas y monedas no me atrae tanto porque
aprecio las diferencias que existen, tanto de carácter semántico
como histórico.
mmm... por donde empezar... :-)
En este último caso, como resultado de la experiencia
(de mediados/fines de 1999) se produjo el framework
de unidades que está en nuestra página de laboratorio
http://www.smalltalking.net/Lab/index.htm
y usé con bastante éxito para el modelo de fábrica
(en la misma página); que luego extendieron y usaron
otras personas de Smalltalking.
Si, yo recuerdo haberlo visto antes de hacer el nuestro. Nos fijamos
varios modelos pero decidimos hacer uno nosotros... la historia viene
mas o menos así:
Acá hacemos sistemas financieros, por lo tanto es importante modelar
cosas como "10 pesos", "20 dólares" ,etc. La cosa empezó por ahí, pero
después nos dimos cuenta que hablar de "10 pesos" conceptualmente es
similar a hablar de "10 días" o "20 metros" ,que estas entidades pueden
ser modeladas por el mismo concepto y ahí empezamos a ampliar el modelo
y pasarlo de algo financiero a algo mas genérico. Creo que quedo
bastante interesante.

Sobre este párrafo... dónde dice:
ser modeladas por el mismo concepto y ahí empezamos a ampliar el modelo
y pasarlo de algo financiero a algo mas genérico.

...de ser así sería una abstracción del modelo, es decir, estarías
construyendo un modelo de menos valor, al ser mas genérico.
Humm... no entiendo bien por que decis de menos valor... a nosotros nos resulto de mucho mas valor porque usamos las mismas abstracciones para medir tiempo, cantidad de dinero, etc. Desde ese punto de vista, el modelo tuyo mas valor agregado.

Me gustaría dialogar sobre las diferencias entre
"10 pesos", "1 semana" y "20 gramos"
la analogía, en mi opinión, comienza en la sintaxis...
y allí acaba. :-)
No se si acaba ahi, pero si estoy de acuerdo en que nosotros estamos usando la palabra "Medida" de una manera en la que por lo menos no estamos muy conformes. Por ejemplo, medida hace pensar solo en mediciones o cuestiones fisicas, en unidades fisicas, cuando esa no es la unica intencion del modelo.
Con este modelo tambien se pueden expresar resultados de conteo, por ejemplo, 3 manzanas, 5 autos, etc. ¿Son medidas?.... podria parecer que si, pero no lo son desde un punto de vista "fisico"....
En fin, es por eso que la clase Measure sublasifiva ArithmeticObject, de donde se ve que uno de los comportamientos principales que queresmos con estas abstracciones es poder tratarlas polimorficamentes con numeros en lo que respecta al protocolo aritmetico. Bajo ese punto de vista, no importa si son medidas, resultado de haber contado algo, etc.

Tanto en el sentido de los términos como en sus raíces
y contextos de uso no hay analogías; o, mejor dicho,
las analogías no son tan importantes como las diferencias.
A que voy?
Los contextos de uso, son muy distintos; tanto la moneda
como el tiempo son contextos informales/sociales;
mientras que las unidades se encuentran en un contexto técnico.
Creo que te estas sesgenado solo a unidades fisicas... seguramente se deba a la experiencia de haber hecho algo similar y la poca "expresividad" de los nombres que elegimos, pero el modelo que creamos no esta limitado a medidas fisicas (o unidades fisicas).... fijate que no impedimos hacer:
"(3 * metro) + (5 * litro)" lo cual no tiene ningun sentido desde el punto de vista de la fisica.
Sobre dólares y fechas... pongo solo unas reflexiones, que espero
compartan, sobre su utilidad e historia, pero solo me interesan
periféricamente, mi interés real esta en las unidades de medición.
Intentando se pueda entender porqué digo que son diferentes...
pongo algunos ejemplos.
En una transacción comercial, uno puede usar moneda...
si por la transacción se usan "10 pesos"
o "3 dólares + 20 centavosDeDolar"
no es lo mismo.
El verdadero valor de cambio NO esta fijado fuertemente por
un standard externo a la transacción; es decir, si es 3.12 dólares
o 4 dólares depende de las condiciones de negociación,
del momento en que se efectuó la transacción, etc.
Estoy de acuerdo, por eso los dolares y pesos no son "autoconvertibles" en nuestro modelo. Para ello hay que usar un "conversor"...
Si usan nuestro modelo, en realidad el dolar y el peso serian instancias de Currency, una abstraccion que no esta en aconcagua porque esta solo orientada el mundo financiero.... en ambos casos, dolar y peso tienen distintas BaseUnits por lo tanto no se pueden convertir automaticamente.
En ese punto, es dónde, según creo el sistema informático;
si contiene solo el valor de la transacción (y no su contexto
comercial) tiene el mismo valor que si guardara solo
"3.1234" (el numero).
no entendi esto...
Esto ultimo lo digo con toda ignorancia y despreocupación
sobre los temas financieros :-)
y allí es dónde quizás moleste a Hernán y otros... cuando
hablo de dinero sin saber del tema.
Epa!, no hay molestia para mi eh!... si escribi algo que sono agresivo o molesto perdon... estoy con poco tiempo y no releeo lo que escribo y trato de ser rapido.... creo que lo llaman stress no?
Con respecto al tiempo... encuentro algo similar.
El "valor" del tiempo no esta regido por algo material;
sino que esta fuera del tiempo en sí. (en esto es análogo al
dinero... pero solo en esto).
Cómo ejemplificarlo? nada mejor que citar la frase:
"la duración de un segundo depende de que
lado de la puerta del baño uno esté"
hasta en este rudo ejemplo se revela la importancia
del tiempo, que NO es un objeto; pues su sentido
está fuera de él.
Su valor está en el sufrimiento que implica su pasar.
Un sistema que atiende a la problemática temporal, es un
sistema sobre que se hace "en ese tiempo" y modelar
el tiempo como un objeto es, además de objetable,
sin compromiso con la problemática del dominio real.
Entiendo lo que decis, sin embargo para ciertos dominios el paso del tiempo si esta "prefijado"... claro ejemplo son los calendarios que toda civilizacion creo para poder ubicarse temporalmente. Nuestro modelo (chalten) modela el calendario Gregoriano, que es el utilizado en finanzas y no importa "en que lado de la puerta del baño uno este" ;-)   Un mes de interes es un mes de interes, no importa si pagas o cobras.
Sobre mediciones... aquí las cosas son muy distintas.
El tema tiene cientos (miles) de años de desarrollo.
Y por eso, creo que aquí no vale la reflexión:
No, puesto que la idea de Aconcagua termino siendo
hacer algo genérico,
no atado a ningún tipo de estándar o tipo de unidad.

Que revela un espíritu que comparto y valoro, pero
no creo aplicable/útil en este caso.
No entiendo por que te parece mal tener un modelo "mas generico"? Quiza estamos entendiendo cosas distintas. Lo que quise transmitir es que nuestro modelo te permite tener objetos que representen medidas fisicas (como 1 metro) igual que monetarias (1 dolar) como resultados de haber contado (3 autos), etc. En ese sentido es una gran simplificacion y abstraccion puesto que uno (el programador) sabe que estas cosas tienen un comportamiento definido y polimorfico respecto de la aritmetica y que no tiene que estar pensando en cada concepto en particular (metro, dolar, auto, etc) para entenderlo desde ese punto de vista... Bajo ese sentido me parece bueno. Pero por supuesto no hay que abusar.... no se puede dejar de tener una clase que modele el Auto o el Dolar porque sino estariamos cometiendo el mismo error que con los numeros, donde usamos solo numeros para modelar cantidad de dinero, distancias, paso de segundos, etc. y donde se pierde el significado de lo que ese numero representa....
Las unidades de medición y su problemática es tan
antiguo que excede a lo cultural.
Otras culturas manejan/manejaban "el concepto"
de unidades, y como es de esperar de forma
distinta al abordaje contemporáneo/anglosajón
(espero me dejen considerar aquí, lo anglosajón,
por un momento de peso cultural).
La resolución de la problemática de las mediciones
fue tratado tanto por los egipcios como por los incas,
es decir, se hicieron modelos hace milenios.
Es interesante leer un poco de estos temas para
justamente no ambicionar hacer "algo nuevo" :-)
pues uno allí se da cuenta que solo puede hacer
algo puntual y con un vínculo fuerte con su contexto
cultural.
Volviendo a las unidades...
En nuestro contexto cultural (pobre y reducido)
nos encontramos con que hace +500(?) años
se ha empezado a formular un modelo "único"
de medición (la reducción de sistemas de unidades
es concordante con la eliminación sistemática de
culturas).
Ese sistema único fue (como todo), "formalizado"
y estandarizado (en la ultima etapa del proceso
colonizador, en concordancia con expediciones bioprospectivas)
y por eso, resulta apropiado para un sistema computacional
tener un modelo consistente con el "standard" (NIST
o al menos con "un standard").
La formalización en la problemática de las mediciones
(que hoy es un tema técnico y no solo científico)
vino de la mano de la definición de "patrones".
"1 metro" es la longitud de una bara de metal (de hierro?
o era de acero... creo que de hierro, pues el acero
no era fácil de hacer en la época que se corto/definió
la barra... o quizás platino?).
Una bara de metal?
Si!, no cualquier bara...
sino uno bara UNICA EN EL UNIVERSO.
Que, según tengo entendido, desde entonces
no ha salido de Inglaterra; y es la bara unitaria,
única barra que mide siempre un metro...
(la bara única)
Y de eso se trata; las unidades son "unidades relativas"
y el standard habla de las relaciones entre unidades.
Por lo que no tiene sentido plantear que una unidad
sea un objeto.
Porque no tiene sentido?
(si puede tenerlo para un OO, pero no para un técnico)
Aca no te sigo. No entiendo porque decis que no tiene sentido modelarlo con un objeto? De hecho vos lo hiciste, ok, usaron una clase, pero en definitiva es un objeto... O sea, si el ente "metro" existe en la realidad, debe haber un "objeto metro" que lo represente en tu mundo virtual, tu programa... hacelo como objeto, como clase, etc. pero debe estar modelado.
Me parece que vos te estas refiriendo a otra cosa y no te logro seguir no?
Porque la unidad es un calificador, no el objeto en si.
Por eso, escribimos siempre "1 metro"
En realidad se deberia escribir "1* metro" que fue algo que agregamos a Aconcagua y no teniamos cuando se escribio el paper.
Ademas queda interesante que se use el * para crear las medidas puesto que cierra matematicamente y no hay que agregar todos esos mensajes "de ayuda" en Number como #metro, #day, etc.
Por una simplificacion matematica (no mostrar el *) que todos conocemos se pone "1 metro", pero en realidad significa "1* metro"
Es como cuando en algebra ponamos "5 A + 3 B" que significaba "5 * A + 3 * B"
Allí tanto el framework de Smalltalking como el que se
detalla en el paper concuerdan.
La forma de uso en ambos es idéntica; las diferencias
están en su estructura interna (al menos de lo que pude
ver en el articulo).
Nunca creamos algo que sea un metro... (Metro new)
En realidad segun nuestra propuesta deberia haber un objeto instancia de alguna clase que represente unidades... por ejemplo:
metro := BaseUnit named: 'metro'.

Sobre el NIST standard...
El valor de leer el standard esta dado por la posibilidad
de considerar no solo que términos usar al denominar
las clases, sino también cómo reflejar su diseño para
que sea valioso a personas con rigor técnico.
Estoy de acuerdo. Nosotros lo leimos en su momento.
En el tema de unidades, que es un tema técnico
por exceder a la problemática planteada por físicos
es importante el contar con abstracciones como los
conceptos de magnitud (me refiero a la magnitud
que se mide, no a la que se encuentra en la jerarquía
de los Smalltalk, que refleja la parte mas
básica/simple/abstracta/.../pobre :)
Desafortunadamente hoy en día, el porcentaje de físicos
que son técnicos es bajo (al menos en nuestro país);
y muchas veces se considera la física como algo
mas "elevado" que la técnica; sin reconocer la relación
que tiene el acercamiento a la técnica
y la edad de quien se instruye.
El acercarse a la técnica en la edad preadolescente y
hasta los 16/18 años tiene un efecto "fundacional",
cosa que no se logra (ni se observa) en los
acercamientos en edades mas adultas (como ocurre
en la mayoría de los físicos -universitarios- ).
Porque digo esto?
Porque las reflexiones y atención que se pone a temas
técnicos (como el de mediciones) esta directamente
relacionado con ese carácter técnico; carácter
que NO se encuentra hoy en día en la mayoría de los
físicos y mucho menos en grupos de informática.
El leer un documento como el "ANSI" sobre mediciones,
y considerarlo es importante (a mi entender) en una
implementación sobre unidades que pretenda abordar
plenamente el dominio.
(si no lo pueden encontrar en la Web podría buscarlo
y ponerlo en nuestro sitio)
Yo estoy de acuerdo con la importancia de leer esas publicaciones, hicimos algo de research mientras haciamos el modelo, pero de vuelta, nuestro objetivo no era modelar medidas fisicas unicamente, en realidad no era nuestro objetivo para nada y luego salio un modelo que puede servir para hacerlo.
Las mediciones remiten a patrones, luego al ser relativas,
podemos modelarlas sin mayores problemas.
Para modelarlas, es conveniente heredar pues hay analogías
y no todas las relaciones son equivalentes (lineales).
Y por esa razón, un diseño basado en clases es conveniente.
La cantidad de mensajes que requieren refinamiento no
es grande, por lo que un diseño basado en instancias
puede alcanzar, colocando algunos "ifs" y teniendo
métodos algo largos :-)
Entiendo lo que decis. Por suerte no tuvimos ese problema, si te fijas el codigo quedo bastante limpio y polimorfico.
Seguramente tu modelo resuelve muchos mas problemas de las unidades fisicas que el nuestro puesto que el nuestro no encara ese problema, sin embargo aca en Mercap tenemos todo el modelo de instrumentos financieros que se base en este modelo de medidas que justamente lo especializar para la problematica financiera. Creo que lo mismo habria que hacer para la problematica de las medidas fisicas....
Se entiende no?, nuestro modelo propone tener objetos que sean polimorficos aritmeticamente que los llamamos medidas porque "sintacticamente" se escriben igual (10 metros, 10 segundos, 10 dolares), pero que nos dimos cuenta que tienen muchas similitudes. Sobre este modelo hay que montar la semantica del resto de cosas que uno quiera modelar, como medidas fisicas, instrumento financieros, etc.
El usar clases o no, aquí un tema de costumbre; pero a
mi entender, afecta directamente a la extensibilidad
del framework.
Lo que sigue son comentarios sobre párrafos sueltos;
espero este mail no los haya aburrido mucho :-)
Todo lo contrario! es bueno discutir sobre estos temas.

La idea es que si se quiere implementar el standard del NIST, exista una
abstracción que lo haga (Quiza NISTStandard?) donde se definan las
unidades y relaciones entre ellas...
Creo que malinterpretaste lo que decía...
No decía implementar el standard, sino conformar al estandard.
Como ejemplo, al hacer un ANSI Smalltalk; uno no debe
implementar el modelo del ANSI Smalltalk...
Lo usamos para cualquier cosa que represente un "medida"... se podría
usar para representar "3 naranjas", "20 manzanas"

OOps! en "3 naranjas" no hay medida.
solo hay tres naranjas :-)
[fijate en la especificación... es clara en esos puntos
es rigurosa, pues es formal]
Bueno, aca es donde la cosa se pone medio difusa y por eso comente que "medida" no es una buena palabra y seguramente esto es lo que trae confusion y este intercambio de ideas.
Para nuestro modelo es lo mismo "3 metros" que "3 naranjas" desde el punto de vista de comportamiento, si hay que diferenciarlos hay que hacer algo adicional....

o "20 kilos de manzanas"
Aquí si hay una medición (una relación con el PATRON de masa)
, "30 instancias de Object", etc...
Aquí no hay medición, solo el resultado de un encapsulamiento (arbitrario);
pues fijate que si esos objetos tienen instancias dentro.. las mediste?.
Cuantos Objects "son" en realidad? (cero)
Lo que no veo claro es que diferencia hay desde un punto de vista mas abstracto, entre medir y contar.
Uno obtiene tres metros porque conto "cuantas baras de hierro de un metro" entraron en esa distancia.
Uno obtiene tres naranjas porque conto cuantas naranjas hay...
Nos seria de mucha ayuda que alguien nos comente bien esta diferencia, que palabra se usa en cada caso... la hay? o realmente tienen que estar separados el contar y el medir? No se puede tener una abstraccion por arriba de ellos?...
En Aconcagua si la hay (no se si es lo mejor) y esta mal llamada Medida, pero bue, por ahora nos es muy util.... el tiempo hara madurar el modelo...

Creo que en ese sentido nuestro modelo es un poco
mas genérico del que recuerdo que vimos de
ustedes.

El framework de unidades no ambiciona ser mas que
de ese dominio, todo uso fuera de las mediciones es un
uso alternativo (como usar los dientes para sacar clavos :-)
en lo personal no considero que le dé mas valor
al framework o que sea una característica "del" framework
sino mas bien de su usuario.
Al ser mas genérico por ejemplo, no tiene ninguna restricción en el
hecho de hacer "(10 * metro) + (20 * día)"... Esto devuelve un objeto
instancia de MeasureBag en vez de levantar un error.

Que sería otro objeto :-P
Por supuesto, pero tambien es un error (o excepcion).. creo que eso no es necesario aclararlo en esta lista porque sino nunca podriamos hablar en niveles linguisticos superiores. Se que lo pusiste como chiste, pero me parecio importante aclararlo.

Quizás con las mismas consecuencias (pero acotadas a
su contexto, en el caso del error; es decir, es una característica
del valor dependiente del uso y bien valida si les fue de utilidad)
Esto es necesario porque en finanzas es muy
común tener "(1000 * peso) + (5000 * dólar)"

Oops! aquí no entendí!
"peso" es un objeto?
Espero que lo de arriba haya sido un error,
en nuestro caso (framework de unidades de stking)
se escribe:
1000 pesos + 5000 dólares
(pego una síntesis del framework a este email)
No, es un objeto. Arriba lo comente...
No considero valido tener un objeto "peso",
lo valido es que sea un mensaje, pues una unidad se
aplica a una magnitud... (por envío de mensaje, que no es #* )
Bueno, segun la especificacion de medida que esta en paper y sacamos de no me acuerdo donde (un standard), un medidas es similar a tener una expresion algebraica... por lo tanto hablar de 10 metros es lo mismo de hablar de 10 * metro.
En el paper sobre unidades esta la misma sintaxis
que la nuestra[*]; allí no se ven expresiones como:
100 * gramos
sino simplemente: "100 gramos"
Si, lo agregamos despues como sugerencia de Nicolas Kicillof... realmente se nos habia pasado algo tan logico (desde mi punto de vista) como eso. Al tenerlo nos simplifico aun mas la creacion de medidas.
[*] el decir, "nuestra sintaxis" me suena arrogante,
esa misma sintaxis recuerdo haberla usado en 1999
en sistemas de exportación/importación y de
control de activos... no es una sintaxis propia del framework
sino mas bien un uso lógico de la sintaxis de Smalltalk,
uso que creo se ejercita en los primeros abordajes
con Smalltalk; y por esa razón entusiasma/gusta tanto.
Es una sintaxis pura/limpia/inocente, no?
decías...
común tener "(1000 * peso) + (5000 * dólar)"
... medidas que luego aplicando una conversión de tipo de cambio
se pueden unificar en una sola unidad (moneda en este caso).

Aquí creo que es interesante el plantearse si es
adecuado/posible realizar el cambio de moneda;
por lo que comentaba arriba sobre las transacciones
comerciales.
El realizar la conversión es perder información
y hacerlo en base a una transformación global (y lineal)
es algo muy reducido/simplificado.
Nos estamos metiendo en cuestiones financieras... en nuestro sistemas este tipo de conversiones no pierden contexto y estan modeladas (aunque tenemos varias cosas para mejorar). Por ejemplo un precio esta modelado y si el mismo esta compuesto de valores expresados en pesos y dolares, este conoce que tipo de cambio se uso para la conversion (si la hubo)... el tema es complejo, pero es necesario pasar de pesos a dolares y viceversa, mas aun cuando se valuan instrumentos emitidos en distintas monedas.
En estos detalles creo que las unidades NO se relacionan
con la moneda, como te comentaba arriba, por el tema
que un metro es lo mismo para cualquier persona.
(un dólar y un segundo no :)
Estoy de acuerdo que un dolar y un segundo puede verse como algo mas contextual. Es ahi donde quiza nos falte poner algunas abstracciones mas y hacer mas clara esta diferencia. Por ahora, lo que hacemos es modelar estas diferencias de manera explicita como te comente de Currency
En el caso de nuestro framework, las unidades funcionan
como vistas de una magnitud; es decir, al mismo
peso de un perro (que es una magnitud de masa)
lo podes ver como gramos, kilos, etc...
son observadores...
el perro entonces puede comer... aumentar su "peso"
y los observadores ven en la unidad que interesa...
Así el sistema se maneja con magnitudes y la métrica
queda en "la interfaz" (gracias a la existencia de patrones
universales esto se puede hacer con las unidades de medición)
como un modificador y no como elemento del modelo/sistema.
Adjunto entonces a este mensaje, un diagrama de las unidades
base y sus derivadas según NIST (como esta implementado
en nuestro framework, que esta implementado en VS, Squeak,
vworks y creo que Dolphin) y un textito explicativo
de como funciona; pues creo que valen para plantear algunas
(pocas) diferencias. Digo pocas pues veo que el foco está
en lugares distintos, en mi caso en unidades de medición
(un tema técnico) y en el caso de Hernán (en finanzas y tiempo).
Si llegó alguien hasta acá, me queda una esperanza
de que lo haya disfrutado.
jaja!, yo lo disfrute y estoy seguro que va a generar una parva de mails mas!!! Me gustaria saber que pensas con esto de contar, medir, si se entendio porque los vemos de manera similar (por lo menos desde el punto de vista aritmetico) y por supuesto, que te parece.
Por ahora a nosotros nos simplifico varios problemas....

Un abrazo,
Hernan.
hasta pronto,
Ale.
----- Original Message ----- From: "Hernan Wilkinson" <hernan.wilkinson@...>
To: "smalltalking" <smalltalking@...>
Sent: Friday, April 21, 2006 10:41 AM
Subject: Re: [Fwd: Re: [objetos] Modelos de Medidas y Fechas]
Che Ale, no me llego tu mail a mi... me lo pasaro un pibe del laburo...
Hola Hernán,
Gracias por la información!
No problem! Estamos con ganas de abrir otras cosas, pero nos va a llevar
un tiempo.
Actualmente no tengo necesidad de usar soluciones
a unidades ni fechas/calendarios,
pero en el pasado me ha ocurrido, más de una vez, el
tener que implementar soportes de unidades; una de
ellas con motivaciones didácticas además de comerciales.
Si tenes tiempo fijate como quedo el modelo de fechas. Personalmente me
gusta mucho, creo que hicimos un buen laburo y se pueden hacer cosas muy
simples y ademas con un lenguage similar al natural, por ejemplo:
January first, 2006 --> Si evaluas esto, te da un instancia de
GregorianDate
(January first, 2006 to: December thirtyfirst, 2006) select: [
:aDate | aDate isMonday ] --> Devuelve todos los lunes del año
(GregorianYear number: 2006) firstDate to: (GregorianYear number:
2006) lastDate every: (Array with: Monday with: Friday) --> Devuelve una
coleccion de lunes y viernes de este año.
Bueno, hay muchos ejemplos mas de cosas que creo que son interesantes,
como fechas relativas, el uso de las medidas en este modelo, etc.
En este último caso, como resultado de la experiencia
(de mediados/fines de 1999) se produjo el framework
de unidades que está en nuestra página de laboratorio
http://www.smalltalking.net/Lab/index.htm
y usé con bastante éxito para el modelo de fábrica
(en la misma página); que luego extendieron y usaron
otras personas de Smalltalking.
Si, yo recuerdo haberlo visto antes de hacer el nuestro. Nos fijamos
varios modelos pero decidimos hacer uno nosotros... la historia viene
mas o menos asi:
Aca hacemos sistemas financieros, por lo tanto es importante modelar
cosas como "10 pesos", "20 dolares" ,etc. La cosa empezo por ahi, pero
despues nos dimos cuenta que hablar de "10 pesos" conceptualmente es
similar a hablar de "10 dias" o "20 metros" ,que estas entidades pueden
ser modeladas por el mismo concepto y ahi empezamos a ampliar el modelo
y pasarlo de algo financiero a algo mas generico. Creo que quedo
bastante interesante.
Respecto del modelo de ustedes, no nos servia porque cada unidad era
representada por una clase y en ellas estaba la relacion de conversion
(si mal no recuerdo). Eso no nos servia porque los usuarios de nuestro
sistema pueden crear instrumentos financieros todo el tiempo (bonos,
acciones, monedas, etc) entonces teniamos que usar objetos para ellos
(no clases... ok, ya se que las clases son objetos, pero se entiende el
problema no?)
Bueno, en definitiva nos quedo este modelo de medidas que no sirve
unicamente para medidas fisicas y eso es lo mas complicado de explicar.
Lo usamos para cualquier cosa que represente un "medida"... se podria
usar para representar "3 naranjas", "20 manzanas" o "20 kilos de
manzanas", "30 instancias de Object", etc... Creo que en ese sentido
nuestro modelo es un poco mas generico del que recuerdo que vimos de
ustedes.
Al ser mas generico por ejemplo, no tiene ninguna restriccion en el
hecho de hacer "(10 * metro) + (20 * dia)"... Esto devuelve un objeto
instancia de MeasureBag en vez de levantar un error. Esto es necesario
porque en finanzas es muy comun tener "(1000 * peso) + (5000 *
dolar)"... medidas que luego aplicando una conversion de tipo de cambio
se pueden unificar en una sola unidad (moneda en este caso).
No se si lo has visto o si tu gente lo ha estudiado al investigar
opciones preexistentes a vuestra implementación;
Si, como puse mas arriba no nos convencieron las que habia. Vimos
tambien la de Griggs de VisualWorks, algunas de Java, la de ustedes y no
recuerdo si otra mas...
si es así me gustaría conocer como se relaciona con
ese trabajo, diferencias, críticas, etc...
En el paper escribimos algunas coparanciones pero no muchas... despues
vamos a poner todo online... si alguien esta interesado en que les envie
el parper aviseme
como así también
me gustaría conocer si Aconcagua conforma a algún
standard sobre unidades (en el caso del framework
de unidades de Smalltalking, conforma la especificación
del NIST - Sistema de Unidades Internacional, aunque
como es de esperar, no están implementadas todas
las alternativas posibles, sino las más comunes).
No, puesto que la idea de aconcagua termino siendo hacer algo generico,
no atado a ningun tipo de estandar o tipo de unidad.
La idea es que si se quiere implementar el standard del NIST, exista una
abstraccion que lo haga (Quiza NISTStandard?) donde se definan las
unidades y relaciones entre ellas...
bueno, nuevamente gracias por el haberte dado tiempo
para compartir localmente tu trabajo y el de tu gente.
No, yo pido disculpas por haber tardado tanto en mandarlo a estas
listas...
Bueno, espero que puedan analizar lo que hicimos y criticarlo, siempre
es bueno recibir criticas asi uno mejora lo que hizo.
Les comento que hay un thread en SqueakDev (The Timing of Time) donde
estamos intercambiando ideas con el pibe que hizo Chronos... espero que
surja algo mejor que Chronos y Chalten con este intercambio...
hasta pronto,
Un abrazo,
Hernan.
Ale.
----- Original Message ----- From: "Hernan Wilkinson" <hernan.wilkinson@...>
To: "smalltalking" <smalltalking@...>
Sent: Wednesday, April 19, 2006 5:30 PM
Subject: [objetos] Modelos de Medidas y Fechas
Que tal gente,
hace rato que quiero enviar este mail y me olvido.
Hace un par de semanas atras abrimos unos modelos que hicimos en
Mercap y de los cuales escribimos unos papers para OOPSLA y ESUG.
Los modelos son:
1) Aconcagua: Para trabajar con medidas
2) Chalten: Modelo del calendario Gregoriano
Dicen que uno no es profeta en su tierra y me di cuenta que todo
esto lo anunciamos en las listas del exterior pero no en las de aca, asi
que pido disculpas por no haberlo hecho a su debido tiempo. Ademas pido
disculpas tambien porque no tengo mucho tiempo para volver a escribir
dichos mails en castellano, asi que les copio a continuacion los mails
que mandamos a la lista de Squeak en ingles.
Como resumen les cuento de donde se pueden bajar los paquetes:
1) Aconcagua: www.sourceforge.net/aconcagua, www.squeaksource.com,
public repository de VW.
2) Chalten: www.sourceforge.net/chalten, www.squeaksource.com,
public repository de VW.
Ambos proyectos tienen un FAQ (en source forge estan como
documentaicon y en squeak source en el wiki interno)
Los modelos estan abiertos con licencia MIT, por lo tanto los pueden
usar, mejorar, tirar a la basura, etc.
Si encuentran cosas interesantes, criticas, etc, seran bienvenidas.
Si quieren los papers y no tienen acceso para bajarlos, avisenme que se
los envio sin problema. Como detalle les comento que ambos modelos
fueron escritos usando TDD y tienen cada uno alrededor de 600 tests,
estan en VisualAge, VisualWorks y Squeak (los tenemos funcionando en
GemStone tambien pero no tuvimos tiempo de subirlos).
Maxi Taborda hizo las migraciones a cada Smalltalk y va a ampliar
Chalten para que tenga soporte de time zone, otros calendarios, etc.
Espero les guste y les sea util.
Un abrazo,
Hernan
--------------------- MAIL DE ACONCAGUA --------------
Hi,
we create a packaged named Aconcagua at SqueakSource.
This model represents measures as first class objects, that is, an
object that encapsulates a number with its unit.
We uploaded a FAQ to its SqueakSource wiki, with some examples. The
model includes almost 600 tests that can be used as examples also.
We use this model in many of the financial applications we wrote and
it is used by the Gregorian Calendar model we are going to upload soon
(the one presented at ESUG last year).
The package is going to be available for VisualAge, GemStone,
VisualWorks and Dolphin. (Right now only on Squeak, VisualAge and
GemStone).
There is also a practitioner report we wrote for OOPSLA about this
model:
(http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=7219643
3
&CFTOKEN=8952623
<http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=7219643
3
&CFTOKEN=8952623>)
 We hope you like it.
Bye, Hernan.
------------------------ MAIL DE CHALTEN -----------------
Hi,
we uploaded to SqueakSource a new project called "Chalten" that is
the Squeak implementation of the Gregorian Calendar we presented last
year at ESUG.
This model reifyes many concepts of the Gregorian Calendar that
Smalltalk-80 does not (like day or day of month, etc).
This model was born one year and a half ago but we just be able to
open it.
The main objective of this model is to easily solve problems of the
Gregorian Calendar that are not so easy to do with the Smalltalk-80
classes. It provides also some concepts that are useful for financial
applications like TimeLineFilter and RelativeGregorianDate.
This model also uses the units models (Aconcagua) we uploaded last
week. Because it uses the units model, there are some concepts that are
not useful anymore, like Duration, because a Duration is a Measure of
time.
 Anyway, you can read about the model at the SqueakSource wiki (we
wrote a faq with some examples), the ESUG presentation from
http://prog2.vub.ac.be/~cderoove/esugtalks/Wilkinson.pdf
<http://prog2.vub.ac.be/%7Ecderoove/esugtalks/Wilkinson.pdf> and the
paper from
http://www.iam.unibe.ch/publikationen/techreports/2005/iam-05-001/file/at_d
ownload

 It comes with almost 600 tests and you can read in the paper how it
compares to Chronology.
Here are some examples I hope you will like:
January first, 2006 --> Creates an instance of GregorianDate for
01/01/2006
January first --> Creates an instance of
GregorianDayOfMonth for 01/01
January, 2006 --> Creates an instance of
GregorianMonthOfYear for January 2006
January first, 2006 distanceTo: July first, 2006 --> Returns an
instance of Measure "181 days"
(GregorianYear number: 2006) months collect: [ :aMonthOfYear |
aMonthOfYear lastDate ] -->Returns all the last dates of the 2006
months.
 (GregorianYear number: 2006) dates collect: [ :aDate | aDate
isMonday ] -->Returns all Mondays of 2006
"Let's create a filter for all dates..."
nonWorkingDays := TimelineFilter universe: (TheBeginningOfTime to:
TheEndOfTime).
"Now, we want Saturdays to be on that filter"
nonWorkingDays addDayRule: Saturday.
"Now we want Sundays from January 1st of year 1000 to the end of
time..."
nonWorkingDays addDayRule: Sunday from: (January first, 1000) to:
TheEndOfTime.
"Now we want all July 9th since 1816 because is the Independence Day
in Argentina".
nonWorkingDays addDayOfMonthRule: July ninth from: (July ninth,
1816) to: TheEndOfTime.
nonWorkingDays includes: (July ninth, 2005) "Returns true"
nonWorkingDays includes: (July eighth, 2005) "Returns false"
nonWorkingDays includes: (July sixteenth, 2005) "Returns true, it is
Saturday"
"06/01/2005 is a Thursday"
aTimespan := GregorianTimespan from: (January sixth, 2005) duration:
48 hours.
aSettleDate := RelativeGregorianDate timespan: aTimespan calendar:
nonWorkingDays negated.
"Returns false because 10/01/2005, a Monday, is a working day"
nonWorkingDays includes: (January tenth, 2005).
"Returns 10/01/2005"
aSettleDate absoluteDate.
"Now a new non working day is added to the filter"
nonWorkingDays addDateRuleFor: (January tenth, 2005).
"Return true. Now 10/01/2005, is a not working day"
nonWorkingDays includes: (January tenth, 2005).
"Now it returns 11/01/2005 because the filter has changed"
aSettleDate absoluteDate.
Hernan.
-- ______________________________
Lic. Hernán A. Wilkinson
Gerente de Desarrollo y Tecnología
Mercap S.R.L.
Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
Buenos Aires - Argentina
http://www.mercapsoftware.com
--------------------------------------------------------------------- Este mensaje es confidencial. Puede contener informacion amparada
por el secreto profesional. Si usted ha recibido este e-mail por error,
por favor comuniquenoslo inmediatamente via e-mail y tenga la
amabilidad de eliminarlo de su sistema; no debera copiar el mensaje
ni divulgar su contenido a ninguna persona. Muchas gracias.
This message is confidential. It may also contain information that is
privileged or otherwise legally exempt from disclosure. If you have
received it by mistake please let us know by e-mail immediately and
delete it from your system; you should also not copy the message nor
disclose its contents to anyone. Thanks.
--------------------------------------------------------------------- 
Para más información sobre la Asociación escribir a info@...
Smalltalking es un espacio colaborativo creado para el estudio y
desarrollo en Ambientes de Objetos.
Se sustenta gracias a la participación de sus socios.
Las reglas de etiqueta sobre la lista están en
http://www.smalltalking.net/join/netiquete.htm
Enlaces de Yahoo! Grupos
-- ______________________________
Lic. Hernán A. Wilkinson
Gerente de Desarrollo y Tecnología
Mercap S.R.L.
Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
Buenos Aires - Argentina
http://www.mercapsoftware.com
--------------------------------------------------------------------- Este mensaje es confidencial. Puede contener informacion amparada
por el secreto profesional. Si usted ha recibido este e-mail por error,
por favor comuniquenoslo inmediatamente via e-mail y tenga la
amabilidad de eliminarlo de su sistema; no debera copiar el mensaje
ni divulgar su contenido a ninguna persona. Muchas gracias.
This message is confidential. It may also contain information that is
privileged or otherwise legally exempt from disclosure. If you have
received it by mistake please let us know by e-mail immediately and
delete it from your system; you should also not copy the message nor
disclose its contents to anyone. Thanks.
--------------------------------------------------------------------- 





-- ______________________________
Lic. Hernán A. Wilkinson
Gerente de Desarrollo y Tecnología
Mercap S.R.L.
Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
Buenos Aires - Argentina
http://www.mercapsoftware.com
--------------------------------------------------------------------- Este mensaje es confidencial. Puede contener informacion amparada por el secreto profesional. Si usted ha recibido este e-mail por error, por favor comuniquenoslo inmediatamente via e-mail y tenga la amabilidad de eliminarlo de su sistema; no debera copiar el mensaje ni divulgar su contenido a ninguna persona. Muchas gracias. This message is confidential. It may also contain information that is privileged or otherwise legally exempt from disclosure. If you have received it by mistake please let us know by e-mail immediately and delete it from your system; you should also not copy the message nor disclose its contents to anyone. Thanks. --------------------------------------------------------------------- 

#14768 De: "Alejandro F. Reimondo" <aleReimondo@...>
Fecha: Dom, 23 de Abr, 2006 12:47 pm
Asunto: Re: [objetos] Consulta
alereimondo
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola,
Normalmente es simple...
Abrí el proyecto de la librería que estás trabajando,
  configuralo para compilar en debug; y colocá
  en el ejecutable a debugear el arranque del ambiente.
Antes de arrancar el debugger, pone algunos breakpoints
  en las llamadas que vas a verificar.
Arranca el ambiente y asegurate que:
1.- se cargue desde el ambiente la versión de
  debugging de la libraría que estas usando (que sea el archivo
  que generó el compilador C)
2.- que efectivamente estés llamando a la función
  que pusiste el breakpoint.
Si esta todo ok, al activarse el método API correspondiente
  a la función con el breakpoint deberás ver que se activa
  el debugger y podes trabajar a bajo nivel.
hasta pronto,
Ale.



----- Original Message -----
From: "kikote gregoris" <kikogregoris@...>
To: <smalltalking@...>
Sent: Saturday, April 22, 2006 11:18 AM
Subject: [objetos] Consulta


> Hola
>
>   Queria usar el debug de VC++ para ver que pasa del lado de la libreria
que estoy usando, esta es genesis.dll.
>   Se que me lo explicaron alguna vez pero no encuentro dicho mail.
>   Se que era facil, pero no me acuerdo.
>   El ST es MT.
>
>   saludos kiko
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar

#14767 De: "Alejandro F. Reimondo" <aleReimondo@...>
Fecha: Dom, 23 de Abr, 2006 12:25 pm
Asunto: Re: [Fwd: Re: [objetos] Modelos de Medidas y Fechas]
alereimondo
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola Hernán,

Se me hace difícil responderte sin usar solo unas frases de tu respuesta,
  las que encuentro interesantes para motivar un diálogo y permitirles
  conocer mis intereses sobre estos temas.

Medidas, fechas y monedas... ante todo quiero decirles
  que el tema de mi interés es sobre "medición", y claro esta,
  unidades de medición.
Su extensión a fechas y monedas no me atrae tanto porque
  aprecio las diferencias que existen, tanto de carácter semántico
  como histórico.

mmm... por donde empezar... :-)

> >En este último caso, como resultado de la experiencia
> > (de mediados/fines de 1999) se produjo el framework
> > de unidades que está en nuestra página de laboratorio
> > http://www.smalltalking.net/Lab/index.htm
> > y usé con bastante éxito para el modelo de fábrica
> > (en la misma página); que luego extendieron y usaron
> > otras personas de Smalltalking.
> Si, yo recuerdo haberlo visto antes de hacer el nuestro. Nos fijamos
> varios modelos pero decidimos hacer uno nosotros... la historia viene
> mas o menos así:
> Acá hacemos sistemas financieros, por lo tanto es importante modelar
> cosas como "10 pesos", "20 dólares" ,etc. La cosa empezó por ahí, pero
> después nos dimos cuenta que hablar de "10 pesos" conceptualmente es
> similar a hablar de "10 días" o "20 metros" ,que estas entidades pueden
> ser modeladas por el mismo concepto y ahí empezamos a ampliar el modelo
> y pasarlo de algo financiero a algo mas genérico. Creo que quedo
> bastante interesante.

Sobre este párrafo... dónde dice:
> ser modeladas por el mismo concepto y ahí empezamos a ampliar el modelo
> y pasarlo de algo financiero a algo mas genérico.

...de ser así sería una abstracción del modelo, es decir, estarías
  construyendo un modelo de menos valor, al ser mas genérico.

Me gustaría dialogar sobre las diferencias entre
     "10 pesos", "1 semana" y "20 gramos"
  la analogía, en mi opinión, comienza en la sintaxis...
  y allí acaba. :-)
Tanto en el sentido de los términos como en sus raíces
  y contextos de uso no hay analogías; o, mejor dicho,
  las analogías no son tan importantes como las diferencias.
A que voy?

Los contextos de uso, son muy distintos; tanto la moneda
  como el tiempo son contextos informales/sociales;
  mientras que las unidades se encuentran en un contexto técnico.

Sobre dólares y fechas... pongo solo unas reflexiones, que espero
  compartan, sobre su utilidad e historia, pero solo me interesan
  periféricamente, mi interés real esta en las unidades de medición.
Intentando se pueda entender porqué digo que son diferentes...
  pongo algunos ejemplos.

En una transacción comercial, uno puede usar moneda...
  si por la transacción se usan "10 pesos"
  o "3 dólares + 20 centavosDeDolar"
  no es lo mismo.
El verdadero valor de cambio NO esta fijado fuertemente por
  un standard externo a la transacción; es decir, si es 3.12 dólares
  o 4 dólares depende de las condiciones de negociación,
  del momento en que se efectuó la transacción, etc.
En ese punto, es dónde, según creo el sistema informático;
  si contiene solo el valor de la transacción (y no su contexto
  comercial) tiene el mismo valor que si guardara solo
  "3.1234" (el numero).
Esto ultimo lo digo con toda ignorancia y despreocupación
  sobre los temas financieros :-)
  y allí es dónde quizás moleste a Hernán y otros... cuando
  hablo de dinero sin saber del tema.

Con respecto al tiempo... encuentro algo similar.
El "valor" del tiempo no esta regido por algo material;
  sino que esta fuera del tiempo en sí. (en esto es análogo al
  dinero... pero solo en esto).
Cómo ejemplificarlo? nada mejor que citar la frase:
  "la duración de un segundo depende de que
    lado de la puerta del baño uno esté"
hasta en este rudo ejemplo se revela la importancia
  del tiempo, que NO es un objeto; pues su sentido
  está fuera de él.
Su valor está en el sufrimiento que implica su pasar.
Un sistema que atiende a la problemática temporal, es un
  sistema sobre que se hace "en ese tiempo" y modelar
  el tiempo como un objeto es, además de objetable,
  sin compromiso con la problemática del dominio real.

Sobre mediciones... aquí las cosas son muy distintas.
El tema tiene cientos (miles) de años de desarrollo.
Y por eso, creo que aquí no vale la reflexión:

> No, puesto que la idea de Aconcagua termino siendo
> hacer algo genérico,
> no atado a ningún tipo de estándar o tipo de unidad.

Que revela un espíritu que comparto y valoro, pero
  no creo aplicable/útil en este caso.

Las unidades de medición y su problemática es tan
  antiguo que excede a lo cultural.
Otras culturas manejan/manejaban "el concepto"
  de unidades, y como es de esperar de forma
  distinta al abordaje contemporáneo/anglosajón
  (espero me dejen considerar aquí, lo anglosajón,
  por un momento de peso cultural).
  La resolución de la problemática de las mediciones
  fue tratado tanto por los egipcios como por los incas,
  es decir, se hicieron modelos hace milenios.
Es interesante leer un poco de estos temas para
  justamente no ambicionar hacer "algo nuevo" :-)
  pues uno allí se da cuenta que solo puede hacer
  algo puntual y con un vínculo fuerte con su contexto
  cultural.
Volviendo a las unidades...
En nuestro contexto cultural (pobre y reducido)
  nos encontramos con que hace +500(?) años
  se ha empezado a formular un modelo "único"
  de medición (la reducción de sistemas de unidades
  es concordante con la eliminación sistemática de
  culturas).

Ese sistema único fue (como todo), "formalizado"
  y estandarizado (en la ultima etapa del proceso
  colonizador, en concordancia con expediciones bioprospectivas)
  y por eso, resulta apropiado para un sistema computacional
  tener un modelo consistente con el "standard" (NIST
  o al menos con "un standard").

La formalización en la problemática de las mediciones
  (que hoy es un tema técnico y no solo científico)
  vino de la mano de la definición de "patrones".
"1 metro" es la longitud de una bara de metal (de hierro?
  o era de acero... creo que de hierro, pues el acero
  no era fácil de hacer en la época que se corto/definió
  la barra... o quizás platino?).

Una bara de metal?
Si!, no cualquier bara...
  sino uno bara UNICA EN EL UNIVERSO.
Que, según tengo entendido, desde entonces
  no ha salido de Inglaterra; y es la bara unitaria,
  única barra que mide siempre un metro...
  (la bara única)

Y de eso se trata; las unidades son "unidades relativas"
  y el standard habla de las relaciones entre unidades.
Por lo que no tiene sentido plantear que una unidad
  sea un objeto.
Porque no tiene sentido?
(si puede tenerlo para un OO, pero no para un técnico)

Porque la unidad es un calificador, no el objeto en si.
Por eso, escribimos siempre "1 metro"
Allí tanto el framework de Smalltalking como el que se
  detalla en el paper concuerdan.
La forma de uso en ambos es idéntica; las diferencias
  están en su estructura interna (al menos de lo que pude
  ver en el articulo).
Nunca creamos algo que sea un metro... (Metro new)

Sobre el NIST standard...
El valor de leer el standard esta dado por la posibilidad
  de considerar no solo que términos usar al denominar
  las clases, sino también cómo reflejar su diseño para
  que sea valioso a personas con rigor técnico.
En el tema de unidades, que es un tema técnico
  por exceder a la problemática planteada por físicos
  es importante el contar con abstracciones como los
  conceptos de magnitud (me refiero a la magnitud
  que se mide, no a la que se encuentra en la jerarquía
  de los Smalltalk, que refleja la parte mas
  básica/simple/abstracta/.../pobre :)

Desafortunadamente hoy en día, el porcentaje de físicos
  que son técnicos es bajo (al menos en nuestro país);
  y muchas veces se considera la física como algo
  mas "elevado" que la técnica; sin reconocer la relación
  que tiene el acercamiento a la técnica
  y la edad de quien se instruye.
El acercarse a la técnica en la edad preadolescente y
  hasta los 16/18 años tiene un efecto "fundacional",
  cosa que no se logra (ni se observa) en los
  acercamientos en edades mas adultas (como ocurre
  en la mayoría de los físicos -universitarios- ).
Porque digo esto?
Porque las reflexiones y atención que se pone a temas
  técnicos (como el de mediciones) esta directamente
  relacionado con ese carácter técnico; carácter
  que NO se encuentra hoy en día en la mayoría de los
  físicos y mucho menos en grupos de informática.
El leer un documento como el "ANSI" sobre mediciones,
  y considerarlo es importante (a mi entender) en una
  implementación sobre unidades que pretenda abordar
  plenamente el dominio.
  (si no lo pueden encontrar en la Web podría buscarlo
  y ponerlo en nuestro sitio)

Las mediciones remiten a patrones, luego al ser relativas,
  podemos modelarlas sin mayores problemas.
Para modelarlas, es conveniente heredar pues hay analogías
  y no todas las relaciones son equivalentes (lineales).
Y por esa razón, un diseño basado en clases es conveniente.
La cantidad de mensajes que requieren refinamiento no
  es grande, por lo que un diseño basado en instancias
  puede alcanzar, colocando algunos "ifs" y teniendo
  métodos algo largos :-)
El usar clases o no, aquí un tema de costumbre; pero a
  mi entender, afecta directamente a la extensibilidad
  del framework.

Lo que sigue son comentarios sobre párrafos sueltos;
  espero este mail no los haya aburrido mucho :-)

> La idea es que si se quiere implementar el standard del NIST, exista una
> abstracción que lo haga (Quiza NISTStandard?) donde se definan las
> unidades y relaciones entre ellas...
Creo que malinterpretaste lo que decía...
No decía implementar el standard, sino conformar al estandard.
Como ejemplo, al hacer un ANSI Smalltalk; uno no debe
  implementar el modelo del ANSI Smalltalk...

> Lo usamos para cualquier cosa que represente un "medida"... se podría
> usar para representar "3 naranjas", "20 manzanas"

OOps! en "3 naranjas" no hay medida.
  solo hay tres naranjas :-)
  [fijate en la especificación... es clara en esos puntos
  es rigurosa, pues es formal]

> o "20 kilos de  manzanas"
Aquí si hay una medición (una relación con el PATRON de masa)

>, "30 instancias de Object", etc...
Aquí no hay medición, solo el resultado de un encapsulamiento (arbitrario);
  pues fijate que si esos objetos tienen instancias dentro.. las mediste?.
Cuantos Objects "son" en realidad? (cero)

> Creo que en ese sentido nuestro modelo es un poco
> mas genérico del que recuerdo que vimos de
> ustedes.

El framework de unidades no ambiciona ser mas que
  de ese dominio, todo uso fuera de las mediciones es un
  uso alternativo (como usar los dientes para sacar clavos :-)
  en lo personal no considero que le dé mas valor
  al framework o que sea una característica "del" framework
  sino mas bien de su usuario.

> Al ser mas genérico por ejemplo, no tiene ninguna restricción en el
> hecho de hacer "(10 * metro) + (20 * día)"... Esto devuelve un objeto
> instancia de MeasureBag en vez de levantar un error.

Que sería otro objeto :-P
Quizás con las mismas consecuencias (pero acotadas a
  su contexto, en el caso del error; es decir, es una característica
  del valor dependiente del uso y bien valida si les fue de utilidad)

> Esto es necesario porque en finanzas es muy
> común tener "(1000 * peso) + (5000 * dólar)"

Oops! aquí no entendí!

"peso" es un objeto?
Espero que lo de arriba haya sido un error,
  en nuestro caso (framework de unidades de stking)
  se escribe:
     1000 pesos + 5000 dólares
  (pego una síntesis del framework a este email)

No considero valido tener un objeto "peso",
  lo valido es que sea un mensaje, pues una unidad se
  aplica a una magnitud... (por envío de mensaje, que no es #* )

En el paper sobre unidades esta la misma sintaxis
  que la nuestra[*]; allí no se ven expresiones como:
         100 * gramos
  sino simplemente: "100 gramos"

[*] el decir, "nuestra sintaxis" me suena arrogante,
  esa misma sintaxis recuerdo haberla usado en 1999
  en sistemas de exportación/importación y de
  control de activos... no es una sintaxis propia del framework
  sino mas bien un uso lógico de la sintaxis de Smalltalk,
  uso que creo se ejercita en los primeros abordajes
  con Smalltalk; y por esa razón entusiasma/gusta tanto.
Es una sintaxis pura/limpia/inocente, no?

decías...
> común tener "(1000 * peso) + (5000 * dólar)"
>... medidas que luego aplicando una conversión de tipo de cambio
> se pueden unificar en una sola unidad (moneda en este caso).

Aquí creo que es interesante el plantearse si es
  adecuado/posible realizar el cambio de moneda;
  por lo que comentaba arriba sobre las transacciones
  comerciales.
El realizar la conversión es perder información
  y hacerlo en base a una transformación global (y lineal)
  es algo muy reducido/simplificado.

En estos detalles creo que las unidades NO se relacionan
  con la moneda, como te comentaba arriba, por el tema
  que un metro es lo mismo para cualquier persona.
  (un dólar y un segundo no :)

En el caso de nuestro framework, las unidades funcionan
  como vistas de una magnitud; es decir, al mismo
  peso de un perro (que es una magnitud de masa)
  lo podes ver como gramos, kilos, etc...
  son observadores...
  el perro entonces puede comer... aumentar su "peso"
  y los observadores ven en la unidad que interesa...
Así el sistema se maneja con magnitudes y la métrica
  queda en "la interfaz" (gracias a la existencia de patrones
  universales esto se puede hacer con las unidades de medición)
  como un modificador y no como elemento del modelo/sistema.

Adjunto entonces a este mensaje, un diagrama de las unidades
  base y sus derivadas según NIST (como esta implementado
  en nuestro framework, que esta implementado en VS, Squeak,
  vworks y creo que Dolphin) y un textito explicativo
  de como funciona; pues creo que valen para plantear algunas
  (pocas) diferencias. Digo pocas pues veo que el foco está
  en lugares distintos, en mi caso en unidades de medición
  (un tema técnico) y en el caso de Hernán (en finanzas y tiempo).

Si llegó alguien hasta acá, me queda una esperanza
  de que lo haya disfrutado.

hasta pronto,
Ale.




----- Original Message -----
From: "Hernan Wilkinson" <hernan.wilkinson@...>
To: "smalltalking" <smalltalking@...>
Sent: Friday, April 21, 2006 10:41 AM
Subject: Re: [Fwd: Re: [objetos] Modelos de Medidas y Fechas]


> Che Ale, no me llego tu mail a mi... me lo pasaro un pibe del laburo...
>
> >
> >Hola Hernán,
> >Gracias por la información!
> >
> >
> No problem! Estamos con ganas de abrir otras cosas, pero nos va a llevar
> un tiempo.
>
> >Actualmente no tengo necesidad de usar soluciones
> > a unidades ni fechas/calendarios,
> > pero en el pasado me ha ocurrido, más de una vez, el
> > tener que implementar soportes de unidades; una de
> > ellas con motivaciones didácticas además de comerciales.
> >
> >
> Si tenes tiempo fijate como quedo el modelo de fechas. Personalmente me
> gusta mucho, creo que hicimos un buen laburo y se pueden hacer cosas muy
> simples y ademas con un lenguage similar al natural, por ejemplo:
>
>     January first, 2006  --> Si evaluas esto, te da un instancia de
> GregorianDate
>     (January first, 2006 to: December thirtyfirst, 2006) select: [
> :aDate | aDate isMonday ] --> Devuelve todos los lunes del año
>     (GregorianYear number: 2006) firstDate to: (GregorianYear number:
> 2006) lastDate every: (Array with: Monday with: Friday) --> Devuelve una
> coleccion de lunes y viernes de este año.
>
> Bueno, hay muchos ejemplos mas de cosas que creo que son interesantes,
> como fechas relativas, el uso de las medidas en este modelo, etc.
>
> >En este último caso, como resultado de la experiencia
> > (de mediados/fines de 1999) se produjo el framework
> > de unidades que está en nuestra página de laboratorio
> > http://www.smalltalking.net/Lab/index.htm
> > y usé con bastante éxito para el modelo de fábrica
> > (en la misma página); que luego extendieron y usaron
> > otras personas de Smalltalking.
> >
> >
> Si, yo recuerdo haberlo visto antes de hacer el nuestro. Nos fijamos
> varios modelos pero decidimos hacer uno nosotros... la historia viene
> mas o menos asi:
> Aca hacemos sistemas financieros, por lo tanto es importante modelar
> cosas como "10 pesos", "20 dolares" ,etc. La cosa empezo por ahi, pero
> despues nos dimos cuenta que hablar de "10 pesos" conceptualmente es
> similar a hablar de "10 dias" o "20 metros" ,que estas entidades pueden
> ser modeladas por el mismo concepto y ahi empezamos a ampliar el modelo
> y pasarlo de algo financiero a algo mas generico. Creo que quedo
> bastante interesante.
> Respecto del modelo de ustedes, no nos servia porque cada unidad era
> representada por una clase y en ellas estaba la relacion de conversion
> (si mal no recuerdo). Eso no nos servia porque los usuarios de nuestro
> sistema pueden crear instrumentos financieros todo el tiempo (bonos,
> acciones, monedas, etc) entonces teniamos que usar objetos para ellos
> (no clases... ok, ya se que las clases son objetos, pero se entiende el
> problema no?)
> Bueno, en definitiva nos quedo este modelo de medidas que no sirve
> unicamente para medidas fisicas y eso es lo mas complicado de explicar.
> Lo usamos para cualquier cosa que represente un "medida"... se podria
> usar para representar "3 naranjas", "20 manzanas" o "20 kilos de
> manzanas", "30 instancias de Object", etc... Creo que en ese sentido
> nuestro modelo es un poco mas generico del que recuerdo que vimos de
> ustedes.
> Al ser mas generico por ejemplo, no tiene ninguna restriccion en el
> hecho de hacer "(10 * metro) + (20 * dia)"... Esto devuelve un objeto
> instancia de MeasureBag en vez de levantar un error. Esto es necesario
> porque en finanzas es muy comun tener "(1000 * peso) + (5000 *
> dolar)"... medidas que luego aplicando una conversion de tipo de cambio
> se pueden unificar en una sola unidad (moneda en este caso).
>
> >No se si lo has visto o si tu gente lo ha estudiado al investigar
> > opciones preexistentes a vuestra implementación;
> >
> >
> Si, como puse mas arriba no nos convencieron las que habia. Vimos
> tambien la de Griggs de VisualWorks, algunas de Java, la de ustedes y no
> recuerdo si otra mas...
>
> > si es así me gustaría conocer como se relaciona con
> > ese trabajo, diferencias, críticas, etc...
> >
> En el paper escribimos algunas coparanciones pero no muchas... despues
> vamos a poner todo online... si alguien esta interesado en que les envie
> el parper aviseme
>
> >como así también
> > me gustaría conocer si Aconcagua conforma a algún
> > standard sobre unidades (en el caso del framework
> > de unidades de Smalltalking, conforma la especificación
> > del NIST - Sistema de Unidades Internacional, aunque
> > como es de esperar, no están implementadas todas
> > las alternativas posibles, sino las más comunes).
> >
> >
> No, puesto que la idea de aconcagua termino siendo hacer algo generico,
> no atado a ningun tipo de estandar o tipo de unidad.
> La idea es que si se quiere implementar el standard del NIST, exista una
> abstraccion que lo haga (Quiza NISTStandard?) donde se definan las
> unidades y relaciones entre ellas...
>
> >bueno, nuevamente gracias por el haberte dado tiempo
> > para compartir localmente tu trabajo y el de tu gente.
> >
> >
> No, yo pido disculpas por haber tardado tanto en mandarlo a estas
listas...
> Bueno, espero que puedan analizar lo que hicimos y criticarlo, siempre
> es bueno recibir criticas asi uno mejora lo que hizo.
> Les comento que hay un thread en SqueakDev (The Timing of Time) donde
> estamos intercambiando ideas con el pibe que hizo Chronos... espero que
> surja algo mejor que Chronos y Chalten con este intercambio...
>
> >hasta pronto,
> >
> >
> Un abrazo,
> Hernan.
>
> >Ale.
> >
> >
> >
> >----- Original Message -----
> >From: "Hernan Wilkinson" <hernan.wilkinson@...>
> >To: "smalltalking" <smalltalking@...>
> >Sent: Wednesday, April 19, 2006 5:30 PM
> >Subject: [objetos] Modelos de Medidas y Fechas
> >
> >
> >
> >
> >>Que tal gente,
> >>    hace rato que quiero enviar este mail y me olvido.
> >>    Hace un par de semanas atras abrimos unos modelos que hicimos en
> >>Mercap y de los cuales escribimos unos papers para OOPSLA y ESUG.
> >>    Los modelos son:
> >>    1) Aconcagua: Para trabajar con medidas
> >>    2) Chalten: Modelo del calendario Gregoriano
> >>
> >>    Dicen que uno no es profeta en su tierra y me di cuenta que todo
> >>esto lo anunciamos en las listas del exterior pero no en las de aca, asi
> >>que pido disculpas por no haberlo hecho a su debido tiempo. Ademas pido
> >>disculpas tambien porque no tengo mucho tiempo para volver a escribir
> >>dichos mails en castellano, asi que les copio a continuacion los mails
> >>que mandamos a la lista de Squeak en ingles.
> >>    Como resumen les cuento de donde se pueden bajar los paquetes:
> >>    1) Aconcagua: www.sourceforge.net/aconcagua, www.squeaksource.com,
> >>public repository de VW.
> >>    2) Chalten: www.sourceforge.net/chalten, www.squeaksource.com,
> >>public repository de VW.
> >>    Ambos proyectos tienen un FAQ (en source forge estan como
> >>documentaicon y en squeak source en el wiki interno)
> >>    Los modelos estan abiertos con licencia MIT, por lo tanto los pueden
> >>usar, mejorar, tirar a la basura, etc.
> >>    Si encuentran cosas interesantes, criticas, etc, seran bienvenidas.
> >>Si quieren los papers y no tienen acceso para bajarlos, avisenme que se
> >>los envio sin problema. Como detalle les comento que ambos modelos
> >>fueron escritos usando TDD y tienen cada uno alrededor de 600 tests,
> >>estan en VisualAge, VisualWorks y Squeak (los tenemos funcionando en
> >>GemStone tambien pero no tuvimos tiempo de subirlos).
> >>    Maxi Taborda hizo las migraciones a cada Smalltalk y va a ampliar
> >>Chalten para que tenga soporte de time zone, otros calendarios, etc.
> >>    Espero les guste y les sea util.
> >>
> >>    Un abrazo,
> >>    Hernan
> >>
> >>--------------------- MAIL DE ACONCAGUA --------------
> >>Hi,
> >>   we create a packaged named Aconcagua at SqueakSource.
> >>   This model represents measures as first class objects, that is, an
> >>object that encapsulates a number with its unit.
> >>   We uploaded a FAQ to its SqueakSource wiki, with some examples. The
> >>model includes almost 600 tests that can be used as examples also.
> >>   We use this model in many of the financial applications we wrote and
> >>it is used by the Gregorian Calendar model we are going to upload soon
> >>(the one presented at ESUG last year).
> >>   The package is going to be available for VisualAge, GemStone,
> >>VisualWorks and Dolphin. (Right now only on Squeak, VisualAge and
> >>GemStone).
> >>   There is also a practitioner report we wrote for OOPSLA about this
> >>model:
> >>
> >>
> >>
>
>(http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=7219643
3
> >&CFTOKEN=8952623
> >
> >
>
><http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=7219643
3
> >&CFTOKEN=8952623>)
> >
> >
> >>   We hope you like it.
> >>   Bye, Hernan.
> >>------------------------ MAIL DE CHALTEN -----------------
> >>Hi,
> >>    we uploaded to SqueakSource a new project called "Chalten" that is
> >>the Squeak implementation of the Gregorian Calendar we presented last
> >>year at ESUG.
> >>    This model reifyes many concepts of the Gregorian Calendar that
> >>Smalltalk-80 does not (like day or day of month, etc).
> >>    This model was born one year and a half ago but we just be able to
> >>open it.
> >>    The main objective of this model is to easily solve problems of the
> >>Gregorian Calendar that are not so easy to do with the Smalltalk-80
> >>classes. It provides also some concepts that are useful for financial
> >>applications like TimeLineFilter and RelativeGregorianDate.
> >>    This model also uses the units models (Aconcagua) we uploaded last
> >>week. Because it uses the units model, there are some concepts that are
> >>not useful anymore, like Duration, because a Duration is a Measure of
> >>
> >>
> >time.
> >
> >
> >>    Anyway, you can read about the model at the SqueakSource wiki (we
> >>wrote a faq with some examples), the ESUG presentation from
> >>http://prog2.vub.ac.be/~cderoove/esugtalks/Wilkinson.pdf
> >><http://prog2.vub.ac.be/%7Ecderoove/esugtalks/Wilkinson.pdf> and the
> >>paper from
> >>
> >>
> >>
>
>http://www.iam.unibe.ch/publikationen/techreports/2005/iam-05-001/file/at_d
ownload
> >
> >
> >>    It comes with almost 600 tests and you can read in the paper how it
> >>compares to Chronology.
> >>    Here are some examples I hope you will like:
> >>
> >>    January first, 2006     --> Creates an instance of GregorianDate for
> >>01/01/2006
> >>    January first              --> Creates an instance of
> >>GregorianDayOfMonth for 01/01
> >>    January, 2006           --> Creates an instance of
> >>GregorianMonthOfYear for January 2006
> >>
> >>    January first, 2006 distanceTo: July first, 2006  --> Returns an
> >>instance of Measure  "181 days"
> >>
> >>    (GregorianYear number: 2006) months collect: [ :aMonthOfYear |
> >>aMonthOfYear lastDate ] -->Returns all the last dates of the 2006
months.
> >>    (GregorianYear number: 2006) dates collect: [ :aDate | aDate
> >>isMonday ] -->Returns all Mondays of 2006
> >>
> >>    "Let's create a filter for all dates..."
> >>     nonWorkingDays := TimelineFilter universe: (TheBeginningOfTime to:
> >>TheEndOfTime).
> >>     "Now, we want Saturdays to be on that filter"
> >>    nonWorkingDays addDayRule: Saturday.
> >>    "Now we want Sundays from January 1st of year 1000 to the end of
> >>time..."
> >>    nonWorkingDays addDayRule: Sunday from: (January first, 1000) to:
> >>TheEndOfTime.
> >>    "Now we want all July 9th since 1816 because is the Independence Day
> >>in Argentina".
> >>    nonWorkingDays addDayOfMonthRule: July ninth from: (July ninth,
> >>1816) to: TheEndOfTime.
> >>    nonWorkingDays includes: (July ninth, 2005) "Returns true"
> >>    nonWorkingDays includes: (July eighth, 2005) "Returns false"
> >>    nonWorkingDays includes: (July sixteenth, 2005) "Returns true, it is
> >>Saturday"
> >>
> >>    "06/01/2005 is a Thursday"
> >>    aTimespan := GregorianTimespan from: (January sixth, 2005) duration:
> >>48 hours.
> >>    aSettleDate := RelativeGregorianDate timespan: aTimespan calendar:
> >>nonWorkingDays negated.
> >>    "Returns false because 10/01/2005, a Monday, is a working day"
> >>    nonWorkingDays includes: (January tenth, 2005).
> >>    "Returns 10/01/2005"
> >>    aSettleDate absoluteDate.
> >>    "Now a new non working day is added to the filter"
> >>    nonWorkingDays addDateRuleFor: (January tenth, 2005).
> >>    "Return true. Now 10/01/2005, is a not working day"
> >>    nonWorkingDays includes: (January tenth, 2005).
> >>    "Now it returns 11/01/2005 because the filter has changed"
> >>    aSettleDate absoluteDate.
> >>
> >>    Hernan.
> >>
> >>--
> >>______________________________
> >>Lic. Hernán A. Wilkinson
> >>Gerente de Desarrollo y Tecnología
> >>Mercap S.R.L.
> >>Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
> >>Buenos Aires - Argentina
> >>http://www.mercapsoftware.com
> >>---------------------------------------------------------------------
> >>Este mensaje es confidencial. Puede contener informacion amparada
> >>por el secreto profesional. Si usted ha recibido este e-mail por error,
> >>por favor comuniquenoslo inmediatamente via e-mail y tenga la
> >>amabilidad de eliminarlo de su sistema; no debera copiar el mensaje
> >>ni divulgar su contenido a ninguna persona. Muchas gracias.
> >>
> >>This message is confidential. It may also contain information that is
> >>privileged or otherwise legally exempt from disclosure. If you have
> >>received it by mistake please let us know by e-mail immediately and
> >>delete it from your system; you should also not copy the message nor
> >>disclose its contents to anyone. Thanks.
> >> ---------------------------------------------------------------------
> >>
> >>
> >>
> >>
> >
> >
> >
> >Para más información sobre la Asociación escribir a info@...
> >
> >Smalltalking es un espacio colaborativo creado para el estudio y
desarrollo en Ambientes de Objetos.
> >Se sustenta gracias a la participación de sus socios.
> >
> >Las reglas de etiqueta sobre la lista están en
http://www.smalltalking.net/join/netiquete.htm
> >
> >Enlaces de Yahoo! Grupos
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
>
>
> --
> ______________________________
> Lic. Hernán A. Wilkinson
> Gerente de Desarrollo y Tecnología
> Mercap S.R.L.
> Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
> Buenos Aires - Argentina
> http://www.mercapsoftware.com
> ---------------------------------------------------------------------
> Este mensaje es confidencial. Puede contener informacion amparada
> por el secreto profesional. Si usted ha recibido este e-mail por error,
> por favor comuniquenoslo inmediatamente via e-mail y tenga la
> amabilidad de eliminarlo de su sistema; no debera copiar el mensaje
> ni divulgar su contenido a ninguna persona. Muchas gracias.
>
> This message is confidential. It may also contain information that is
> privileged or otherwise legally exempt from disclosure. If you have
> received it by mistake please let us know by e-mail immediately and
> delete it from your system; you should also not copy the message nor
> disclose its contents to anyone. Thanks.
>  ---------------------------------------------------------------------
>
>

#14766 De: kikote gregoris <kikogregoris@...>
Fecha: Sáb, 22 de Abr, 2006 2:18 pm
Asunto: Consulta
kikogregoris
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola
 
Queria usar el debug de VC++ para ver que pasa del lado de la libreria que estoy usando, esta es genesis.dll.
Se que me lo explicaron alguna vez pero no encuentro dicho mail.
Se que era facil, pero no me acuerdo.
El ST es MT.
 
saludos kiko

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


#14765 De: "ritualforce" <ritualforce@...>
Fecha: Vie, 21 de Abr, 2006 8:20 pm
Asunto: Re: Ayuda para un principiante!!!
ritualforce
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Gracias Dario, Marcelo, LORD!!!!!, qué grossa que es esta lista!!!,
una hora solamente hace que publiqué mi duda, y ya está respondida y
resuelta!!! . MILLON DE GRACIAS!

Espero ponerme canchero pronto, así también pueda aportar
respondiendo dudas.

Mil gracias chicos!
Salu2.
gabriel gomez.


--- En smalltalking@..., Marcelo Diaz Cortez
<mdc_marcelo@y...> escribió:
>
>  Tenes que cargarlo del squeamap
>  en el Squeak lo podes abrir con boton del mouse
>  open->squemapPackageLoader te abre una ventan que se
> conecta al repositorio de squeak ( para esto tu pc
> tendria que esta a internet) y seleccionas el package.
> O si no esta online lo bajas de la web de la pagina de
>
> squeakmap y lo subis a tu imagen abriendo un file
> browser.
>  click  open+fileBrowser   y asi seleccionas el file
>  o segun sea la extension cambia unos botones de
> contexto.
>  salu2
>  MDC
>
>  --- ritualforce <ritualforce@y...> escribió:
>
> > Buenas tardes gente!!!. El grupo es excelente,
> > muchas gracias de
> > antemano. Les cuento, soy un principiante en esto,
> > estoy adentrándome
> > en este fascinante mundo de SmallTalk, usando
> > obviamente el Squeak
> > 3.8.  El tema es que estoy estudiando con un muy
> > buen libro de Diego
> > Gomez Deck, y en uno de sus ejemplos interactivos,
> > hace alusión a una
> > clase XMLStackParser.
> > Obviamente, en el workspace de Squeak no la
> > encuentra, en el browser de
> > clases no la veo, y no tengo idea cómo seguir. Es un
> > plugin que me
> > falta? Tengo que abrir alguna imagen en especial al
> > abrir el entorno de
> > Squeak?.
> > Cualquier ayuda será bienvenida. Mil gracias!!
> > Saludos.
> > gabriel.
> >
> >
> >
> >
> >
>
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
>

#14764 De: "Lord ZealoN" <lordzealon@...>
Fecha: Vie, 21 de Abr, 2006 7:46 pm
Asunto: Re: [objetos] Ayuda para un principiante!!!
tarzan_y_sus...
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Al final del libro hace referencia a todas las dependencias que puedes
tener, y el cómo cargarlas.

Además, hay un paquete creado por el que te lo deja todo y tal como lo
tiene el para seguir el libro.

Por cierto, el libro (aunque el mundo squeak lo tengo un poco
abandonado por falta de tiempo) es excelente y estoy deseando
retomarlo.

El 21/04/06, Marcelo Diaz Cortez<mdc_marcelo@...> escribió:
>  Tenes que cargarlo del squeamap
>  en el Squeak lo podes abrir con boton del mouse
>  open->squemapPackageLoader te abre una ventan que se
>  conecta al repositorio de squeak ( para esto tu pc
>  tendria que esta a internet) y seleccionas el package.
>  O si no esta online lo bajas de la web de la pagina de
>
>  squeakmap y lo subis a tu imagen abriendo un file
>  browser.
>  click  open+fileBrowser   y asi seleccionas el file
>  o segun sea la extension cambia unos botones de
>  contexto.
>  salu2
>  MDC
>
>  --- ritualforce <ritualforce@...> escribió:
>
>
>  > Buenas tardes gente!!!. El grupo es excelente,
>  > muchas gracias de
>  > antemano. Les cuento, soy un principiante en esto,
>  > estoy adentrándome
>  > en este fascinante mundo de SmallTalk, usando
>  > obviamente el Squeak
>  > 3.8.  El tema es que estoy estudiando con un muy
>  > buen libro de Diego
>  > Gomez Deck, y en uno de sus ejemplos interactivos,
>  > hace alusión a una
>  > clase XMLStackParser.
>  > Obviamente, en el workspace de Squeak no la
>  > encuentra, en el browser de
>  > clases no la veo, y no tengo idea cómo seguir. Es un
>  > plugin que me
>  > falta? Tengo que abrir alguna imagen en especial al
>  > abrir el entorno de
>  > Squeak?.
>  > Cualquier ayuda será bienvenida. Mil gracias!!
>  > Saludos.
>  > gabriel.
>  >
>  >
>  >
>  >
>  >
>
>
>  __________________________________________________
>  Correo Yahoo!
>  Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
>  ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
>
>
>
>  Para más información sobre la Asociación escribir a info@...
>
>  Smalltalking es un espacio colaborativo creado para el estudio y desarrollo
> en Ambientes de Objetos.
>  Se sustenta gracias a la participación de sus socios.
>
>  Las reglas de etiqueta sobre la lista están en
> http://www.smalltalking.net/join/netiquete.htm
>
>
>
>  ________________________________
>  Enlaces de Yahoo! Grupos
>
>
> Para visitar el sitio web del grupo, andá a:
> http://ar.groups.yahoo.com/group/smalltalking/
>
> Para cancelar tu suscripción a este grupo, enviá un mensaje a:
> smalltalking-unsubscribe@...
>
> El uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de
> Yahoo!.


--

::Mi blog::
http://blog.lordzealon.com

#14763 De: "Darío Renzulli" <dario.renzulli@...>
Fecha: Vie, 21 de Abr, 2006 7:55 pm
Asunto: Re: [objetos] Ayuda para un principiante!!!
dario_renzulli
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Gabriel,
 
Tambien en:
 
 
tenes lo que necesitas para hacer el tutorial del libro de Diego.
 
Saludos,
 
D.

 
El día 21/04/06, Marcelo Diaz Cortez <mdc_marcelo@...> escribió:
Tenes que cargarlo del squeamap
en el Squeak lo podes abrir con boton del mouse
open->squemapPackageLoader te abre una ventan que se
conecta al repositorio de squeak ( para esto tu pc
tendria que esta a internet) y seleccionas el package.
O si no esta online lo bajas de la web de la pagina de

squeakmap y lo subis a tu imagen abriendo un file
browser.
click  open+fileBrowser   y asi seleccionas el file
o segun sea la extension cambia unos botones de
contexto.
salu2
MDC

--- ritualforce < ritualforce@...> escribió:

> Buenas tardes gente!!!. El grupo es excelente,
> muchas gracias de
> antemano. Les cuento, soy un principiante en esto,
> estoy adentrándome
> en este fascinante mundo de SmallTalk, usando
> obviamente el Squeak
> 3.8.  El tema es que estoy estudiando con un muy
> buen libro de Diego
> Gomez Deck, y en uno de sus ejemplos interactivos,
> hace alusión a una
> clase XMLStackParser.
> Obviamente, en el workspace de Squeak no la
> encuentra, en el browser de
> clases no la veo, y no tengo idea cómo seguir. Es un
> plugin que me
> falta? Tengo que abrir alguna imagen en especial al
> abrir el entorno de
> Squeak?.
> Cualquier ayuda será bienvenida. Mil gracias!!
> Saludos.
> gabriel.
>
>
>
>
>


__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


Para más información sobre la Asociación escribir a info@...

Smalltalking es un espacio colaborativo creado para el estudio y desarrollo en Ambientes de Objetos.
Se sustenta gracias a la participación de sus socios.

Las reglas de etiqueta sobre la lista están en http://www.smalltalking.net/join/netiquete.htm




Enlaces de Yahoo! Grupos


#14762 De: Marcelo Diaz Cortez <mdc_marcelo@...>
Fecha: Vie, 21 de Abr, 2006 7:11 pm
Asunto: Re: [objetos] Ayuda para un principiante!!!
mdc_marcelo
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Tenes que cargarlo del squeamap
  en el Squeak lo podes abrir con boton del mouse
  open->squemapPackageLoader te abre una ventan que se
conecta al repositorio de squeak ( para esto tu pc
tendria que esta a internet) y seleccionas el package.
O si no esta online lo bajas de la web de la pagina de

squeakmap y lo subis a tu imagen abriendo un file
browser.
  click  open+fileBrowser   y asi seleccionas el file
  o segun sea la extension cambia unos botones de
contexto.
  salu2
  MDC

  --- ritualforce <ritualforce@...> escribió:

> Buenas tardes gente!!!. El grupo es excelente,
> muchas gracias de
> antemano. Les cuento, soy un principiante en esto,
> estoy adentrándome
> en este fascinante mundo de SmallTalk, usando
> obviamente el Squeak
> 3.8.  El tema es que estoy estudiando con un muy
> buen libro de Diego
> Gomez Deck, y en uno de sus ejemplos interactivos,
> hace alusión a una
> clase XMLStackParser.
> Obviamente, en el workspace de Squeak no la
> encuentra, en el browser de
> clases no la veo, y no tengo idea cómo seguir. Es un
> plugin que me
> falta? Tengo que abrir alguna imagen en especial al
> abrir el entorno de
> Squeak?.
> Cualquier ayuda será bienvenida. Mil gracias!!
> Saludos.
> gabriel.
>
>
>
>
>


__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar

#14761 De: "ritualforce" <ritualforce@...>
Fecha: Vie, 21 de Abr, 2006 6:01 pm
Asunto: Ayuda para un principiante!!!
ritualforce
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Buenas tardes gente!!!. El grupo es excelente, muchas gracias de
antemano. Les cuento, soy un principiante en esto, estoy adentrándome
en este fascinante mundo de SmallTalk, usando obviamente el Squeak
3.8.  El tema es que estoy estudiando con un muy buen libro de Diego
Gomez Deck, y en uno de sus ejemplos interactivos, hace alusión a una
clase XMLStackParser.
Obviamente, en el workspace de Squeak no la encuentra, en el browser de
clases no la veo, y no tengo idea cómo seguir. Es un plugin que me
falta? Tengo que abrir alguna imagen en especial al abrir el entorno de
Squeak?.
Cualquier ayuda será bienvenida. Mil gracias!!
Saludos.
gabriel.

#14760 De: Hernan Wilkinson <hernan.wilkinson@...>
Fecha: Vie, 21 de Abr, 2006 1:41 pm
Asunto: Re: [Fwd: Re: [objetos] Modelos de Medidas y Fechas]
hernan_wilki...
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Che Ale, no me llego tu mail a mi... me lo pasaro un pibe del laburo...

Hola Hernán,
Gracias por la información!
No problem! Estamos con ganas de abrir otras cosas, pero nos va a llevar un tiempo.
Actualmente no tengo necesidad de usar soluciones
a unidades ni fechas/calendarios,
pero en el pasado me ha ocurrido, más de una vez, el
tener que implementar soportes de unidades; una de
ellas con motivaciones didácticas además de comerciales.
Si tenes tiempo fijate como quedo el modelo de fechas. Personalmente me gusta mucho, creo que hicimos un buen laburo y se pueden hacer cosas muy simples y ademas con un lenguage similar al natural, por ejemplo:

    January first, 2006  --> Si evaluas esto, te da un instancia de GregorianDate
    (January first, 2006 to: December thirtyfirst, 2006) select: [ :aDate | aDate isMonday ] --> Devuelve todos los lunes del año
    (GregorianYear number: 2006) firstDate to: (GregorianYear number: 2006) lastDate every: (Array with: Monday with: Friday) --> Devuelve una coleccion de lunes y viernes de este año.
  
Bueno, hay muchos ejemplos mas de cosas que creo que son interesantes, como fechas relativas, el uso de las medidas en este modelo, etc.

En este último caso, como resultado de la experiencia
(de mediados/fines de 1999) se produjo el framework
de unidades que está en nuestra página de laboratorio
http://www.smalltalking.net/Lab/index.htm
y usé con bastante éxito para el modelo de fábrica
(en la misma página); que luego extendieron y usaron
otras personas de Smalltalking.
Si, yo recuerdo haberlo visto antes de hacer el nuestro. Nos fijamos varios modelos pero decidimos hacer uno nosotros... la historia viene mas o menos asi:
Aca hacemos sistemas financieros, por lo tanto es importante modelar cosas como "10 pesos", "20 dolares" ,etc. La cosa empezo por ahi, pero despues nos dimos cuenta que hablar de "10 pesos" conceptualmente es similar a hablar de "10 dias" o "20 metros" ,que estas entidades pueden ser modeladas por el mismo concepto y ahi empezamos a ampliar el modelo y pasarlo de algo financiero a algo mas generico. Creo que quedo bastante interesante.
Respecto del modelo de ustedes, no nos servia porque cada unidad era representada por una clase y en ellas estaba la relacion de conversion (si mal no recuerdo). Eso no nos servia porque los usuarios de nuestro sistema pueden crear instrumentos financieros todo el tiempo (bonos, acciones, monedas, etc) entonces teniamos que usar objetos para ellos (no clases... ok, ya se que las clases son objetos, pero se entiende el problema no?)
Bueno, en definitiva nos quedo este modelo de medidas que no sirve unicamente para medidas fisicas y eso es lo mas complicado de explicar. Lo usamos para cualquier cosa que represente un "medida"... se podria usar para representar "3 naranjas", "20 manzanas" o "20 kilos de manzanas", "30 instancias de Object", etc... Creo que en ese sentido nuestro modelo es un poco mas generico del que recuerdo que vimos de ustedes.
Al ser mas generico por ejemplo, no tiene ninguna restriccion en el hecho de hacer "(10 * metro) + (20 * dia)"... Esto devuelve un objeto instancia de MeasureBag en vez de levantar un error. Esto es necesario porque en finanzas es muy comun tener "(1000 * peso) + (5000 * dolar)"... medidas que luego aplicando una conversion de tipo de cambio se pueden unificar en una sola unidad (moneda en este caso).
No se si lo has visto o si tu gente lo ha estudiado al investigar
opciones preexistentes a vuestra implementación;
Si, como puse mas arriba no nos convencieron las que habia. Vimos tambien la de Griggs de VisualWorks, algunas de Java, la de ustedes y no recuerdo si otra mas...
 si es así me gustaría conocer como se relaciona con
ese trabajo, diferencias, críticas, etc... 
En el paper escribimos algunas coparanciones pero no muchas... despues vamos a poner todo online... si alguien esta interesado en que les envie el parper aviseme

como así también
me gustaría conocer si Aconcagua conforma a algún
standard sobre unidades (en el caso del framework
de unidades de Smalltalking, conforma la especificación
del NIST - Sistema de Unidades Internacional, aunque
como es de esperar, no están implementadas todas
las alternativas posibles, sino las más comunes).
No, puesto que la idea de aconcagua termino siendo hacer algo generico, no atado a ningun tipo de estandar o tipo de unidad.
La idea es que si se quiere implementar el standard del NIST, exista una abstraccion que lo haga (Quiza NISTStandard?) donde se definan las unidades y relaciones entre ellas...
bueno, nuevamente gracias por el haberte dado tiempo
para compartir localmente tu trabajo y el de tu gente.
No, yo pido disculpas por haber tardado tanto en mandarlo a estas listas...
Bueno, espero que puedan analizar lo que hicimos y criticarlo, siempre es bueno recibir criticas asi uno mejora lo que hizo.
Les comento que hay un thread en SqueakDev (The Timing of Time) donde estamos intercambiando ideas con el pibe que hizo Chronos... espero que surja algo mejor que Chronos y Chalten con este intercambio...
hasta pronto,
Un abrazo,
Hernan.
Ale.
----- Original Message ----- From: "Hernan Wilkinson" <hernan.wilkinson@...>
To: "smalltalking" <smalltalking@...>
Sent: Wednesday, April 19, 2006 5:30 PM
Subject: [objetos] Modelos de Medidas y Fechas
Que tal gente,
hace rato que quiero enviar este mail y me olvido.
Hace un par de semanas atras abrimos unos modelos que hicimos en
Mercap y de los cuales escribimos unos papers para OOPSLA y ESUG.
Los modelos son:
1) Aconcagua: Para trabajar con medidas
2) Chalten: Modelo del calendario Gregoriano
Dicen que uno no es profeta en su tierra y me di cuenta que todo
esto lo anunciamos en las listas del exterior pero no en las de aca, asi
que pido disculpas por no haberlo hecho a su debido tiempo. Ademas pido
disculpas tambien porque no tengo mucho tiempo para volver a escribir
dichos mails en castellano, asi que les copio a continuacion los mails
que mandamos a la lista de Squeak en ingles.
Como resumen les cuento de donde se pueden bajar los paquetes:
1) Aconcagua: www.sourceforge.net/aconcagua, www.squeaksource.com,
public repository de VW.
2) Chalten: www.sourceforge.net/chalten, www.squeaksource.com,
public repository de VW.
Ambos proyectos tienen un FAQ (en source forge estan como
documentaicon y en squeak source en el wiki interno)
Los modelos estan abiertos con licencia MIT, por lo tanto los pueden
usar, mejorar, tirar a la basura, etc.
Si encuentran cosas interesantes, criticas, etc, seran bienvenidas.
Si quieren los papers y no tienen acceso para bajarlos, avisenme que se
los envio sin problema. Como detalle les comento que ambos modelos
fueron escritos usando TDD y tienen cada uno alrededor de 600 tests,
estan en VisualAge, VisualWorks y Squeak (los tenemos funcionando en
GemStone tambien pero no tuvimos tiempo de subirlos).
Maxi Taborda hizo las migraciones a cada Smalltalk y va a ampliar
Chalten para que tenga soporte de time zone, otros calendarios, etc.
Espero les guste y les sea util.
Un abrazo,
Hernan
--------------------- MAIL DE ACONCAGUA --------------
Hi,
we create a packaged named Aconcagua at SqueakSource.
This model represents measures as first class objects, that is, an
object that encapsulates a number with its unit.
We uploaded a FAQ to its SqueakSource wiki, with some examples. The
model includes almost 600 tests that can be used as examples also.
We use this model in many of the financial applications we wrote and
it is used by the Gregorian Calendar model we are going to upload soon
(the one presented at ESUG last year).
The package is going to be available for VisualAge, GemStone,
VisualWorks and Dolphin. (Right now only on Squeak, VisualAge and
GemStone).
There is also a practitioner report we wrote for OOPSLA about this
model:
(http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=72196433
&CFTOKEN=8952623
<http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=72196433
&CFTOKEN=8952623>)
We hope you like it.
Bye, Hernan.
------------------------ MAIL DE CHALTEN -----------------
Hi,
we uploaded to SqueakSource a new project called "Chalten" that is
the Squeak implementation of the Gregorian Calendar we presented last
year at ESUG.
This model reifyes many concepts of the Gregorian Calendar that
Smalltalk-80 does not (like day or day of month, etc).
This model was born one year and a half ago but we just be able to
open it.
The main objective of this model is to easily solve problems of the
Gregorian Calendar that are not so easy to do with the Smalltalk-80
classes. It provides also some concepts that are useful for financial
applications like TimeLineFilter and RelativeGregorianDate.
This model also uses the units models (Aconcagua) we uploaded last
week. Because it uses the units model, there are some concepts that are
not useful anymore, like Duration, because a Duration is a Measure of
time.
 Anyway, you can read about the model at the SqueakSource wiki (we
wrote a faq with some examples), the ESUG presentation from
http://prog2.vub.ac.be/~cderoove/esugtalks/Wilkinson.pdf
<http://prog2.vub.ac.be/%7Ecderoove/esugtalks/Wilkinson.pdf> and the
paper from
http://www.iam.unibe.ch/publikationen/techreports/2005/iam-05-001/file/at_download
 It comes with almost 600 tests and you can read in the paper how it
compares to Chronology.
Here are some examples I hope you will like:
January first, 2006 --> Creates an instance of GregorianDate for
01/01/2006
January first --> Creates an instance of
GregorianDayOfMonth for 01/01
January, 2006 --> Creates an instance of
GregorianMonthOfYear for January 2006
January first, 2006 distanceTo: July first, 2006 --> Returns an
instance of Measure "181 days"
(GregorianYear number: 2006) months collect: [ :aMonthOfYear |
aMonthOfYear lastDate ] -->Returns all the last dates of the 2006 months.
(GregorianYear number: 2006) dates collect: [ :aDate | aDate
isMonday ] -->Returns all Mondays of 2006
"Let's create a filter for all dates..."
nonWorkingDays := TimelineFilter universe: (TheBeginningOfTime to:
TheEndOfTime).
"Now, we want Saturdays to be on that filter"
nonWorkingDays addDayRule: Saturday.
"Now we want Sundays from January 1st of year 1000 to the end of
time..."
nonWorkingDays addDayRule: Sunday from: (January first, 1000) to:
TheEndOfTime.
"Now we want all July 9th since 1816 because is the Independence Day
in Argentina".
nonWorkingDays addDayOfMonthRule: July ninth from: (July ninth,
1816) to: TheEndOfTime.
nonWorkingDays includes: (July ninth, 2005) "Returns true"
nonWorkingDays includes: (July eighth, 2005) "Returns false"
nonWorkingDays includes: (July sixteenth, 2005) "Returns true, it is
Saturday"
"06/01/2005 is a Thursday"
aTimespan := GregorianTimespan from: (January sixth, 2005) duration:
48 hours.
aSettleDate := RelativeGregorianDate timespan: aTimespan calendar:
nonWorkingDays negated.
"Returns false because 10/01/2005, a Monday, is a working day"
nonWorkingDays includes: (January tenth, 2005).
"Returns 10/01/2005"
aSettleDate absoluteDate.
"Now a new non working day is added to the filter"
nonWorkingDays addDateRuleFor: (January tenth, 2005).
"Return true. Now 10/01/2005, is a not working day"
nonWorkingDays includes: (January tenth, 2005).
"Now it returns 11/01/2005 because the filter has changed"
aSettleDate absoluteDate.
Hernan.
-- ______________________________
Lic. Hernán A. Wilkinson
Gerente de Desarrollo y Tecnología
Mercap S.R.L.
Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
Buenos Aires - Argentina
http://www.mercapsoftware.com
--------------------------------------------------------------------- Este mensaje es confidencial. Puede contener informacion amparada
por el secreto profesional. Si usted ha recibido este e-mail por error,
por favor comuniquenoslo inmediatamente via e-mail y tenga la
amabilidad de eliminarlo de su sistema; no debera copiar el mensaje
ni divulgar su contenido a ninguna persona. Muchas gracias.
This message is confidential. It may also contain information that is
privileged or otherwise legally exempt from disclosure. If you have
received it by mistake please let us know by e-mail immediately and
delete it from your system; you should also not copy the message nor
disclose its contents to anyone. Thanks.
--------------------------------------------------------------------- 

Para más información sobre la Asociación escribir a info@...
Smalltalking es un espacio colaborativo creado para el estudio y desarrollo en Ambientes de Objetos.
Se sustenta gracias a la participación de sus socios.
Las reglas de etiqueta sobre la lista están en http://www.smalltalking.net/join/netiquete.htm
Enlaces de Yahoo! Grupos
<*> Para visitar el sitio web del grupo, andá a:
http://ar.groups.yahoo.com/group/smalltalking/
<*> Para cancelar tu suscripción a este grupo, enviá un mensaje a:
smalltalking-unsubscribe@...
<*> El uso de Yahoo! Grupos está sujeto a las:
http://ar.docs.yahoo.com/info/utos.html


-- ______________________________
Lic. Hernán A. Wilkinson
Gerente de Desarrollo y Tecnología
Mercap S.R.L.
Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
Buenos Aires - Argentina
http://www.mercapsoftware.com
--------------------------------------------------------------------- Este mensaje es confidencial. Puede contener informacion amparada por el secreto profesional. Si usted ha recibido este e-mail por error, por favor comuniquenoslo inmediatamente via e-mail y tenga la amabilidad de eliminarlo de su sistema; no debera copiar el mensaje ni divulgar su contenido a ninguna persona. Muchas gracias. This message is confidential. It may also contain information that is privileged or otherwise legally exempt from disclosure. If you have received it by mistake please let us know by e-mail immediately and delete it from your system; you should also not copy the message nor disclose its contents to anyone. Thanks. --------------------------------------------------------------------- 

#14759 De: "Andres Poncelas" <elortega10@...>
Fecha: Jue, 20 de Abr, 2006 1:10 pm
Asunto: Re: [objetos] Modelos de Medidas y Fechas
elortega10
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hernan
 
Me alegra mucho todo esto y los felicito.
Ojala puedan seguir con estos emprendimientos.
Un saludo, Andrés
 
Andrés P. Poncelas
aponcelas@...
aponcelas@...

>>> hernan.wilkinson@... 19/04/2006 17:30 >>>
Que tal gente,
    hace rato que quiero enviar este mail y me olvido.
    Hace un par de semanas atras abrimos unos modelos que hicimos en Mercap y de los cuales escribimos unos papers para OOPSLA y ESUG.
    Los modelos son:
    1) Aconcagua: Para trabajar con medidas
    2) Chalten: Modelo del calendario Gregoriano

    Dicen que uno no es profeta en su tierra y me di cuenta que todo esto lo anunciamos en las listas del exterior pero no en las de aca, asi que pido disculpas por no haberlo hecho a su debido tiempo. Ademas pido disculpas tambien porque no tengo mucho tiempo para volver a escribir dichos mails en castellano, asi que les copio a continuacion los mails que mandamos a la lista de Squeak en ingles.
    Como resumen les cuento de donde se pueden bajar los paquetes:
    1) Aconcagua: www.sourceforge.net/aconcagua, www.squeaksource.com, public repository de VW.
    2) Chalten: www.sourceforge.net/chalten, www.squeaksource.com, public repository de VW.
    Ambos proyectos tienen un FAQ (en source forge estan como documentaicon y en squeak source en el wiki interno)
    Los modelos estan abiertos con licencia MIT, por lo tanto los pueden usar, mejorar, tirar a la basura, etc.
    Si encuentran cosas interesantes, criticas, etc, seran bienvenidas. Si quieren los papers y no tienen acceso para bajarlos, avisenme que se los envio sin problema. Como detalle les comento que ambos modelos fueron escritos usando TDD y tienen cada uno alrededor de 600 tests, estan en VisualAge, VisualWorks y Squeak (los tenemos funcionando en GemStone tambien pero no tuvimos tiempo de subirlos).
    Maxi Taborda hizo las migraciones a cada Smalltalk y va a ampliar Chalten para que tenga soporte de time zone, otros calendarios, etc.
    Espero les guste y les sea util.

    Un abrazo,
    Hernan

--------------------- MAIL DE ACONCAGUA --------------
Hi,
   we create a packaged named Aconcagua at SqueakSource.
   This model represents measures as first class objects, that is, an object that encapsulates a number with its unit.
   We uploaded a FAQ to its SqueakSource wiki, with some examples. The model includes almost 600 tests that can be used as examples also.
   We use this model in many of the financial applications we wrote and it is used by the Gregorian Calendar model we are going to upload soon (the one presented at ESUG last year).
   The package is going to be available for VisualAge, GemStone, VisualWorks and Dolphin. (Right now only on Squeak, VisualAge and GemStone).
   There is also a practitioner report we wrote for OOPSLA about this model:      (http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=72196433&CFTOKEN=8952623 <http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=72196433&CFTOKEN=8952623>)

   We hope you like it.
   Bye, Hernan.
------------------------ MAIL DE CHALTEN -----------------
Hi,
    we uploaded to SqueakSource a new project called "Chalten" that is the Squeak implementation of the Gregorian Calendar we presented last year at ESUG.
    This model reifyes many concepts of the Gregorian Calendar that Smalltalk-80 does not (like day or day of month, etc).
    This model was born one year and a half ago but we just be able to open it.
    The main objective of this model is to easily solve problems of the Gregorian Calendar that are not so easy to do with the Smalltalk-80 classes. It provides also some concepts that are useful for financial applications like TimeLineFilter and RelativeGregorianDate.
    This model also uses the units models (Aconcagua) we uploaded last week. Because it uses the units model, there are some concepts that are not useful anymore, like Duration, because a Duration is a Measure of time.
    Anyway, you can read about the model at the SqueakSource wiki (we wrote a faq with some examples), the ESUG presentation from http://prog2.vub.ac.be/~cderoove/esugtalks/Wilkinson.pdf and the paper from http://www.iam.unibe.ch/publikationen/techreports/2005/iam-05-001/file/at_download

    It comes with almost 600 tests and you can read in the paper how it compares to Chronology.
    Here are some examples I hope you will like:

    January first, 2006     --> Creates an instance of GregorianDate for 01/01/2006
    January first              --> Creates an instance of GregorianDayOfMonth for 01/01
    January, 2006           --> Creates an instance of GregorianMonthOfYear for January 2006

    January first, 2006 distanceTo: July first, 2006  --> Returns an instance of Measure  "181 days"

    (GregorianYear number: 2006) months collect: [ :aMonthOfYear | aMonthOfYear lastDate ] -->Returns all the last dates of the 2006 months.
    (GregorianYear number: 2006) dates collect: [ :aDate | aDate isMonday ] -->Returns all Mondays of 2006

    "Let's create a filter for all dates..."
     nonWorkingDays := TimelineFilter universe: (TheBeginningOfTime to: TheEndOfTime).
     "Now, we want Saturdays to be on that filter"
    nonWorkingDays addDayRule: Saturday.
    "Now we want Sundays from January 1st of year 1000 to the end of time..."
    nonWorkingDays addDayRule: Sunday from: (January first, 1000) to: TheEndOfTime.
    "Now we want all July 9th since 1816 because is the Independence Day in Argentina".
    nonWorkingDays addDayOfMonthRule: July ninth from: (July ninth, 1816) to: TheEndOfTime.
    nonWorkingDays includes: (July ninth, 2005) "Returns true"
    nonWorkingDays includes: (July eighth, 2005) "Returns false"
    nonWorkingDays includes: (July sixteenth, 2005) "Returns true, it is Saturday"

    "06/01/2005 is a Thursday"
    aTimespan := GregorianTimespan from: (January sixth, 2005) duration: 48 hours.
    aSettleDate := RelativeGregorianDate timespan: aTimespan calendar: nonWorkingDays negated.
    "Returns false because 10/01/2005, a Monday, is a working day"
    nonWorkingDays includes: (January tenth, 2005).
    "Returns 10/01/2005"
    aSettleDate absoluteDate.
    "Now a new non working day is added to the filter"
    nonWorkingDays addDateRuleFor: (January tenth, 2005).
    "Return true. Now 10/01/2005, is a not working day"
    nonWorkingDays includes: (January tenth, 2005).
    "Now it returns 11/01/2005 because the filter has changed"
    aSettleDate absoluteDate.

    Hernan.
-- ______________________________
Lic. Hernán A. Wilkinson
Gerente de Desarrollo y Tecnología
Mercap S.R.L.
Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
Buenos Aires - Argentina
http://www.mercapsoftware.com
--------------------------------------------------------------------- Este mensaje es confidencial. Puede contener informacion amparada por el secreto profesional. Si usted ha recibido este e-mail por error, por favor comuniquenoslo inmediatamente via e-mail y tenga la amabilidad de eliminarlo de su sistema; no debera copiar el mensaje ni divulgar su contenido a ninguna persona. Muchas gracias. This message is confidential. It may also contain information that is privileged or otherwise legally exempt from disclosure. If you have received it by mistake please let us know by e-mail immediately and delete it from your system; you should also not copy the message nor disclose its contents to anyone. Thanks. --------------------------------------------------------------------- 

---------------------------------------------------------------------------------
The information contained in this message is private and confidential,
intended only for the use of the individual or entity to whom it is
addressed. If you are not the intended recipient, your are hereby
notified that any disclosure, copying, or distribution is strictly
prohibited. If you have received this message in error, please notify us
immediately by responding to this email an then delete it from your system.

All e-mails and attachments sent and received are subject to regular
monitoring, reading and archival by Pan American Energy and as such,
reasonably tested against "viruses", "malware" and other similar
failures before leaving our systems. The recipient of this e-mail is
solely responsible for checking for the presence of "Viruses" or other
"Malware" entering its own systems. Pan American Energy accepts no
liability for any damage caused by any such code transmitted by or
accompanying this e-mail or any attachment. Thanks you.


La información contenida en este mensaje es privada y confidencial.
Si usted no es el destinatario del mismo, queda notificado por este
medio que esta prohibido revelar, copiar o distribuir esta información.
Si ha recibido este mensaje por error, por favor notifique al
remitente en forma inmediata y proceda a borrarlo del sistema.

Todos los e-mails y adjuntos enviados y recibidos están sujetos a una
revisión regular, leídos y archivados por Pan American Energy y de esta
manera, razonablemente probados contra “virus”, “malware” y otras fallas
similares antes de dejar nuestros sistemas. El receptor de este e-mail
es único responsable por controlar la presencia de “virus” u otro
“malware” entrando en sus propios sistemas. Pan American Energy no acepta
responsabilidad por cualquier daño causado por cualquier código transmitido
por o acompañando este e-mail o cualquier adjunto. Muchas gracias.
----------------------------------------------------------------------------------

>>>


#14758 De: "Alejandro F. Reimondo" <aleReimondo@...>
Fecha: Mié, 19 de Abr, 2006 10:16 pm
Asunto: Re: [objetos] Modelos de Medidas y Fechas
alereimondo
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola Hernán,
Gracias por la información!
Actualmente no tengo necesidad de usar soluciones
  a unidades ni fechas/calendarios,
  pero en el pasado me ha ocurrido, más de una vez, el
  tener que implementar soportes de unidades; una de
  ellas con motivaciones didácticas además de comerciales.
En este último caso, como resultado de la experiencia
  (de mediados/fines de 1999) se produjo el framework
  de unidades que está en nuestra página de laboratorio
  http://www.smalltalking.net/Lab/index.htm
  y usé con bastante éxito para el modelo de fábrica
  (en la misma página); que luego extendieron y usaron
  otras personas de Smalltalking.
No se si lo has visto o si tu gente lo ha estudiado al investigar
  opciones preexistentes a vuestra implementación;
  si es así me gustaría conocer como se relaciona con
  ese trabajo, diferencias, críticas, etc... como así también
  me gustaría conocer si Aconcagua conforma a algún
  standard sobre unidades (en el caso del framework
  de unidades de Smalltalking, conforma la especificación
  del NIST - Sistema de Unidades Internacional, aunque
  como es de esperar, no están implementadas todas
  las alternativas posibles, sino las más comunes).
bueno, nuevamente gracias por el haberte dado tiempo
  para compartir localmente tu trabajo y el de tu gente.
hasta pronto,
Ale.



----- Original Message -----
From: "Hernan Wilkinson" <hernan.wilkinson@...>
To: "smalltalking" <smalltalking@...>
Sent: Wednesday, April 19, 2006 5:30 PM
Subject: [objetos] Modelos de Medidas y Fechas


> Que tal gente,
>     hace rato que quiero enviar este mail y me olvido.
>     Hace un par de semanas atras abrimos unos modelos que hicimos en
> Mercap y de los cuales escribimos unos papers para OOPSLA y ESUG.
>     Los modelos son:
>     1) Aconcagua: Para trabajar con medidas
>     2) Chalten: Modelo del calendario Gregoriano
>
>     Dicen que uno no es profeta en su tierra y me di cuenta que todo
> esto lo anunciamos en las listas del exterior pero no en las de aca, asi
> que pido disculpas por no haberlo hecho a su debido tiempo. Ademas pido
> disculpas tambien porque no tengo mucho tiempo para volver a escribir
> dichos mails en castellano, asi que les copio a continuacion los mails
> que mandamos a la lista de Squeak en ingles.
>     Como resumen les cuento de donde se pueden bajar los paquetes:
>     1) Aconcagua: www.sourceforge.net/aconcagua, www.squeaksource.com,
> public repository de VW.
>     2) Chalten: www.sourceforge.net/chalten, www.squeaksource.com,
> public repository de VW.
>     Ambos proyectos tienen un FAQ (en source forge estan como
> documentaicon y en squeak source en el wiki interno)
>     Los modelos estan abiertos con licencia MIT, por lo tanto los pueden
> usar, mejorar, tirar a la basura, etc.
>     Si encuentran cosas interesantes, criticas, etc, seran bienvenidas.
> Si quieren los papers y no tienen acceso para bajarlos, avisenme que se
> los envio sin problema. Como detalle les comento que ambos modelos
> fueron escritos usando TDD y tienen cada uno alrededor de 600 tests,
> estan en VisualAge, VisualWorks y Squeak (los tenemos funcionando en
> GemStone tambien pero no tuvimos tiempo de subirlos).
>     Maxi Taborda hizo las migraciones a cada Smalltalk y va a ampliar
> Chalten para que tenga soporte de time zone, otros calendarios, etc.
>     Espero les guste y les sea util.
>
>     Un abrazo,
>     Hernan
>
> --------------------- MAIL DE ACONCAGUA --------------
> Hi,
>    we create a packaged named Aconcagua at SqueakSource.
>    This model represents measures as first class objects, that is, an
> object that encapsulates a number with its unit.
>    We uploaded a FAQ to its SqueakSource wiki, with some examples. The
> model includes almost 600 tests that can be used as examples also.
>    We use this model in many of the financial applications we wrote and
> it is used by the Gregorian Calendar model we are going to upload soon
> (the one presented at ESUG last year).
>    The package is going to be available for VisualAge, GemStone,
> VisualWorks and Dolphin. (Right now only on Squeak, VisualAge and
> GemStone).
>    There is also a practitioner report we wrote for OOPSLA about this
> model:
>
(http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=72196433
&CFTOKEN=8952623
>
<http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=72196433
&CFTOKEN=8952623>)
>
>
>    We hope you like it.
>    Bye, Hernan.
> ------------------------ MAIL DE CHALTEN -----------------
> Hi,
>     we uploaded to SqueakSource a new project called "Chalten" that is
> the Squeak implementation of the Gregorian Calendar we presented last
> year at ESUG.
>     This model reifyes many concepts of the Gregorian Calendar that
> Smalltalk-80 does not (like day or day of month, etc).
>     This model was born one year and a half ago but we just be able to
> open it.
>     The main objective of this model is to easily solve problems of the
> Gregorian Calendar that are not so easy to do with the Smalltalk-80
> classes. It provides also some concepts that are useful for financial
> applications like TimeLineFilter and RelativeGregorianDate.
>     This model also uses the units models (Aconcagua) we uploaded last
> week. Because it uses the units model, there are some concepts that are
> not useful anymore, like Duration, because a Duration is a Measure of
time.
>     Anyway, you can read about the model at the SqueakSource wiki (we
> wrote a faq with some examples), the ESUG presentation from
> http://prog2.vub.ac.be/~cderoove/esugtalks/Wilkinson.pdf
> <http://prog2.vub.ac.be/%7Ecderoove/esugtalks/Wilkinson.pdf> and the
> paper from
>
http://www.iam.unibe.ch/publikationen/techreports/2005/iam-05-001/file/at_downlo\
ad
>
>     It comes with almost 600 tests and you can read in the paper how it
> compares to Chronology.
>     Here are some examples I hope you will like:
>
>     January first, 2006     --> Creates an instance of GregorianDate for
> 01/01/2006
>     January first              --> Creates an instance of
> GregorianDayOfMonth for 01/01
>     January, 2006           --> Creates an instance of
> GregorianMonthOfYear for January 2006
>
>     January first, 2006 distanceTo: July first, 2006  --> Returns an
> instance of Measure  "181 days"
>
>     (GregorianYear number: 2006) months collect: [ :aMonthOfYear |
> aMonthOfYear lastDate ] -->Returns all the last dates of the 2006 months.
>     (GregorianYear number: 2006) dates collect: [ :aDate | aDate
> isMonday ] -->Returns all Mondays of 2006
>
>     "Let's create a filter for all dates..."
>      nonWorkingDays := TimelineFilter universe: (TheBeginningOfTime to:
> TheEndOfTime).
>      "Now, we want Saturdays to be on that filter"
>     nonWorkingDays addDayRule: Saturday.
>     "Now we want Sundays from January 1st of year 1000 to the end of
> time..."
>     nonWorkingDays addDayRule: Sunday from: (January first, 1000) to:
> TheEndOfTime.
>     "Now we want all July 9th since 1816 because is the Independence Day
> in Argentina".
>     nonWorkingDays addDayOfMonthRule: July ninth from: (July ninth,
> 1816) to: TheEndOfTime.
>     nonWorkingDays includes: (July ninth, 2005) "Returns true"
>     nonWorkingDays includes: (July eighth, 2005) "Returns false"
>     nonWorkingDays includes: (July sixteenth, 2005) "Returns true, it is
> Saturday"
>
>     "06/01/2005 is a Thursday"
>     aTimespan := GregorianTimespan from: (January sixth, 2005) duration:
> 48 hours.
>     aSettleDate := RelativeGregorianDate timespan: aTimespan calendar:
> nonWorkingDays negated.
>     "Returns false because 10/01/2005, a Monday, is a working day"
>     nonWorkingDays includes: (January tenth, 2005).
>     "Returns 10/01/2005"
>     aSettleDate absoluteDate.
>     "Now a new non working day is added to the filter"
>     nonWorkingDays addDateRuleFor: (January tenth, 2005).
>     "Return true. Now 10/01/2005, is a not working day"
>     nonWorkingDays includes: (January tenth, 2005).
>     "Now it returns 11/01/2005 because the filter has changed"
>     aSettleDate absoluteDate.
>
>     Hernan.
>
> --
> ______________________________
> Lic. Hernán A. Wilkinson
> Gerente de Desarrollo y Tecnología
> Mercap S.R.L.
> Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
> Buenos Aires - Argentina
> http://www.mercapsoftware.com
> ---------------------------------------------------------------------
> Este mensaje es confidencial. Puede contener informacion amparada
> por el secreto profesional. Si usted ha recibido este e-mail por error,
> por favor comuniquenoslo inmediatamente via e-mail y tenga la
> amabilidad de eliminarlo de su sistema; no debera copiar el mensaje
> ni divulgar su contenido a ninguna persona. Muchas gracias.
>
> This message is confidential. It may also contain information that is
> privileged or otherwise legally exempt from disclosure. If you have
> received it by mistake please let us know by e-mail immediately and
> delete it from your system; you should also not copy the message nor
> disclose its contents to anyone. Thanks.
>  ---------------------------------------------------------------------
>
>

#14757 De: Hernan Wilkinson <hernan.wilkinson@...>
Fecha: Mié, 19 de Abr, 2006 8:30 pm
Asunto: Modelos de Medidas y Fechas
hernan_wilki...
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Que tal gente,
    hace rato que quiero enviar este mail y me olvido.
    Hace un par de semanas atras abrimos unos modelos que hicimos en Mercap y de los cuales escribimos unos papers para OOPSLA y ESUG.
    Los modelos son:
    1) Aconcagua: Para trabajar con medidas
    2) Chalten: Modelo del calendario Gregoriano

    Dicen que uno no es profeta en su tierra y me di cuenta que todo esto lo anunciamos en las listas del exterior pero no en las de aca, asi que pido disculpas por no haberlo hecho a su debido tiempo. Ademas pido disculpas tambien porque no tengo mucho tiempo para volver a escribir dichos mails en castellano, asi que les copio a continuacion los mails que mandamos a la lista de Squeak en ingles.
    Como resumen les cuento de donde se pueden bajar los paquetes:
    1) Aconcagua: www.sourceforge.net/aconcagua, www.squeaksource.com, public repository de VW.
    2) Chalten: www.sourceforge.net/chalten, www.squeaksource.com, public repository de VW.
    Ambos proyectos tienen un FAQ (en source forge estan como documentaicon y en squeak source en el wiki interno)
    Los modelos estan abiertos con licencia MIT, por lo tanto los pueden usar, mejorar, tirar a la basura, etc.
    Si encuentran cosas interesantes, criticas, etc, seran bienvenidas. Si quieren los papers y no tienen acceso para bajarlos, avisenme que se los envio sin problema. Como detalle les comento que ambos modelos fueron escritos usando TDD y tienen cada uno alrededor de 600 tests, estan en VisualAge, VisualWorks y Squeak (los tenemos funcionando en GemStone tambien pero no tuvimos tiempo de subirlos).
    Maxi Taborda hizo las migraciones a cada Smalltalk y va a ampliar Chalten para que tenga soporte de time zone, otros calendarios, etc.
    Espero les guste y les sea util.

    Un abrazo,
    Hernan

--------------------- MAIL DE ACONCAGUA --------------
Hi,
   we create a packaged named Aconcagua at SqueakSource.
   This model represents measures as first class objects, that is, an object that encapsulates a number with its unit.
   We uploaded a FAQ to its SqueakSource wiki, with some examples. The model includes almost 600 tests that can be used as examples also.
   We use this model in many of the financial applications we wrote and it is used by the Gregorian Calendar model we are going to upload soon (the one presented at ESUG last year).
   The package is going to be available for VisualAge, GemStone, VisualWorks and Dolphin. (Right now only on Squeak, VisualAge and GemStone).
   There is also a practitioner report we wrote for OOPSLA about this model:      (http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=72196433&CFTOKEN=8952623 <http://portal.acm.org/citation.cfm?id=1094964&coll=ACM&dl=ACM&CFID=72196433&CFTOKEN=8952623>)

   We hope you like it.
   Bye, Hernan.
------------------------ MAIL DE CHALTEN -----------------
Hi,
    we uploaded to SqueakSource a new project called "Chalten" that is the Squeak implementation of the Gregorian Calendar we presented last year at ESUG.
    This model reifyes many concepts of the Gregorian Calendar that Smalltalk-80 does not (like day or day of month, etc).
    This model was born one year and a half ago but we just be able to open it.
    The main objective of this model is to easily solve problems of the Gregorian Calendar that are not so easy to do with the Smalltalk-80 classes. It provides also some concepts that are useful for financial applications like TimeLineFilter and RelativeGregorianDate.
    This model also uses the units models (Aconcagua) we uploaded last week. Because it uses the units model, there are some concepts that are not useful anymore, like Duration, because a Duration is a Measure of time.
    Anyway, you can read about the model at the SqueakSource wiki (we wrote a faq with some examples), the ESUG presentation from http://prog2.vub.ac.be/~cderoove/esugtalks/Wilkinson.pdf and the paper from http://www.iam.unibe.ch/publikationen/techreports/2005/iam-05-001/file/at_download

    It comes with almost 600 tests and you can read in the paper how it compares to Chronology.
    Here are some examples I hope you will like:

    January first, 2006     --> Creates an instance of GregorianDate for 01/01/2006
    January first              --> Creates an instance of GregorianDayOfMonth for 01/01
    January, 2006           --> Creates an instance of GregorianMonthOfYear for January 2006

    January first, 2006 distanceTo: July first, 2006  --> Returns an instance of Measure  "181 days"

    (GregorianYear number: 2006) months collect: [ :aMonthOfYear | aMonthOfYear lastDate ] -->Returns all the last dates of the 2006 months.
    (GregorianYear number: 2006) dates collect: [ :aDate | aDate isMonday ] -->Returns all Mondays of 2006

    “Let’s create a filter for all dates...”
     nonWorkingDays := TimelineFilter universe: (TheBeginningOfTime to: TheEndOfTime).
     “Now, we want Saturdays to be on that filter”
    nonWorkingDays addDayRule: Saturday.
    “Now we want Sundays from January 1st of year 1000 to the end of time...”
    nonWorkingDays addDayRule: Sunday from: (January first, 1000) to: TheEndOfTime.
    “Now we want all July 9th since 1816 because is the Independence Day in Argentina”.
    nonWorkingDays addDayOfMonthRule: July ninth from: (July ninth, 1816) to: TheEndOfTime.
    nonWorkingDays includes: (July ninth, 2005) “Returns true”
    nonWorkingDays includes: (July eighth, 2005) “Returns false”
    nonWorkingDays includes: (July sixteenth, 2005) “Returns true, it is Saturday”

    “06/01/2005 is a Thursday”
    aTimespan := GregorianTimespan from: (January sixth, 2005) duration: 48 hours.
    aSettleDate := RelativeGregorianDate timespan: aTimespan calendar: nonWorkingDays negated.
    “Returns false because 10/01/2005, a Monday, is a working day”
    nonWorkingDays includes: (January tenth, 2005).
    “Returns 10/01/2005”
    aSettleDate absoluteDate.
    ”Now a new non working day is added to the filter”
    nonWorkingDays addDateRuleFor: (January tenth, 2005).
    “Return true. Now 10/01/2005, is a not working day”
    nonWorkingDays includes: (January tenth, 2005).
    “Now it returns 11/01/2005 because the filter has changed”
    aSettleDate absoluteDate.

    Hernan.

-- ______________________________
Lic. Hernán A. Wilkinson
Gerente de Desarrollo y Tecnología
Mercap S.R.L.
Tacuari 202 - 7mo Piso - Tel: 54-11-4878-1118
Buenos Aires - Argentina
http://www.mercapsoftware.com
--------------------------------------------------------------------- Este mensaje es confidencial. Puede contener informacion amparada por el secreto profesional. Si usted ha recibido este e-mail por error, por favor comuniquenoslo inmediatamente via e-mail y tenga la amabilidad de eliminarlo de su sistema; no debera copiar el mensaje ni divulgar su contenido a ninguna persona. Muchas gracias. This message is confidential. It may also contain information that is privileged or otherwise legally exempt from disclosure. If you have received it by mistake please let us know by e-mail immediately and delete it from your system; you should also not copy the message nor disclose its contents to anyone. Thanks. --------------------------------------------------------------------- 

#14756 De: "Lord ZealoN" <lordzealon@...>
Fecha: Lun, 17 de Abr, 2006 8:05 pm
Asunto: Re: [objetos] GO y Smalltalk
tarzan_y_sus...
Sin conexión Sin conexión
Enviar correo Enviar correo
 
El problema de GO no es por tecnología tradicional o no. No es
cuestión de si C/C++, Delphi, Java, PHP, o bash.

El problema de GO son las tan grandes posibildiades en cualquier
momento. Que un ordenador (o varios) no es capaz de procesar todas las
subsecuentes posibilidades.

El ajedrez (64 casillas), es ir "hacia adelante" y generar un arbol de
posibles movimientos hasta llegar al jaque-mate. Pero en Go (361
casillas) puedes mover en cualquier lugar y cambiar el rumbo de la
partida con un sólo movimiento.

Yo de tí le hecharía un ojo al siguiente enlace, que explican
muchísimo mejor que yo el porqué Go no tiene un programa de
Inteligencia Artificial "competente"

http://perso.wanadoo.es/lejuan/go/cgoindice.htm

En él habla sobre el tema que comentamos.

Por eso, yo comentaba en mi anterior mail de poder crear una
aplicación para jugar Persona vs Persona. Un cliente para el servidor
KGS por ejemplo, pero no contra el ordenador.

Un saludo.

El 17/04/06, kikote gregoris<kikogregoris@...> escribió:
>
> Hola
>
> Es cierto lo que dicen, no hay buenos programas sobre GO en tecnología
> tradicional .
> Es por eso que preguntaba si había algo en ST .
> Se que hay en java, pero es una bosta.
>
> saludos kiko
>
>
> Lord ZealoN <lordzealon@...> escribió:
>
> Si, pero al menos una interfaz para jugar en KGS si que sería interesante
> hacer.
>
> La parte de la IA ya es otra cosa.
>
> El 17/04/06, Bruno BB (st)<smalltalk@...> escribió:
> >
> >
> >
> >  > Alguien sabe si hay una implementacion del juego de tablero chino GO.
> >  > Claro esta que la implementacion en ST .
> >
> >  Me parece dificil !
> >
> >  Por lo que se las implementaciones de GO en informatica todavia estan en
> >  pañales.
> >  El mejor programa de GO solo puede enfrentarse con jugadores de nivel
> >  medio, y es facilmente vencido por jugadores expertos.
> >
> >  saludos bruno
> >
> >
> >
> >
> >  Para más información sobre la Asociación escribir a info@...
> >
> >  Smalltalking es un espacio colaborativo creado para el estudio y
> desarrollo
> > en Ambientes de Objetos.
> >  Se sustenta gracias a la participación de sus socios.
> >
> >  Las reglas de etiqueta sobre la lista están en
> > http://www.smalltalking.net/join/netiquete.htm
> >
> >
> >
> >  ________________________________
> >  Enlaces de Yahoo! Grupos
> >
> >
> > Para visitar el sitio web del grupo, andá a:
> > http://ar.groups.yahoo.com/group/smalltalking/
> >
> > Para cancelar tu suscripción a este grupo, enviá un mensaje a:
> > smalltalking-unsubscribe@...
> >
> > El uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de
> > Yahoo!.
>
>
> --
>
> ::Mi blog::
> http://blog.lordzealon.com
>
>  ________________________________
>  Enlaces de Yahoo! Grupos
>
>
> Para visitar el sitio web del grupo, andá a:
> http://ar.groups.yahoo.com/group/smalltalking/
>
> Para cancelar tu suscripción a este grupo, enviá un mensaje a:
> smalltalking-unsubscribe@...
>
> El uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de
> Yahoo!.
>
>
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
>
>
>
>  Para más información sobre la Asociación escribir a info@...
>
>  Smalltalking es un espacio colaborativo creado para el estudio y desarrollo
> en Ambientes de Objetos.
>  Se sustenta gracias a la participación de sus socios.
>
>  Las reglas de etiqueta sobre la lista están en
> http://www.smalltalking.net/join/netiquete.htm
>
>
>
>  ________________________________
>  Enlaces de Yahoo! Grupos
>
>
> Para visitar el sitio web del grupo, andá a:
> http://ar.groups.yahoo.com/group/smalltalking/
>
> Para cancelar tu suscripción a este grupo, enviá un mensaje a:
> smalltalking-unsubscribe@...
>
> El uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de
> Yahoo!.


--

::Mi blog::
http://blog.lordzealon.com

#14755 De: kikote gregoris <kikogregoris@...>
Fecha: Lun, 17 de Abr, 2006 7:48 pm
Asunto: Re: [objetos] GO y Smalltalk
kikogregoris
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola
 
Es cierto lo que dicen, no hay buenos programas sobre GO en tecnología tradicional .
Es por eso que preguntaba si había algo en ST .
Se que hay en java, pero es una bosta.
 
saludos kiko


Lord ZealoN <lordzealon@...> escribió:
Si, pero al menos una interfaz para jugar en KGS si que sería interesante hacer.

La parte de la IA ya es otra cosa.

El 17/04/06, Bruno BB (st)<smalltalk@...> escribió:
>
>
>
>  > Alguien sabe si hay una implementacion del juego de tablero chino GO.
>  > Claro esta que la implementacion en ST .
>
>  Me parece dificil !
>
>  Por lo que se las implementaciones de GO en informatica todavia estan en
>  pañales.
>  El mejor programa de GO solo puede enfrentarse con jugadores de nivel
>  medio, y es facilmente vencido por jugadores expertos.
>
>  saludos bruno
>
>
>
>
>  Para más información sobre la Asociación escribir a info@...
>
>  Smalltalking es un espacio colaborativo creado para el estudio y desarrollo
> en Ambientes de Objetos.
>  Se sustenta gracias a la participación de sus socios.
>
>  Las reglas de etiqueta sobre la lista están en
> http://www.smalltalking.net/join/netiquete.htm
>
>
>
>  ________________________________
>  Enlaces de Yahoo! Grupos
>
>
> Para visitar el sitio web del grupo, andá a:
> http://ar.groups.yahoo.com/group/smalltalking/
>
> Para cancelar tu suscripción a este grupo, enviá un mensaje a:
> smalltalking-unsubscribe@...
>
> El uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de
> Yahoo!.


--

::Mi blog::
http://blog.lordzealon.com


Enlaces de Yahoo! Grupos


__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


#14754 De: "Lord ZealoN" <lordzealon@...>
Fecha: Lun, 17 de Abr, 2006 5:48 pm
Asunto: Re: [objetos] GO y Smalltalk
tarzan_y_sus...
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Si, pero al menos una interfaz para jugar en KGS si que sería interesante hacer.

La parte de la IA ya es otra cosa.

El 17/04/06, Bruno BB (st)<smalltalk@...> escribió:
>
>
>
>  > Alguien sabe si hay una implementacion del juego de tablero chino GO.
>  > Claro esta que la implementacion en ST .
>
>  Me parece dificil !
>
>  Por lo que se las implementaciones de GO en informatica todavia estan en
>  pañales.
>  El mejor programa de GO solo puede enfrentarse con jugadores de nivel
>  medio, y es facilmente vencido por jugadores expertos.
>
>  saludos bruno
>
>
>
>
>  Para más información sobre la Asociación escribir a info@...
>
>  Smalltalking es un espacio colaborativo creado para el estudio y desarrollo
> en Ambientes de Objetos.
>  Se sustenta gracias a la participación de sus socios.
>
>  Las reglas de etiqueta sobre la lista están en
> http://www.smalltalking.net/join/netiquete.htm
>
>
>
>  ________________________________
>  Enlaces de Yahoo! Grupos
>
>
> Para visitar el sitio web del grupo, andá a:
> http://ar.groups.yahoo.com/group/smalltalking/
>
> Para cancelar tu suscripción a este grupo, enviá un mensaje a:
> smalltalking-unsubscribe@...
>
> El uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de
> Yahoo!.


--

::Mi blog::
http://blog.lordzealon.com

#14753 De: mariano ll <malo_gabi1@...>
Fecha: Lun, 17 de Abr, 2006 5:57 pm
Asunto: Re: [objetos] dudas en dolphin 5
malo_gabi1
Sin conexión Sin conexión
Enviar correo Enviar correo
 


Hola Martin y Bruno:
 
gracias por sus consejos pero sigo con dudas :).
 
Pregunta 1:
Si estoy seguro, es más lo probé invocándolo desde un workspace como me aconsejaste bruno y me aparece el caption, pero el problema es que no logro invocarlo cuando elijo en las opciones de la clase views -> show.
¿ La pregunta ahora seria, como puedo hacer para poder verlo cuando lo invoca otro shell.?
 
Pregunta 3:
Les comento mas o menos como es el tema: tengo un objeto socio (ya definido) el cual lo “pateo” a un dialog para q me muestre sus datos. El problema es q tanto el "docTipo" como la ciudad estan definidas en el dialog como Combox.
Probé con el mensaje selection y no me da resultado.
Hice mas o menos esto:
 
ListPresenter selection: (model subject docTipo).
 
Hay algún problema con ello?.
 
Pregunta 4 y 5: Estuve buscando los paquetes q me recomendaron para bajar, pero el tema es que son Active – X, y el tema es q no se como vincularlos con el ambiente. Tienen algun ejemplo o donde puedo averiguar como se hace.
 
Gracias por la ayuda y espero q me puedan ayudar nuevamente.
 
Mariano.
 
 
 
"Bruno BB (st)" <smalltalk@...> escribió:


> 1.Como puedo hacer para agregar una caption a una
> shell cualquiera. La defino en el view composer, pero
> cuando invoco al método show para verla me aparece
> como no definida "Untitled".

Creaste un Presenter y luego asociaste el Shell del ViewComposer a este
presenter ?
Evalual en un workspace:
shell := Shell show.
shell view caption: 'JEJEJJE XXXXX'.

> 2.Como hago para poder concatenar dos string en uno
> sola.

newString := 'hola ', 'como te va'. " concatenas con la coma , "

> 3.Como hago para mostrar un valor como predefinido en
> un combo box. Especifico el modelo (una Ordered
> Collection) pero como hago para que uno de los objetos
> aparezca como predefinido en la pantalla.

lp := ListPresenter showOn: #(1 2 8 9 6 7) asOrderedCollection.
lp selection: 6.
"si es un objeto complejo se hace igual"

> 4. Como hago para manejar gráficos estadísticos,
> necesito saber si hay alguna clase q lo haga y si es
> posible me gustaría ver un ejemplo.
>
En DX6 trae para hacer graficos. http://www.alchemetrics.org/
Esta hecho en DX6.

> 5. Existe alguna clase que maneje ecuaciones
> diferenciales. Tuve q cargar "manualmente", un mensaje q lo soportará
> mediante un método numérico, me gustaría saber si existe alguna en el
> enorme ambiente que viene en la imagen, para poder obtener resultados
> mas exactos.


Hay un package para Dolphin pero no me acuerdo si maneja ecuaciones
diferenciales.

Saludos Bruno



Martin Rubi <mrubi@...> escribió:
Hola Mariano.

> 1.Como puedo hacer para agregar una caption a una
> shell cualquiera. La defino en el view composer, pero
> cuando invoco al método show para verla me aparece
> como no definida "Untitled".

No se porque no ves el caption correcto. Lo unico que se me ocurre es que la
View donde lo definiste no sea la 'default view' de ese shell. ¿Que hiciste
exactamente para crear ese Shell?

>   2.Como hago para poder concatenar dos string en uno
> sola.

Si queres obtener una coleccion que sea la concatencacion de otras 2, podes
usar el mensaje #,

unString, otroString

>   3.Como hago para mostrar un valor como predefinido en
> un combo box. Especifico el modelo (una Ordered
> Collection) pero como hago para que uno de los objetos
> aparezca como predefinido en la pantalla.

Si estas usando un ListPresenter, entonces podes hacer

aListPresenter model: (ListModel on: aCollection).
aListPresenter selection: anObject.    "aCollection includes: anObject"

Si estas usando un ChoicePresenter podes hacer

aChoicePresenter choices: aCollection.
aChoicePresenter model: anObject.    "aCollection includes: anObject"

> 4. Como hago para manejar gráficos estadísticos,
> necesito saber si hay alguna clase q lo haga y si es
> posible me gustaría ver un ejemplo.

Por lo que pude leer, varias personas suelen usar un control active x que
muestre charts. El mas popular parece ser TeeChart:
http://www.steema.com/

Si alguien conoce otras manera de mostrar los mismos (o mejores o mas
lindos) charts que TeeChart, me sumo al pedido de informacion.

> 5. Existe alguna clase que maneje ecuaciones
> diferenciales. Tuve q cargar "manualmente", un mensaje q lo soportará
mediante un método numérico, me gustaría saber si existe alguna en el enorme
ambiente que viene en la imagen, para poder obtener resultados mas exactos.

Aunque existe al menos un package con varios algoritmos numericos, no
conozco ninguno que resuelva ecuaciones diferenciales.
Si alguien conoce alguno para Dolphin o algun otro dialecto, me sumo al
pedido de informacion

saludos
martin


__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


#14752 De: "Bruno BB (st)" <smalltalk@...>
Fecha: Lun, 17 de Abr, 2006 3:36 pm
Asunto: Re: [objetos] GO y Smalltalk
brunobrasesco
Sin conexión Sin conexión
Enviar correo Enviar correo
 
> Alguien sabe si hay una implementacion del juego de tablero chino GO.
> Claro esta que la implementacion en ST .

Me parece dificil !

Por lo que se las implementaciones de GO en informatica todavia estan en
pañales.
El mejor programa de GO solo puede enfrentarse con jugadores de nivel
medio, y es facilmente vencido por jugadores expertos.

saludos bruno

#14751 De: kikote gregoris <kikogregoris@...>
Fecha: Lun, 17 de Abr, 2006 2:20 pm
Asunto: GO y Smalltalk
kikogregoris
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola gente
 
 
Alguien sabe si hay una implementacion del juego de tablero chino GO.
Claro esta que la implementacion en ST .
 
saludos kiko

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


#14750 De: mariano ll <malo_gabi1@...>
Fecha: Lun, 10 de Abr, 2006 6:26 pm
Asunto: Re: [objetos] dudas en dolphin 5
malo_gabi1
Sin conexión Sin conexión
Enviar correo Enviar correo
 
Hola Martin y Bruno:
 
gracias por sus consejos pero sigo con dudas :).
 
Pregunta 1:
Si estoy seguro, es más lo probé invocándolo desde un workspace como me aconsejaste bruno y me aparece el caption, pero el problema es que no logro invocarlo cuando elijo en las opciones de la clase views -> show.
¿ La pregunta ahora seria, como puedo hacer para poder verlo cuando lo invoca otro shell.?
 
Pregunta 3:
Les comento mas o menos como es el tema: tengo un objeto socio (ya definido) el cual lo “pateo” a un dialog para q me muestre sus datos. El problema es q tanto el "docTipo" como la ciudad estan definidas en el dialog como Combox.
Probé con el mensaje selection y no me da resultado.
Hice mas o menos esto:
 
ListPresenter selection: (model subject docTipo).
 
Hay algún problema con ello?.
 
Pregunta 4 y 5: Estuve buscando los paquetes q me recomendaron para bajar, pero el tema es que son Active – X, y el tema es q no se como vincularlos con el ambiente. Tienen algun ejemplo o donde puedo averiguar como se hace.
 
Gracias por la ayuda y espero q me puedan ayudar nuevamente.
 
Mariano.
 
 
 
"Bruno BB (st)" <smalltalk@...> escribió:


> 1.Como puedo hacer para agregar una caption a una
> shell cualquiera. La defino en el view composer, pero
> cuando invoco al método show para verla me aparece
> como no definida "Untitled".

Creaste un Presenter y luego asociaste el Shell del ViewComposer a este
presenter ?
Evalual en un workspace:
shell := Shell show.
shell view caption: 'JEJEJJE XXXXX'.

> 2.Como hago para poder concatenar dos string en uno
> sola.

newString := 'hola ', 'como te va'. " concatenas con la coma , "

> 3.Como hago para mostrar un valor como predefinido en
> un combo box. Especifico el modelo (una Ordered
> Collection) pero como hago para que uno de los objetos
> aparezca como predefinido en la pantalla.

lp := ListPresenter showOn: #(1 2 8 9 6 7) asOrderedCollection.
lp selection: 6.
"si es un objeto complejo se hace igual"

> 4. Como hago para manejar gráficos estadísticos,
> necesito saber si hay alguna clase q lo haga y si es
> posible me gustaría ver un ejemplo.
>
En DX6 trae para hacer graficos. http://www.alchemetrics.org/
Esta hecho en DX6.

> 5. Existe alguna clase que maneje ecuaciones
> diferenciales. Tuve q cargar "manualmente", un mensaje q lo soportará
> mediante un método numérico, me gustaría saber si existe alguna en el
> enorme ambiente que viene en la imagen, para poder obtener resultados
> mas exactos.


Hay un package para Dolphin pero no me acuerdo si maneja ecuaciones
diferenciales.

Saludos Bruno



Martin Rubi <mrubi@...> escribió:
Hola Mariano.

> 1.Como puedo hacer para agregar una caption a una
> shell cualquiera. La defino en el view composer, pero
> cuando invoco al método show para verla me aparece
> como no definida "Untitled".

No se porque no ves el caption correcto. Lo unico que se me ocurre es que la
View donde lo definiste no sea la 'default view' de ese shell. ¿Que hiciste
exactamente para crear ese Shell?

>   2.Como hago para poder concatenar dos string en uno
> sola.

Si queres obtener una coleccion que sea la concatencacion de otras 2, podes
usar el mensaje #,

unString, otroString

>   3.Como hago para mostrar un valor como predefinido en
> un combo box. Especifico el modelo (una Ordered
> Collection) pero como hago para que uno de los objetos
> aparezca como predefinido en la pantalla.

Si estas usando un ListPresenter, entonces podes hacer

aListPresenter model: (ListModel on: aCollection).
aListPresenter selection: anObject.    "aCollection includes: anObject"

Si estas usando un ChoicePresenter podes hacer

aChoicePresenter choices: aCollection.
aChoicePresenter model: anObject.    "aCollection includes: anObject"

> 4. Como hago para manejar gráficos estadísticos,
> necesito saber si hay alguna clase q lo haga y si es
> posible me gustaría ver un ejemplo.

Por lo que pude leer, varias personas suelen usar un control active x que
muestre charts. El mas popular parece ser TeeChart:
http://www.steema.com/

Si alguien conoce otras manera de mostrar los mismos (o mejores o mas
lindos) charts que TeeChart, me sumo al pedido de informacion.

> 5. Existe alguna clase que maneje ecuaciones
> diferenciales. Tuve q cargar "manualmente", un mensaje q lo soportará
mediante un método numérico, me gustaría saber si existe alguna en el enorme
ambiente que viene en la imagen, para poder obtener resultados mas exactos.

Aunque existe al menos un package con varios algoritmos numericos, no
conozco ninguno que resuelva ecuaciones diferenciales.
Si alguien conoce alguno para Dolphin o algun otro dialecto, me sumo al
pedido de informacion

saludos
martin


__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


Mensajes 14750 - 14779 de 17190   Más reciente  |  < Más reciente  |  Más antiguo >  |  Más antiguo
Avanzado

Copyright © 2009 Yahoo! de Argentina S.R.L. Todos los derechos reservados.
Política de privacidad - Condiciones del Servicio - Reglas de la comunidad de Yahoo! - Ayuda