2011-12-08 9 views
35

Soy un Rubyista que está empezando a incursionar en Smalltalk y estoy tratando de elegir una implementación para experimentar. Parece que Squeak o Pharo serían una buena opción, pero estoy teniendo problemas para encontrar la información actual que ayude a decidir cuál sería mejor. Mucho de lo que encuentro a través de las búsquedas de Google es de hace un par de años y es posible que ya no sea relevante.Squeak o Pharo para el comienzo Smalltalker?

¿Hay un claro favorito en estos días? Si no, ¿cuáles son los pros y los contras de cada uno?

Respuesta

28

Hasta cierto punto, es una cuestión de gusto personal. Pharo es un tenedor de Squeak que pretende convertirlo en la versión más moderna de Smalltalk, a veces a expensas de no mantener la compatibilidad con Squeak.

Pharo ser un tenedor, también significa que comparten mucho en común, desde la VM a grandes partes de la biblioteca de la clase. Muchos agregan paquetes de trabajo con ambos, y algunos se desarrollan con Squeak como plataforma primaria de desarrollo y supongo que un número un poco mayor de ellos se desarrollan en Pharo (Seaside, Pier, etc.). Ambas variantes tienen libros de introducción gratuitos: Squeak por ejemplo y Pharo por ejemplo, pero Pharo uno parece más actualizado.

personalmente prefiero Pharo ya que me da la sensación más limpia y más moderna.

5

Puede haber un claro favorito, pero hay que desarrollarla por sí mismo.

Pharo y chirrido tienen grandes partes en común. Pero como pharo es un tenedor de chirrido, también significa que divergen el uno del otro.

Si se mira desde el ángulo de aprender Smalltalk continuación, ambos son iguales. Si miras desde el ángulo de las tecnologías compatibles, entonces la situación podría ser un poco diferente. La mayoría de los desarrolladores son squeakers o pharoers. Y los desarrolladores crean bibliotecas y marcos de soporte tecnológicos. Si el desarrollador de una biblioteca es un pharoer, esperaría que la biblioteca se mantenga mejor en pharo que en chirrido (y viceversa).

probablemente debería echar un vistazo a ambos y tratar las cosas que quiere lograr. En la mayoría de los casos, la experiencia será la misma. Tan pronto como deja de ser lo mismo, es posible que ya conozcas tu favorito.

9

Hay una serie de interesantes puntos de partida posibles:

  • Mar-de un solo clic para hacer el desarrollo web;
  • MOOSE reingeniería de software con un solo clic para crear modelos de navegadores y visualizaciones;
  • Pharo de un solo clic para seguir el libro Pharo por ejemplo (más al día que el chillido uno) con una biblioteca de más arriba limpiado;
  • Cuis para un modelo de gráficos limpios (Morphic);
  • EToys con un solo clic si le interesan los aspectos educativos;
  • Squeak-de un solo clic de un entorno con una gran cantidad de herramientas interesantes & juguetes.

explicar más acerca de lo que quiere lograr y podemos ayudar mejor

5

La mayor tracción en este momento es disfrutado por Pharo, así que me gustaría ir allí. El segundo puesto es Visual Works. Solo ten cuidado, ningún dialecto de Smalltalk está teniendo mucha tracción en este momento.

Mi razonamiento es el siguiente. Hoy, Smalltalk se usa para dos cosas: programación web e investigación. Para ambos, Pharo tiene la sartén por el mango (Seaside usa Pharo como su plataforma predeterminada, y la Universidad de Lille saca la mayor cantidad de artículos de Smalltalk, todos basados ​​en Pharo).

Lo tercero para lo que se usa Smalltalk, aunque cada vez menos, es el desarrollo de software bancario. Allí, VW sigue siendo popular. Además, VW tiene el mejor inspector de objetos.

+5

# 4. Escribo aplicaciones de escritorio (e incluso scripts de shell) con Pharo;) ¿Puedo ser el único que queda? –

2

También hay VisualAge (VAST) por Instanciations y una edición reciente es Smalltalk/X, que comparten una interfaz similar, que a su vez es muy diferente de Pharo o Squeak. Uso Pharo para mis investigaciones, proyectos de mascotas y algunas pruebas de conceptos. Mi paquete de software corporativo se realiza en VAST/VASmalltalk/VisualAge, cualquiera que sea el nombre que prefiera. Además, recuerde, GNUSmalltalk.

3

Estoy haciendo una serie de tutoriales sobre cómo usar Squeak from very the start, así que, naturalmente, estoy predispuesto a favor de Squeak. Por supuesto, no tengo miedo de utilizar una horquilla diferente para mostrar paquetes específicos más fácilmente. Por ejemplo, utilizo la imagen del muelle con un solo clic para presentar Seaside and Pier y básicamente es Pharo.

+0

Oh, bien. Echaré un vistazo a los videos. – gregspurrier

9

Otra opción para aprender Smalltalk es Cuis.

partir de la descripción:

Cuis es diferente de otras variantes de Squeak en que se necesita una actitud activa hacia la complejidad del sistema: Como los sistemas se hacen mayores, por lo general se vuelven más complejas. Las nuevas características se agregan como capas encima de lo que está debajo, a veces sin entenderlo realmente, y casi siempre sin modificarlo. ... La única forma de evitar esto es comprender el sistema completo y rediseñar todo el sistema todo el tiempo. Manteniéndolo simple y consistente.

El código está en Github. Los archivos de imagen más recientes son here.

Cuis tiene alrededor de 600 clases. Esto hace que sea muy factible que una sola persona entienda todo. Más adelante, es posible que desee cambiar a Squeak, Pharo u otro Smalltalk ya que la gran mayoría de las clases y métodos son compatibles.

+2

600 clases en comparación con las 7000 clases de pharo. Nada mal, eso es más de 10 veces más simple, sin duda echaré un vistazo a CUIS. En realidad, pharo tiene aún más clases que Java 7 y Java 5 combinadas: D http://stackoverflow.com/questions/3112882/how-many-classes-are-there-in-java-standard-edition – Kilon

+1

Actualicé el Cuis github enlace web del repositorio. Desde la versión 4.2 hay un nuevo repositorio. –

2

Aunque no estrictamente una implementación de Smalltalk uno no debe pasar por alto Newspeak. Todavía no es un entorno de producción, pero si te has sentido dividido entre Alan Kay y Nicolas Wirth como expertos en idiomas Newspeak es como Smalltalk y Modula2 combinados.

Cuestiones relacionadas