Implementando y Usando Network-*

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

Implementando y Usando Network-*

Angel Java Lopez
Hola gente!

Pregunto por aca, que tengo mas confianza ;-)

Creo haber leido a maese @garduino preguntando sobre implementar todo lo de
Network-* (como se llama a eso? paquete? libreria?), que esta en Pharo (y
que sepa, en Squeak) para Cuis.

Preguntas:

- Por que hace falta portarlo? Acaso Cuis no nacio de un Squeak? Que le
falta para implementar ese Network-*?

- Estuve "pispieando" en un Pharo-1.3, las clases de Network-*. Puede ser
que gran parte de los frameworks cliente usen SocketStream? Es decir, si se
implementa SocketStream, no se habra solucionado gran parte del consumo, no
empezaran a funcionar los frameworks que se apoyan en estas clases?

- Porque SocketStream tiene dos estados, ascii y binario? En otras
tecnologias, hay dos clases, un Stream binario, y un Stream de texto,
genericas, y luego habla implementaciones sobre strings, sobre archivos,
sobre un socket TCP abierto. Cual fue la motivacion para tener eso de
"tengo dos estados" en una misma clase?

Gracias por cualquier info.

(tengo la impresion que puedo implementar algun ejemplo de SocketStream,
cliente, como un web crawler, con mi actual implementacion AjTalk en c#,
pero veo, un proyecto para antes del verano? ;-)

Nos leemos!

Angel "Java" Lopez
Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

Edgar De Cleene
> Hola gente!
>
>
> Pregunto por aca, que tengo mas confianza ;-)
>
> Creo haber leido a maese @garduino preguntando sobre implementar todo lo de
> Network-* (como se llama a eso? paquete? libreria?), que esta en Pharo (y que
> sepa, en Squeak) para Cuis.
>
> Preguntas:
>
> - Por que hace falta portarlo? Acaso Cuis no nacio de un Squeak? Que le falta
> para implementar ese Network-*?
>
> - Estuve "pispieando" en un Pharo-1.3, las clases de Network-*. Puede ser que
> gran parte de los frameworks cliente usen SocketStream? Es decir, si se
> implementa SocketStream, no se habra solucionado gran parte del consumo, no
> empezaran a funcionar los frameworks que se apoyan en estas clases?
>
> - Porque SocketStream tiene dos estados, ascii y binario? En otras
> tecnologias, hay dos clases, un Stream binario, y un Stream de texto,
> genericas, y luego habla implementaciones sobre strings, sobre archivos, sobre
> un socket TCP abierto. Cual fue la motivacion para tener eso de "tengo dos
> estados" en una misma clase?
>
> Gracias por cualquier info.
>
> (tengo la impresion que puedo implementar algun ejemplo de SocketStream,
> cliente, como un web crawler, con mi actual implementacion AjTalk en c#, pero
> veo, un proyecto para antes del verano? ;-)
>
> Nos leemos!
>
> Angel "Java" Lopez
>


Yo tengo category: 'Network-Kernel' dentro de mi variante a Cuis.

http://squeakros.org/Cuis3dot2/CuiSantafesino.zip.

Eso es el Cuis reducido de Juan con algun pequeño aporte mio.
Limpio...

Se corta la luz intermitentemente , asi que por el momento no subo a prender
"OldWarrior", que es la maquina que corre el wiki donde cuento mis
desventuras con Cuis.

Supongo que en los .changes habra quedado algo de lo que hice, que no fue
otra cosa que meter de prepo lo que estaba en Squeak en ese momento.

Te cuento que con eso no es suficiente para hacer web, tenes que meter todo
el paquete, que hoy en Squeak seria Network-dtl.137 y que podes bajar de
http://source.squeak.org/trunk


Suerte


Edgar


Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

J. Vuletich (mail lists)
In reply to this post by Angel Java Lopez


Hola Angel,

No sé si voy a contestar en concreto alguna de tus preguntas... Pero esto es lo que puedo aportar.

