stringtranslate.com

ToonTalk

ToonTalk es un sistema de programación informática destinado a ser programado por niños. La parte "Toon" significa caricatura. La presentación del sistema se realiza en forma de personajes animados, incluidos robots que se pueden entrenar con el ejemplo. Es una de las pocas implementaciones exitosas fuera del mundo académico del paradigma de programación de lógica de restricciones concurrentes .

Fue creado por Kenneth M. Kahn en 1995, [1] e implementado como parte de ToonTalk IDE, [2] un paquete de software distribuido en todo el mundo entre 1996 y 2009. Desde 2009, su especificación se publica académicamente [3] y su implementación está disponible gratuitamente.

A partir de 2014, estuvo disponible una versión JavaScript HTML5 de ToonTalk llamada ToonTalk Reborn para la Web [4] [5] [6] . Se ejecuta en cualquier navegador web moderno y se diferencia de la versión de escritorio de ToonTalk en algunos aspectos. Los programas ToonTalk pueden ejecutarse en cualquier elemento DOM y varias capacidades del navegador (audio, video, hojas de estilo, entrada y salida de voz y eventos del navegador) están disponibles para los programas ToonTalk. Se integran servicios web como Google Drive. ToonTalk Reborn es gratuito y de código abierto.

Más allá de su vida como producto comercial, ToonTalk evolucionó a través de un importante uso académico en varios proyectos de investigación, en particular en el London Knowledge Lab y el Institute of Education : proyectos Playground y WebLabs, en los que participaron socios de investigación de Cambridge ( Addison Wesley Longman a través de su filial Logotron). ), Portugal (Cnotinfor y la Universidad de Lisboa ), Suecia ( Real Instituto de Tecnología ), Eslovaquia ( Universidad Comenius ), Bulgaria ( Universidad de Sofía ), Chipre ( Universidad de Chipre ) e Italia (Instituto de Tecnología Educativa del Consiglio Nazionale delle Ricerche ). También fue fuente de interés académico en Suecia, donde Mikael Kindborg propuso una representación estática de los programas ToonTalk [7] y en Portugal, donde Leonel Morgado estudió su potencial para permitir la programación informática en niños analfabetos. [8]

ToonTalk fue influenciado por el lenguaje de programación informática Janus y el modelo Actor . La principal abstracción de comunicación en ToonTalk es la pareja pájaro/nido. Cuando usted (el programador o un robot) le da algo a un pájaro, ella vuela a su nido, lo pone en él y luego regresa. Si una o más cosas ya ocupan el nido, el pájaro pone la nueva debajo de las demás.

Un programa ToonTalk es una secuencia de reglas, donde cada regla tiene un principio y un fin. El encabezado es un patrón que se puede comparar con el argumento, que debe ser una tupla. En la presentación de ToonTalk, una regla aparece como un robot, un programa como un equipo de robots y una tupla como una caja que puede tener cualquier número de agujeros o compartimentos en los que se pueden colocar cosas. El alfabeto de las cosas incluye bloques numéricos, bloques de texto, otros cuadros, equipos de robots, pájaros, nidos y cosas de otras categorías. Un proceso consta de una caja sobre la que trabaja un equipo de robots. Si ninguno de los patrones coincide con el cuadro, el proceso se suspende. De lo contrario, se activa la primera regla que coincida. El final de la regla puede destruir el proceso o continuarlo con el mismo equipo. En caso de que el patrón requiera algo más que un nido vacío donde hay un nido vacío, el proceso se suspende hasta que algún pájaro coloque algo en el nido (generalmente como resultado de las acciones de otros procesos). Un nido con algo coincide con el patrón como si el nido no estuviera allí, solo algo (superior). Las acciones en la cola también manipulan algo en lugar de todo el nido. En consecuencia, un nido puede usarse para programar un futuro .

A ToonTalk se le puede dar una lectura imperativa o una lectura declarativa. Si ignoramos ciertas construcciones diseñadas para facilitar la E/S, podemos ver que ToonTalk no tiene ningún acceso compartido a la memoria mutable. El mecanismo pájaro/nido se parece a la comunicación en el modelo Actor, pero con el poder adicional de poder pasar nidos y que un proceso contenga más de un nido (lo que también es cierto en Janus ). Una diferencia entre la comunicación en el modelo Actor y en ToonTalk es que ToonTalk conserva el orden de los mensajes; sin embargo, ToonTalk también puede proporcionar una combinación indeterminista de flujos de mensajes.

Referencias

  1. ^ Kahn, Ken (22 a 25 de abril de 1995). "Diseño de metáforas: estudio de caso de un entorno de programación animado" (PDF) . Actas de la Conferencia de desarrolladores de juegos de computadora (CGDC), 1995, novena edición anual de fama mundial . Conferencia de desarrolladores de juegos de computadora. Conferencia de desarrolladores de juegos de computadora. pag. 241.
  2. ^ Kahn, Ken (1996). "ToonTalk™: un entorno de programación animado para niños" (PDF) . Revista de Computación y Lenguajes Visuales . 7 (2): 197–217. doi :10.1006/jvlc.1996.0011. ISSN  1045-926X.
  3. ^ Morgado, Leonel; Kahn, Ken (2008). «Hacia una especificación del lenguaje ToonTalk» (PDF) . Revista de Lenguajes Visuales y Programación . 19 (5): 574–597. doi :10.1016/j.jvlc.2007.10.002. ISSN  1045-926X. S2CID  13442755.
  4. ^ Kahn, Ken (2014). "TOONTALK REBORN Reimplementación y reconceptualización de ToonTalk para la Web" (PDF) . Actas de la Conferencia Construccionismo 2014 . Archivado desde el original (PDF) el 14 de marzo de 2017 . Consultado el 18 de noviembre de 2016 .
  5. ^ Kahn, Ken (2016). Integración de lenguajes de programación con navegadores web. Fundación Suksapattana. págs. 141-149. ISBN 978-616-92726-0-1.
  6. ^ Kahn, Ken (1 de enero de 2016). "Una demostración de ToonTalk donde los niños crean programas mediante una demostración en un mundo de juegos". Actas de la XV Conferencia Internacional sobre Diseño de Interacción y Niños . IDC '16. Nueva York, NY, Estados Unidos: ACM. págs. 676–679. doi :10.1145/2930674.2938611. ISBN 9781450343138. S2CID  19973661.
  7. ^ Mikaël, Kindborg (2001). Representar programas de ToonTalk como tiras cómicas. Seminario Internacional Playground. Casa de Vilar, Oporto, Portugal.
  8. ^ Morgado, Leonel (2005). Marco de programación de computadoras en preescolar y jardín de infantes (tesis doctoral). Universidade de Trás-os-Montes e Alto Douro, Vila Real, Portugal. hdl :10348/5344. Archivado desde el original el 7 de diciembre de 2022.

enlaces externos