Factor está muy inspirado en Forth y otros lenguajes de pila. También toma ideas de Lisp y Smalltalk. Por lo que he leído en línea, no es necesario aprender ninguno de esos idiomas antes de aprender Factor. No va a doler si lo hace, sin embargo :)
El mayor problema que he encontrado es la juventud del idioma. En otras palabras, los ejemplos de código en varios blogs/sitios estarán desactualizados porque usaron versiones anteriores de Factor (0.6, 0.7, 0.8, etc.). El factor 0.9 y superior es más probable que permanezca igual.
Una vez que haya pasado los conceptos básicos, los documentos (en línea + en el oyente) son bastante claros. Los documentos ocasionalmente sufren el mismo problema que las publicaciones de blog: algunos ejemplos de código obsoletos. Aún tiene las listas de correo/IRC para ayudar si realmente se queda atascado.
Solo he utilizado los documentos hasta el momento, en lugar de las listas de correo/IRC. Luego experimento con el oyente para aprender/explorar un nuevo concepto que encuentro en los documentos.
Este es el primer idioma en el que la mayoría de mis preguntas se responden simplemente al profundizar en los documentos de una función. La mayor parte de Factor está escrito en Factor, por lo que las cosas se vuelven más claras a medida que pasas más tiempo con los documentos.
(El segundo problema más grande que he tenido es tratar de entender el framework web (Furnace) .El framework web es más rico en funciones que lo que estoy acostumbrado. No es nada imposible, solo requiere algo de práctica y explorar el documentos)
La introducción más rápida.a las lenguas por concatenación que he encontrado: http://github.com/raganwald/homoiconic/blob/master/2008-11-16/joy.md#readme
Sus primeros pasos en Factor: http://concatenative.org/wiki/view/Factor/Learning
Estos vídeos entrar en más detalles con respecto a la escritura de código Factor:
- 90 vídeo minucioso podría ayudar a aprender los conceptos básicos de los factores: YouTube: Factor: An extensible, interactive Language - Básicamente, Slava (creador de factores) ofrece una introducción de video. al factor. Es parte de la serie Google Talk. (Hay una versión de alta y baja calidad en caso de que no pueda ver las diapositivas). Los conceptos de factor también se comparan con otros idiomas.
- 13 minutos de video: Forth @ RubyConf 2008. Una breve demostración de Forth. También menciona algunas ideas que son comunes en todo el mundo del software.
- 100 minutos de video: Factor presented to Lisp programmers. El audio no es la mejor calidad de video, pero sigue siendo muy buena. Si ve los otros videos, puede omitir algunas de las partes iniciales de esto.
Algunos desvíos:
Éstos son algunos de blog publicaciones que pueden ayudar a proporcionar dirección:
Comprender las diversas abstracciones y bibliotecas que están disponibles es clave para comprender Factor: colecciones, palabras genéricas, alevines, locales, macros, memorando, PEG, la impresora bonita, etc. Hacer un uso efectivo de estas herramientas puede reducir la cantidad de trabajo requerido para resolver un problema en un orden de magnitud.
Factor es definitivamente el idioma más divertido. Tiene menos sorpresas que otros idiomas. Me resulta más fácil aprender que Ruby o Lisp. Sólo por diversión, aquí hay una tanda de lenguaje entre Lisp y Factor:
Para cualquiera que esté interesado en lenguajes basados en la pila, este artículo puede ayudar a: The Joy of Catenative Languages (Parts 1, 2, 3) (es más general y utiliza el lenguaje Cat para ejemplos. Me ayudó a aprender conceptos básicos de Factor.)
Estos más el video de Google Tech Talk al que hace referencia Peter Mortensen a continuación. – semperos