Cuis fue forkeado de Squeak 3.7. La idea principal es limpiar, limpiar y limpiar. Pero no eliminé nada de Networking. En http://www.jvuletich.org/Cuis/Index.html  describo un poco el proyecto. También en http://www.jvuletich.org/Cuis/CuisReleaseNotes.html  , incluyendo los cambios más importantes en cada release.

No puedo aportar demasiado sobre las diferencias en networking entre Squeak, Pharo y Cuis...

Saludos,

Juan Vuletich

Quoting Angel Java Lopez <[hidden email]>:

> Hola gente!
>
>
> Pregunto por aca, que tengo mas confianza ;-)
>
>
> Creo haber leido a maese @garduino preguntando sobre implementar todo lo de Network-* (como se llama a eso? paquete? libreria?), que esta en Pharo (y que sepa, en Squeak) para Cuis.
>
>
> Preguntas:
>
>
> - Por que hace falta portarlo? Acaso Cuis no nacio de un Squeak? Que le falta para implementar ese Network-*?
>
>
> - Estuve "pispieando" en un Pharo-1.3, las clases de Network-*. Puede ser que gran parte de los frameworks cliente usen SocketStream? Es decir, si se implementa SocketStream, no se habra solucionado gran parte del consumo, no empezaran a funcionar los frameworks que se apoyan en estas clases?
>
>
> - Porque SocketStream tiene dos estados, ascii y binario? En otras tecnologias, hay dos clases, un Stream binario, y un Stream de texto, genericas, y luego habla implementaciones sobre strings, sobre archivos, sobre un socket TCP abierto. Cual fue la motivacion para tener eso de "tengo dos estados" en una misma clase?
>
>
> Gracias por cualquier info.
>
>
> (tengo la impresion que puedo implementar algun ejemplo de SocketStream, cliente, como un web crawler, con mi actual implementacion AjTalk en c#, pero veo, un proyecto para antes del verano? ;-)
>
>
> Nos leemos!
>
>
> Angel "Java" Lopez
>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

garduino
In reply to this post by Angel Java Lopez
Hola Gente!

Sumo mis aportes:

El 28 de noviembre de 2012 11:42, Angel Java Lopez
<[hidden email]>escribió:

> **
>
>
> Hola gente!
>
> Pregunto por aca, que tengo mas confianza ;-)
>
> Creo haber leido a maese @garduino preguntando sobre implementar todo lo
> de Network-* (como se llama a eso? paquete? libreria?), que esta en Pharo
> (y que sepa, en Squeak) para Cuis.
>
>

Cuando escribí "Network-*" me refiero a las categorías (agrupaciones de
clases) que empiezan con esa denominación. Con una o más categorías se
puede hacer un paquete.



> Preguntas:
>
> - Por que hace falta portarlo? Acaso Cuis no nacio de un Squeak? Que le
> falta para implementar ese Network-*?
>
>
Como dice Juan, algunas clases vienen del fork de 2007 y otras el rehizo.
En el interim muchas cosas cambiaron tanto en Cuis como en Pharo y muchas
cosas de las que uno intenta portar (frameworks por ejemplo) están
construido sobre eso "que cambió" en Pharo o Squeak.

En mi caso, hice varios intentos para organizarme, y creo que me estoy
quedando con el último, el de ayer a la tarde. Yo había arrancado con un
paquete (paquete de Cuis) que se llama Pharo14CLayer, con la idea de meter
en ese compatibility layer lo que haga falta para hacer a Cuis compatible
con Pharo. Pronto me di cuenta que eso es un lío porque depende mucho del
paquete a portar.

Así que ahora, para cosas sueltas (clases, métodos, etc) estoy armando un
CLayer por paquete, por ejemplo CuisSandstoneDB-Pharo14CLayer.

Para cosas más grandes (o sea, no clases y métodos sueltos) seguramente
convenga armar el paquete en cuestión.



