1) ¡Sí! Siempre es bueno aprender un idioma. Si va a aprender un idioma, conviértalo en un idioma poderoso e influyente que se pueda aprender fácil y rápidamente.
Smalltalk sigue siendo un lenguaje y un entorno preeminentes para el aprendizaje de conceptos orientados a objetos.
Son todos los objetos, hasta el final. Esto lo convierte en un enfoque de trabajo realmente coherente.
Los enteros son instancias de Class Integer. Las cadenas son una colección de objetos de carácter. Las clases son objetos de instancia singleton para la clase que definen.
Las estructuras de control funcionan enviando mensajes get a instancias de Class Boolean.
Incluso los métodos anónimos (bloques de código, también conocidos como bloques) son objetos.
Todo se hace enviando un mensaje a un objeto. La sintaxis se puede colocar en una postal.
La claridad de los conceptos y su implementación en Smalltalk significa que puede desarrollar formas de pensamiento que se transfieren directamente a Java, Ruby y C #. Supongo que también es cierto para Python.
Es tan bueno para aclarar los conceptos que una importante universidad del Reino Unido utilizó Smalltalk para capacitar a 5.000 personas al año en informática orientada a objetos.
Squeak 5, acaba de ser lanzado. Ha obtenido importantes aumentos en el rendimiento de su nueva máquina virtual Cog / Spur, que cuenta con recolección de basura progresiva.
Pharo 4 tiene un hermoso tema de escritorio de aspecto limpio. La próxima versión, Pharo 5, se lanzará pronto. Pasará a usar Cog / Spur VM, tendrá alrededor de 5,000 clases en la versión y paquetes adicionales de clases están disponibles en la red a través de la herramienta Configuration Browser.
Squeak 5 funciona incluso en Raspberry Pis de primera generación, y es casi un 50% más rápido en el nuevo Raspberry Pi zero de $ 5. $ 99 le compra una Raspberry Pi 2, pantalla y carcasa, con un IDE maduro y con todas las funciones.
Se están realizando investigaciones de vanguardia en sistemas OO coordinados y distribuidos en Smalltalk (por ejemplo, Naiad y Spoon).
Algunas de las bases de datos corporativas más grandes del mundo se ejecutan en Smalltalk, incluido el seguimiento del 60% de los contenedores de envío del mundo y los sistemas comerciales del banco más grande del mundo.
Puede usar Smalltalk como una especie de CoffeeScript superpoderoso, escribiendo en Amber Smalltalk y transpirándolo a JavaScript, ejecutándose en el navegador.
Squeak, Pharo y Amber son todos lenguajes y entornos gratuitos, de código abierto y con licencia abierta.
Squeak y Pharo proporcionan funciones de escritura única y ejecución en cualquier lugar para MacOS, Windows y Linux. (Posiblemente también RiscOS).
Dolphin Smalltalk está dirigido firmemente a la apariencia nativa de Windows y le permite compilar .exes cerrados de su trabajo terminado para su distribución a los usuarios finales. El desarrollo adicional de Dolphin por parte del proveedor se ha detenido, pero es completamente funcional y, como todos los Smalltalks, está diseñado para ser extensible de forma masiva. (¿Mencioné que Pharo ahora tiene 5,000 clases, en comparación con las 3,000 de Squeak? Pharo es una bifurcación de Squeak 3.9)
** Hay una guía práctica para instalar e iniciar Squeak, Amber, Pharo, Cuis y Dolphin en: **
http://beginningtosmalltalk.blogspot.co.uk/2015/11/how-to-get-smalltalk- up-and-running.html
El marco web Seaside se ejecuta en Squeak y en Pharo. Es una herramienta madura maravillosa, al igual que el marco AidaWeb más tradicional.
VisualAge, VisualWorks y Gemstone proporcionan sistemas robustos de nivel empresarial. Gemstone proporciona una base de datos de objetos infinitamente escalable con transacciones y persistencia.
2) Sí, ya lo uso.
Lo aprendí a través de la Open University y fui productivo de inmediato en Ruby (una copia del libro Pickaxe y la referencia de la biblioteca a mi lado). Me ayudó enormemente con Java y con Xerox Moo-code.
Acabo de volver a escribir aplicaciones para controlar, administrar y distribuir aplicaciones móviles de gran capacidad y multiplataforma.
Espero que pronto también vuelva a escribir mis aplicaciones móviles de JavaScript utilizando Amber.