> - Estuve "pispieando" en un Pharo-1.3, las clases de Network-*. Puede ser
> que gran parte de los frameworks cliente usen SocketStream? Es decir, si se
> implementa SocketStream, no se habra solucionado gran parte del consumo, no
> empezaran a funcionar los frameworks que se apoyan en estas clases?
>
> - Porque SocketStream tiene dos estados, ascii y binario? En otras
> tecnologias, hay dos clases, un Stream binario, y un Stream de texto,
> genericas, y luego habla implementaciones sobre strings, sobre archivos,
> sobre un socket TCP abierto. Cual fue la motivacion para tener eso de
> "tengo dos estados" en una misma clase?
>
>

Estos dos puntos no te los puedo contestar sin revisar más profundamente,
lo mío fue más pragmático, empecé portando cosas y a medida
que iba encontrando errores, fixeaba, pero es posible que con el punto 1
tengas razón.

Otro tema que complica las cosas es el soporte Unicode que en algunos
paquetes tiene código desparramado por todos lados y Cuis no trabaja con
Unicode.

Sobre lo de los dos estados en una misma clase, habría que indagar la
historia, no se porque están implementados así.



> Gracias por cualquier info.
>
> (tengo la impresion que puedo implementar algun ejemplo de SocketStream,
> cliente, como un web crawler, con mi actual implementacion AjTalk en c#,
> pero veo, un proyecto para antes del verano? ;-)
>
> Nos leemos!
>
> Angel "Java" Lopez
>
>
Es lo que puedo aportar.

Saludos!
@garduino
Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

garduino
In reply to this post by Edgar De Cleene
Hola Angel de nuevo!

El 28 de noviembre de 2012 15:13, Edgar J. De Cleene <[hidden email]
> escribió:

> **
>
>
> > Hola gente!
> >
> >
> > Pregunto por aca, que tengo mas confianza ;-)
> >
>

Se agradece! Es la idea de esta lista, un lugar donde preguntar y aprender
y compartir.
Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

garduino
In reply to this post by Edgar De Cleene
Hola Edgar!

El 28 de noviembre de 2012 15:13, Edgar J. De Cleene <[hidden email]
> escribió:

> **
>
>
>
> Yo tengo category: 'Network-Kernel' dentro de mi variante a Cuis.
>
>
Si, Cuis igual!



> http://squeakros.org/Cuis3dot2/CuiSantafesino.zip.
>
> Eso es el Cuis reducido de Juan con algun pequeño aporte mio.
> Limpio...
>
> Se corta la luz intermitentemente , asi que por el momento no subo a
> prender
> "OldWarrior", que es la maquina que corre el wiki donde cuento mis
> desventuras con Cuis.
>
>

Acá tb hay tormenta.... Con respecto a desventuras, mirá que se yo, para mi
también es desventurado hoy día
renegar con Squeak y/o Pharo, así que de los 3 para lo que estoy haciendo
ahora [*] elegí Cuis y de paso ayudo un poco
(eso creo) en un proyecto local.



> Supongo que en los .changes habra quedado algo de lo que hice, que no fue
> otra cosa que meter de prepo lo que estaba en Squeak en ese momento.
>
> Te cuento que con eso no es suficiente para hacer web, tenes que meter todo
> el paquete, que hoy en Squeak seria Network-dtl.137 y que podes bajar de
> http://source.squeak.org/trunk
>
>
Bueno, mi idea era justamente ver que era lo mínimo indispensable para
hacer andar Sport/Swazoo, inclusive (como me explicó Janko) sólo usando
plain sockets (sin UTF8) ya que así funciona Aida. La idea es que con una
imagen armada que ande pipi-cucu con Sport/Swazoo Janko vería de portar
Aida y tendríamos un framework web maduro y estable en Cuis.




> Suerte
>
> Edgar
>
>
[*] Más novedades pronto!



Saludos!
@garduino
Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

Edgar De Cleene
> Janko vería de portar Aida y tendríamos un framework web maduro y estable en
> Cuis.


Yo abandone porque incluso en Cuis mas sucios no logro que lea los source.st
provenientes de descomprimir primero los .mcz.

Mismo pasa tratando de leerlos directamente.


Suerte con Cuis, volvi al Squeak (mis derivados) y ahi me pienso quedar.



Edgar


Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

Angel Java Lopez
Hola gente!

Muchas gracias por los datos.... hmmm... ni conocia que estaban Sport y
Swazoo...

Bien, maese @morplenauta... y por que no lee los source.st? En que parte se
traba el Cuis?

Para alguien que cada madrugada se pone a parsear .st, me resulta
interesante el tema.

2012/11/28 Edgar J. De Cleene <[hidden email]>

> **
>
>
> > Janko vería de portar Aida y tendríamos un framework web maduro y
> estable en
> > Cuis.
>
> Yo abandone porque incluso en Cuis mas sucios no logro que lea los
> source.st
> provenientes de descomprimir primero los .mcz.
>
> Mismo pasa tratando de leerlos directamente.
>
> Suerte con Cuis, volvi al Squeak (mis derivados) y ahi me pienso quedar.
>
> Edgar
>
>  
>
Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

garduino
In reply to this post by Edgar De Cleene
El 28 de noviembre de 2012 17:27, Edgar J. De Cleene <[hidden email]
> escribió:

> **
>
>
> > Janko vería de portar Aida y tendríamos un framework web maduro y
> estable en
> > Cuis.
>
> Yo abandone porque incluso en Cuis mas sucios no logro que lea los
> source.st
> provenientes de descomprimir primero los .mcz.
>
> Mismo pasa tratando de leerlos directamente.
>
>
Pero de qué paquetes? A mi jamás me falló esa lectura. Lo que si hago
muchas veces es en lugar de importar un .mcz es abrir el browser del código
e ir importando en el orden necesario, dependiendo de los errores y demás.



> Suerte con Cuis, volvi al Squeak (mis derivados) y ahi me pienso quedar.
>
>
Gracias!

Yo en cambio, lo poco que puedo hacer con Smalltalk, me decanté por Cuis y
veré si puedo aprender un poco de S8.

Saludos.
Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

garduino
In reply to this post by Angel Java Lopez
Hola:

El 28 de noviembre de 2012 18:29, Angel Java Lopez
<[hidden email]>escribió:

> **
>
>
> Hola gente!
>
> Muchas gracias por los datos.... hmmm... ni conocia que estaban Sport y
> Swazoo...
>
>
No me animo a afirmarlo, pero Swazoo es muy conocido en el mundo ST y me
animo a decir que anterior a Comanche.

Salud!
Reply | Threaded
Open this post in threaded view
|

Re: Implementando y Usando Network-*

Edgar De Cleene
> Swazoo es muy conocido en el mundo ST y me animo a decir que anterior a
> Comanche.


Para mi a Comanche no hay con que darle.
No sera el mas rápido, pero si el mas completo.
El esquema de seguridad es sencillo, tendrias que copiarlo a Swazoo o
implementar algo parecido.

Subo a la Sala di Maccine para repetir el intento con Aida y contar porque
se traba.


Edgar




Reply | Threaded
Open this post in threaded view
|

Cuisomancia en gotas (fue Re: [squeakRos] Implementando y Usando Network-*)

Edgar De Cleene
In reply to this post by Angel Java Lopez
> Hola gente!
>
>
> Muchas gracias por los datos.... hmmm... ni conocia que estaban Sport y
> Swazoo...
>
> Bien, maese @morplenauta... y por que no lee los source.st? En que parte se
> traba el Cuis?
>
> Para alguien que cada madrugada se pone a parsear .st, me resulta interesante
> el tema.



Como el proposito es compartir y aprender, aca va el experimento en curso.
Tratar de incorporar el ultimo Aida a este Cuis

http://squeakros.org/Cuis3dot2/CuiSantafesino.zip.

En lo posible, que siga limpio.

Primera dependencia, Sport-2.031.mcz.
Importa desde el .mcz, despues de importarlo haciendo

Undeclared removeUnreferencedKeys; inspect.

#FileUrl #ProtocolClientError #TimeStamp #underlyingFilename

Como veras, si lo queres limpio tendrias que resolver esas dependencias.
Puede hacerse a manopla , haciendo fileOut de cada clase en la imagen base ,
Squeak4dot4 y luego haciendo fileIn.

Sigo en este momento con las depedencias

Swazoo-2.3beta3.1.mcz

haciendo

Undeclared removeUnreferencedKeys; inspect.

#ByteString (aca si que cagaste, esta dependecia te va a volver loco,
tendras que importar mucho de otro lado, agrega que las Strings en Cuis no
se puede re definir) #FileUrl #MD5 #ProtocolClientError #SHA1 #Security
#TimeStamp #UTF8TextConverter #underlyingFilename

Intento con

Aida6.5-janko.2.mcz


Esos son los errores que da, a manopla podes intentar corregir cada uno.

Y si te gusta el tema de parser, en vez de instal cliquea code y en vez fe
abrirte un CodeBrowser veras un hermoso debugger

Edgar

image.jpg (20K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Cuisomancia en gotas (fue Re: [squeakRos] Implementando y Usando Network-*)

Angel Java Lopez
Hola gente!

Maese @morplenauta, para un newbie en Smalltalk como yo, muy buena info!

Hmm... por que a @garduino le carga?

El parser, es viejo desde el comienzo? Probaria ese metodo que termina en
-1, copiar y pegarlo como un metodo de Object o algo asi, para ver si el
parser original del que parte la imagen lo compila, o no. O es que el
parser "se arruina" al haber cargado alguna de las cosas nuevas (no imagino
como)

Curiosidad: se arregla ese metodo que no parsea, poniendo, en lugar de
"string size -1" algo como "(string size - 1)" con un - binario, le puse un
blanco entre el - y el 1, en vez de unario con -1?

Algunos pasos no los entiendo, trato de averiguar, sino pregunto por aqui.

Nos leemos!

Angel "Java" Lopez
@ajlopez

2012/11/29 Edgar J. De Cleene <[hidden email]>

> **
>
>
> Hola gente!
>
>
> Muchas gracias por los datos.... hmmm... ni conocia que estaban Sport y
> Swazoo...
>
> Bien, maese @morplenauta... y por que no lee los* source.s*t? En que
> parte se traba el Cuis?
>
> Para alguien que cada madrugada se pone a parsear .st, me resulta
> interesante el tema.
>
>
>
>
> Como el proposito es compartir y aprender, aca va el experimento en curso.
> Tratar de incorporar el ultimo Aida a este Cuis
>
> *http://squeakros.org/Cuis3dot2/CuiSantafesino.zip*.
>
> En lo posible, que siga limpio.
>
> Primera dependencia, Sport-2.031.mcz.
> Importa desde el .mcz, despues de importarlo haciendo
>
> Undeclared removeUnreferencedKeys; inspect.
>
> #FileUrl #ProtocolClientError #TimeStamp #underlyingFilename
>
> Como veras, si lo queres limpio tendrias que resolver esas dependencias.
> Puede hacerse a manopla , haciendo fileOut de cada clase en la imagen base
> , Squeak4dot4 y luego haciendo fileIn.
>
> Sigo en este momento con las depedencias
>
> Swazoo-2.3beta3.1.mcz
>
> haciendo
>
> Undeclared removeUnreferencedKeys; inspect.
>
> #ByteString (aca si que cagaste, esta dependecia te va a volver loco,
> tendras que importar mucho de otro lado, agrega que las Strings en Cuis no
> se puede re definir) #FileUrl #MD5 #ProtocolClientError #SHA1 #Security
> #TimeStamp #UTF8TextConverter #underlyingFilename
>
> Intento con
>
> Aida6.5-janko.2.mcz
>
>
> Esos son los errores que da, a manopla podes intentar corregir cada uno.
>
> Y si te gusta el tema de parser, en vez de instal cliquea code y en vez fe
> abrirte un CodeBrowser veras un hermoso debugger
>
> Edgar
>
>  
>

image.jpg (20K) Download Attachment