Un lenguaje de programación educativa ( EPL ) es un lenguaje de programación utilizado principalmente como herramienta de aprendizaje y como punto de partida antes de realizar la transición a lenguajes de programación más complejos.
Tipos de lenguajes de programación educativa
Lenguajes ensambladores
Inicialmente, el código de máquina era el único método de programación de computadoras . El lenguaje ensamblador (ASM) introdujo mnemotecnia para reemplazar las instrucciones de bajo nivel, lo que lo convirtió en uno de los lenguajes de programación más antiguos que aún se usan en la actualidad. Existen numerosos dialectos e implementaciones, cada uno adaptado a una arquitectura de procesador de computadora específica . Los lenguajes ensambladores son de bajo nivel y más difíciles de usar, ya que no están tipificados y son rígidos. Con fines educativos, se han desarrollado dialectos simplificados de lenguajes ensambladores para que la codificación sea más accesible para los principiantes.
Los lenguajes ensambladores están diseñados para arquitecturas de procesadores específicas y deben escribirse teniendo en cuenta el hardware correspondiente. A diferencia de los lenguajes de nivel superior , los lenguajes ensambladores educativos requieren una representación de un procesador que puede ser virtual o físico. Estos lenguajes se utilizan a menudo en entornos educativos para demostrar las operaciones fundamentales de un procesador de computadora.

- Little Man Computer (LMC), (1965) es un modelo instructivo de una computadora simple de arquitectura von Neumann . Incluye las características básicas de las computadoras modernas y puede programarse mediante código de máquina (generalmente en decimal) o ensamblador. El modelo simula un entorno informático utilizando una metáfora visual de una persona (el "Pequeño Hombre") en una habitación con 100 buzones ( memoria ), una calculadora (el acumulador ) y un contador de programas. LMC se utiliza para ayudar a los estudiantes a comprender las funciones básicas del procesador y la gestión de la memoria .
- MIX (1968) y MMIX (1999) son modelos de ordenador que aparecen enEl arte de programar ordenadores de Donald Knuth . El ordenador MIX está diseñado con fines educativos, para ilustrar cómo funciona un lenguaje de máquina básico. A pesar de su simplicidad, puede manejar tareas complejas típicas de ordenadores de alto rendimiento. MIX permite programar tanto en binario como en decimal, con emuladores de software disponibles para ambos modelos. MMIX, que sustituyó a MIX, es una arquitectura de conjunto de instrucciones RISC de 64 bits, modernizada para la enseñanza de la arquitectura informática contemporánea.
- DLX (1994) es una arquitectura de procesador de conjunto de instrucciones reducido ( RISC ) creada por los desarrolladores clave de losdiseños MIPS y Berkeley RISC . DLX es una versión simplificada de MIPS , que ofrece una arquitectura de carga/almacenamiento de 32 bits que se utiliza comúnmente en cursos de arquitectura informática de nivel universitario.
- Next Byte Codes (NBC), (2007) es un lenguaje ensamblador simple que se utiliza para programar bloques programables Lego Mindstorms NXT . El compilador NBC produce código de máquina compatible con NXT y es compatible con Windows, macOS y Linux.
- Little Computer 3 (LC-3), (2019) es un lenguaje ensamblador con un conjunto de instrucciones simplificado, que permite escribir programas ensambladores moderadamente complejos. Incluye muchas características que se encuentran en lenguajes más avanzados, lo que lo hace útil para enseñar programación básica y arquitectura informática . Se utiliza principalmente en cursos introductorios de informática e ingeniería.
Variantes básicas
BASIC (Beginner's All-purpose Symbolic Instruction Code) se inventó en 1964 para brindar acceso a computadoras a estudiantes no científicos. Se hizo popular en las minicomputadoras durante la década de 1960 y se convirtió en un lenguaje de computación estándar para microcomputadoras a fines de la década de 1970 y principios de la de 1980. Los objetivos de BASIC se centraban en la necesidad de aprender a programar fácilmente y son:
- Sea fácil de utilizar para principiantes.
- Sea interactivo.
- Proporcionar mensajes de error claros y amigables.
- Responda rápidamente.
- No requiere conocimientos de hardware de computadoras ni de sistemas operativos.
Lo que hizo que BASIC fuera atractivo para la educación fue el pequeño tamaño de los programas, que podían ilustrar un concepto en una docena de líneas. BASIC sigue siendo frecuentemente autodidacta, con tutoriales e implementaciones.
Véase también: Lista de dialectos BASIC por plataforma
BASIC ofrece una ruta de aprendizaje desde BASIC orientados al aprendizaje como Microsoft Small Basic , BASIC-256 SIMPLE hasta BASIC con más funciones como Visual Basic, NET y Gambas .
- Microsoft Small Basic es una versión restringida de Visual Basic , que está diseñada como "un lenguaje de programación introductorio para principiantes". Es intencionalmente minimalista, con solo 15 palabras clave para la funcionalidad básica. Al proporcionar bibliotecas específicas para temas que interesan a los niños, pueden crear programas tanto para la web como para entornos de escritorio . Por ejemplo, con 6 líneas de código, es posible demostrar un visor de imágenes de red aleatorio utilizando Flickr como fuente. [1] El sistema utiliza el IDE de Microsoft Visual Studio para proporcionar autocompletado y ayuda contextual .
- Basic-256 es una versión fácil de usar de BASIC diseñada para enseñar a cualquier persona los conceptos básicos de la programación informática. Utiliza las estructuras de control tradicionales de BASIC ( gosub , bucles for , goto ) para facilitar la comprensión del control del flujo del programa. Tiene un modo gráfico integradoque permite a los niños dibujar imágenes en la pantalla después de unos minutos.
- SiMPLE es un sistema de desarrollo de programación que fue creado para proporcionar habilidades de programación sencillas para todos, especialmente para los no profesionales. Es algo así como AppleSoft BASIC . Está compilado y permite a los usuarios crear sus propias bibliotecas de funciones de uso frecuente. "Simple" es un término genérico para tres versiones ligeramente diferentes del lenguaje: Micro-SIMPLE (utiliza solo 4 palabras clave), Pro-SiMPLE y Ultra-SiMPLE (utiliza 23 palabras clave).
- Hot Soup Processor es un lenguaje derivado de BASIC utilizado en las escuelas japonesas.
- TI-BASIC es un lenguaje simple similar a BASIC implementado en las calculadoras gráficas de Texas Instruments , que a menudo sirve como una primera mirada a la programación para los estudiantes.
- Small BASIC es un intérprete de lenguaje BASIC rápido y fácil de aprender,ideal para cálculos cotidianos, scripts y prototipos . Incluye funciones trigonométricas , matriciales y algebraicas , un IDE integrado, una potente biblioteca de cadenas, comandos de sistema, de sonido y gráficos, y una sintaxis de programación estructurada.
Basado en C
- Ch es unintérprete de C / C++ diseñado para ayudar a estudiantes que no son de informática a aprender matemáticas , computación y programación en C y C++. Amplía C con funciones numéricas, de trazado gráfico 2D/3D y de creación de scripts.
Basado en Java
- Escrito en Java y Scala : un entorno de desarrollo para construir y explorar modelos científicos, específicamente modelos basados en agentes .
Basado en Lisp
- Lisp es la segunda familia más antigua de lenguajes de programación en uso en la actualidad y, como tal, tiene muchos dialectos e implementaciones con una amplia gama de dificultades. Lisp se creó originalmente como una notación matemática práctica para programas de computadora, basada en el cálculo lambda , lo que lo hace particularmente adecuado para enseñar teorías de computación. Como uno de los primeros lenguajes, Lisp fue pionero en muchas ideas en informática , incluidas las estructuras de datos en árbol , la gestión automática del almacenamiento , el tipado dinámico , la programación orientada a objetos y el compilador autoalojado , todas las cuales son útiles para aprender informática. El nombre LISP deriva de "lenguaje de procesamiento de listas". Las listas enlazadas son una de las principales estructuras de datos de los lenguajes y el código fuente de Lisp está hecho de listas. Por lo tanto, los programas Lisp pueden manipular el código fuente como una estructura de datos, dando lugar a los macrosistemas que permiten a los programadores crear nueva sintaxis o incluso nuevos lenguajes específicos del dominio integrados en Lisp. Por lo tanto, Lisp puede ser útil para aprender diseño de lenguajes. [2] [3]
Basado en logotipo
- Logo es un lenguaje que fue diseñado específicamente para introducir a los niños a la programación. La primera parte del aprendizaje de Logo trata sobre los "gráficos de tortuga" (derivados de los robots tortuga ) utilizados ya en 1969. En las implementaciones modernas, se utiliza un dispositivo de dibujo abstracto, llamado tortuga , para hacer que la programación para los niños sea muy atractiva al concentrarse en hacer gráficos de tortuga . Seymour Papert , uno de los creadores de Logo, fue una figura destacada del construccionismo , una variedad de teorías de aprendizaje constructivistas . Papert argumentó que actividades como la escritura serían aprendidas naturalmente por niños mucho más pequeños siempre que adoptaran una cultura informática. [4] Logo fue diseñado para introducir a los niños a la programación a través de ayudas visuales y conceptos en un plan de estudios centrado en la tecnología. "Más importante que empezar a desarrollar el intelecto desde una edad temprana es evitar un largo período de dependencia durante el cual uno aprende a pensar en el aprendizaje como algo que tiene que impartir un otro más poderoso... Esos niños no se definirían a sí mismos ni permitirían que la sociedad los definiera como intelectualmente indefensos " . [4] Lo han utilizado niños de tan solo 3 años y tiene un historial de 30 años de éxito en la educación. Dado que Logo es en realidad una versión simplificada de Lisp para estudiantes más avanzados, se puede utilizar para introducir los conceptos básicos de la informática e incluso de la inteligencia artificial. Logo está disponible en múltiples plataformas, tanto en versiones gratuitas como comerciales para uso educativo.
Basado en Scala
- Kojo es un entorno de desarrollo de escritorio interactivo, desarrollado principalmente con fines educativos. La aplicación se ejecuta en Windows , Linux y OS X. Kojo es un entorno de aprendizaje, con muchas características diferentes que ayudan con la exploración, el aprendizaje y la enseñanza de conceptos en programación informática, pensamiento crítico , matemáticas, ciencia, arte, música, pensamiento creativo , alfabetización informática e. [5]
Basado en Smalltalk
Como parte del proyecto One Laptop per Child , se ha desarrollado una secuencia de lenguajes basados en Smalltalk, cada uno diseñado para actuar como una introducción al siguiente. La estructura es Scratch, Etoys , Squeak y cualquier Smalltalk . [6] Cada uno proporciona entornos gráficos que pueden usarse para enseñar no solo conceptos de programación a los niños, sino también simulaciones de física y matemáticas, ejercicios de narración de historias, etc., mediante el uso del aprendizaje constructivo . Smalltalk y Squeak son lenguajes de desarrollo de aplicaciones con todas las funciones que existen y son muy respetados desde hace décadas; Scratch es una herramienta de aprendizaje para niños.
- Scratch 1.0 está implementado en Smalltalk. Vea a continuación para obtener más información.
- Etoys se basa en la idea de entidades virtuales programables que se comportan en la pantalla de la computadora. Etoys proporciona un entorno de creación de contenido multimedia con un modelo de objetos con scripts simple y potente para muchos tipos de objetos creados por los usuarios finales. Incluye gráficos 2D y 3D , imágenes , texto , partículas, presentaciones, páginas web, videos , sonido y MIDI (la capacidad de compartir escritorios con otros usuarios de Etoys en tiempo real) . Se pueden realizarmuchas formas de tutoría y juego inmersivos a través de Internet . Es multilingüe y se ha utilizado con éxito en Estados Unidos , Europa , Sudamérica , Japón , Corea , India , Nepal y otros lugares. El programa está dirigido a niños de entre 9 y 12 años. [7]
- Squeak es una implementación moderna, de código abierto y con todas las funciones del lenguaje y entorno Smalltalk. Smalltalk es unlenguaje de programación reflexivo , de tipado dinámico y orientado a objetos creado para respaldar el "nuevo mundo" de la informática ejemplificado por la "simbiosis humano-computadora". [8] Al igual que Lisp , tiene persistencia basada en imágenes , por lo que todo es modificable desde dentro del lenguaje (consulte Smalltalk#Reflection ). [9] Ha influido enormemente en la industria al introducir muchos de los conceptos de programación orientada a objetos y compilación justo a tiempo . Squeak es el vehículo para una amplia gama de proyectos que incluyen aplicaciones multimedia, plataformas educativas y desarrollo de aplicaciones web comerciales . Squeak está diseñado para ser altamente portátil y fácil de depurar, analizar y cambiar, ya que su máquina virtual está escrita completamente en Smalltalk.
Pascal
- Pascal es unlenguaje de programación basado en ALGOL diseñado por Niklaus Wirth aproximadamente en 1970 con el objetivo de enseñar programación estructurada . [10] Desde finales de la década de 1970 hasta finales de la de 1980, fue la opción principal en las clases introductorias de informática para enseñar programación a los estudiantes tanto en los EE. UU. como en Europa. Desde entonces, su uso para aplicaciones del mundo real ha aumentado hasta convertirse en un uso generalizado. [11]
Otro
- CircuitPython es una versión de Python orientada a principiantespara electrónica interactiva y educación.
- Rapira es un lenguaje de programación procedimental similar a ALGOL , con un entorno de desarrollo interactivo simple , desarrollado en la Unión Soviética para enseñar programación en las escuelas.
- Src:Card es un lenguaje de programación táctil fuera de línea integrado en un juego de cartas educativo .
Niños
- AgentSheets y AgentCubes son dos herramientas de pensamiento computacional para crear juegos y simulaciones en 2D y 3D. La creación se realiza a través de aplicaciones de escritorio o aplicaciones basadas en navegador, y pueden crear juegos en 2D y 3D que se puedan reproducir en navegadores compatibles con HTML5, incluidos los móviles.
- Alice es un software de programación gratuito diseñado para enseñar programación orientada a objetos (OOP) basada en eventosa niños. Los programadores crean historias interactivas utilizando una interfaz IDE moderna con un estilo de programación de arrastrar y soltar. El público objetivo va desde niños de secundaria hasta estudiantes universitarios. [12] Storytelling Alice es una variante del software Alice diseñada para niños más pequeños, con un mayor énfasis en sus capacidades en términos de narración de historias. [13]
- Blockly es un lenguaje gráfico de código abierto basado en la web en el que los usuarios pueden arrastrar bloques para crear una aplicación sin necesidad de escribir. Fue desarrollado por Google y permite a los usuarios convertir su código Blockly a otros lenguajes de programación como PHP, Python, etc.
- CiMPLE era un lenguaje visual para programar kits de robótica diseñados para niños. Fue creado sobre C como un DSL . ThinkLabs, una startup india de educación en robótica, lo creó para el kit de robótica iPitara. El lenguaje tenía un gran parecido con el lenguaje C. Al menos una escuela en Bangalore, India, compró el kit iPitara e hizo que sus estudiantes programaran los robots usando CiMPLE. [14] Hay más información disponible en el blog de desarrolladores originales de CiMPLE. [15] [16] ThinkLabs finalmente cambió a usar "THiNK VPL" como su software de programación visual.
- Physical Etoys es una extensión libre y de código abierto de Etoys. Su filosofía es que "ayuda a los niños a explorar su propia creatividad combinando ciencia y arte en un laboratorio infinito". [17] Puede ejecutarse en Windows , Linux y Sugar . Debido a su sistema de scripting en bloques, Physical Etoys permite que diferentes dispositivos electrónicos como Lego NXT ,placas Arduino , Sphero , Kinect y joysticks de Wiimote interactúen entre sí.
- Hackety Hack es un entorno gratuito basado en Ruby que tiene como objetivo hacer que el aprendizaje de la programación sea fácil para principiantes, especialmente adolescentes. [18]
- Karel , Karel ++ y Karel J. Robot son lenguajes orientados a principiantes que se utilizan para controlar un robot simple en una ciudad formada por una cuadrícula rectangular de calles. Si bien Karel es un lenguaje propio, Karel++ es una versión de Karel implementada en C++ , mientras que Karel J. Robot es una versión de Karel implementada en Java .
- Kodu es un lenguaje simple y basado completamente en íconos. Fue desarrollado por Microsoft Research como un proyecto para alentar a los niños más pequeños, especialmente a las niñas, a disfrutar de la tecnología. Los programas se componen de páginas, que se dividen en reglas, que a su vez se dividen en condiciones y acciones. Las condiciones se evalúan simultáneamente. El lenguaje Kodu está diseñado específicamente para el desarrollo de juegos y proporciona primitivas especializadas derivadas de escenarios de juegos. Los programas se expresan en términos físicos, utilizando conceptos como la visión, la audición y el tiempo para controlar el comportamiento de los personajes. La herramienta Kodu está disponible en tres formatos: para PC como descarga gratuita en versiones beta públicas y académicas, y como descarga económica para Xbox 360 Live.
- Logo es un lenguaje educativo para niños diseñado en 1967 por Daniel G. Bobrow , Wally Feurzeig , Seymour Papert y Cynthia Solomon . Hoy en día, el lenguaje es recordado principalmente por su uso de " gráficos de tortuga ", en los que los comandos de movimiento y dibujo producen gráficos de líneas utilizando un pequeño robot llamado " tortuga ". El lenguaje fue concebido originalmente para enseñar conceptos de programación relacionados con Lisp y solo más tarde para permitir lo que Papert llamó " razonamiento sintónico corporal ", donde los estudiantes podían comprender (y predecir y razonar sobre) el movimiento de la tortuga imaginando lo que harían si fueran la tortuga. [19]
- Lego Mindstorms es una línea de sets Lego que combina bloques programables con motores eléctricos, sensores, bloques Lego y piezas Lego Technic (como engranajes, ejes y vigas). Mindstorms se originó a partir de los bloques de sensores programables utilizados en la línea de juguetes educativos. La primera versión minorista de Lego Mindstorms se lanzó en 1998 y se comercializó como Robotics Invention System (RIS). La versión actual se lanzó en 2006 como Lego Mindstorms NXT . Se utiliza una amplia gama de lenguajes de programación para Mindstorms, desde Logo hasta BASIC y derivados de Java, Smalltalk y C. El enfoque de programación de Lego Mindstorms ahora tiene sitios físicos dedicados llamados Computer Clubhouses .
- Mama es un lenguaje educativo orientado a objetos diseñado para ayudar a los estudiantes jóvenes a comenzar a programar, proporcionándoles todos los elementos del lenguaje en su propio idioma. El lenguaje Mama está disponible en varios idiomas, con soporte para direcciones de lenguaje LTR y RTL. Una nueva variante de Mama fue construida sobre el entorno de desarrollo Alice de Carnegie Mellon , que admite la creación de scripts de objetos de escenario en 3D. Esta variante fue diseñada para ayudar a los estudiantes jóvenes a comenzar a programar mediante la creación de animaciones y juegos en 3D. Un documento sobre los principios de programación educativa explica las consideraciones de diseño de Mama. [20]
- RoboMind es un entorno de programación educativo sencillo que permite a los principiantes programar un robot. Presenta técnicas de programación populares junto con la robótica y la inteligencia artificial. El robot se puede programar en árabe, chino, holandés, alemán, inglés y sueco.
- Scratch es un lenguaje visual cuyo objetivo es enseñar conceptos de programación a los niños permitiéndoles crear proyectos como juegos, videos y música. Lo hace simplificando el código en "bloques" de funciones que se pueden arrastrar y conectar, y luego ejecutar haciendo clic en el ícono de la bandera verde. En Scratch, los objetos interactivos, los gráficos y los sonidos se pueden importar fácilmente a un nuevo programa y combinarlos, obteniendo resultados rápidos. La comunidad Scratch ha desarrollado y subido más de 1.000.000.000 de proyectos, de los cuales más de 164.000.000 se comparten públicamente. [21] Lo desarrolla el grupo Lifelong Kindergarten [22] en el MIT Media Lab .
- ScratchJr es un derivado del lenguaje gráfico Scratch. Está diseñado para niños de entre 5 y 7 años.
- Snap! es unlenguaje gráfico gratuito de código abierto basado en bloques implementado en JavaScript y originalmente derivado de Scratch del MIT . Snap! agrega la capacidad de crear nuevos bloques y tiene funciones de primera clase que permiten el uso de funciones anónimas . UC Berkeley lo mantiene activamente. El código fuente está alojado íntegramente en GitHub .
- Stagecast Creator es un sistema de programación visual basado en la programación por demostración . Los usuarios demuestran al sistema qué hacer moviendo íconos en la pantalla y este genera reglas para los objetos (personajes). Los usuarios pueden crear simulaciones bidimensionales que modelan conceptos, juegos de varios niveles e historias interactivas.
- Stencyl es un IDE de desarrollo de juegos y programación visual que se ha utilizado en educación y comercio. El concepto de bloques de código que implementa se basa en el lenguaje visual Scratch del MIT (mencionado anteriormente). También permite el uso de código tipificado normal (separado o entremezclado) a través de su propia API y el lenguaje Haxe .
- ToonTalk es un lenguaje y un entorno que parece un videojuego. Las abstracciones computacionales se asignan a análogos concretos, como robots, casas, camiones, pájaros, nidos y cajas. Admite números enteros grandes y números racionales exactos. Se basa en programación con restricciones concurrentes .
Universidad
- Curry es un lenguaje didáctico [23] diseñado para amalgamar los paradigmas de programación declarativa más importantes, a saber, la programación funcional (expresiones anidadas, funciones de orden superior, evaluación diferida) y la programación lógica (variables lógicas, estructuras de datos parciales, búsqueda incorporada). También integra los dos principios operativos más importantes desarrollados en el área de lenguajes de lógica funcional integrados: "residuación" y "estrechamiento". [24] [25]
- Flowgorithm es una herramienta de creación gráfica para escribir y ejecutar programas mediante diagramas de flujo . El enfoque está diseñado para enfatizar el algoritmo en lugar de la sintaxis de un lenguaje determinado. El diagrama de flujo se puede convertir a varios lenguajes importantes como C# , Java , Visual Basic .NET y Python . [26]
- Oz es un lenguaje diseñado para enseñar teoría de computadoras . Admite la mayoría de los paradigmas principales [27] en un solo lenguaje para que los estudiantes puedan aprender paradigmas sin tener que aprender múltiples sintaxis . Oz contiene la mayoría de los conceptos de los principales paradigmas de programación , incluidos la lógica, la programación funcional (tanto perezosa como ansiosa ), la programación imperativa , la programación orientada a objetos , la programación por restricciones, la programación distribuida y la programación concurrente . Tiene un libro de texto canónico , Concepts, Techniques, and Models of Computer Programming (2004), y una implementación estándar disponible de forma gratuita, el Sistema de programación Mozart . [28]
Véase también
- Categoría: Comparaciones de lenguajes de programación
- Lenguaje ensamblador : un lenguaje de programación de bajo nivel
- Sugar : una interfaz gráfica de usuario diseñada para el aprendizaje constructivo
- Diseño por números
- Processing : un lenguaje dedicado a las obras de arte
Referencias
- ^ Microsoft Corporation 2009 Guía de inicio rápido para Small Basic, pág. 64.
- ^ Kenlon, Seth. "Aprenda el lenguaje de programación Lisp en 2021 | Opensource.com". opensource.com . Consultado el 14 de octubre de 2024 .
- ^ "¿Qué es el lenguaje de programación Lisp (procesamiento de listas)? – Una definición de TechTarget.com". WhatIs . Consultado el 14 de octubre de 2024 .
- ^ ab Papert, Seymour (octubre de 1980). Redefiniendo la infancia: la presencia informática como experimento en psicología del desarrollo. Tokio, Japón y Melbourne, Australia: 8º Congreso Mundial de Informática: Congreso IFIP.
- ^ "Acerca de Kogics Kojo" . Consultado el 12 de febrero de 2011 .
- ^ Cavallo, David (28 de mayo de 2007). "Aprendiendo a usar Squeak desde cero". One Laptop Per Child News . Consultado el 3 de abril de 2009 .
- ^ Ducasse, Stéphane (2005). Squeak: Aprenda a programar con robots (Tecnología en acción). Apress. pp. 289 en el cap. 24: Un recorrido o eTOY . ISBN 1-59059-491-6.
- ^ Kay, Alan. "La historia temprana de Smalltalk". Archivado desde el original el 29 de abril de 2011. Consultado el 13 de septiembre de 2007 .
- ^ Para una explicación más detallada de por qué esto lo hace fácil, consulte el Evaluador metacircular.
- ^ Hemmendinger, David. "Pascal". Encyclopædia Britannica, 5 de abril de 2024, https://www.britannica.com/technology/Pascal-computer-language. Consultado el 12 de junio de 2024.
- ^ "Pascal - Wiki de Free Pascal". wiki.freepascal.org . Consultado el 11 de octubre de 2024 .
- ^ "Acerca de – Alice" . Consultado el 7 de octubre de 2024 .
- ^ "Cuentos de Alice – Alice" . Consultado el 7 de noviembre de 2023 .
- ^ EducationWorld (21 de septiembre de 2012). «ThinkLABS RoboLAB». EducationWorld . Consultado el 8 de octubre de 2024 .
- ^ Blog original de desarrolladores de CiMPLE Archivado el 21 de julio de 2011 en Wayback Machine
- ^ "ThinkLABS -". 20 de septiembre de 2012. Archivado desde el original el 20 de septiembre de 2012 . Consultado el 9 de octubre de 2024 .
- ^ "EToys físicos - Descripción general del proyecto". Tecnodata .
- ^ "Hackety Hack". GitHub . Consultado el 9 de octubre de 2024 .
- ^ HL ModTech (23 de enero de 2018). Programación de logotipos: lección 1 de Turtle Academy . Consultado el 9 de octubre de 2024 a través de YouTube.
- ^ Principios de programación educativa de Mama
- ^ "Imagina, programa, comparte". Estadísticas de Scratch (en latín). 25 de mayo de 2023. Consultado el 17 de noviembre de 2024 .
- ^ "Descripción general del grupo ‹ Jardín de infancia permanente". MIT Media Lab . Consultado el 8 de octubre de 2024 .
- ^ M. Hanus. Enseñanza de la programación funcional y lógica con un único modelo computacional. En Proc. Noveno Simposio Internacional sobre Lenguajes de Programación, Implementaciones, Lógicas y Programas (PLILP'97), págs. 335-350. Springer LNCS 1292, 1997.
- ^ "Informe Curry, Introducción". Archivado desde el original el 4 de octubre de 2009.
- ^ Hanus, M. (1994). "La integración de funciones en la programación lógica: de la teoría a la práctica". Journal of Logic Programming . 19&20: 583– 628.
- ^ "Acerca de". Flowgorithm . Consultado el 26 de agosto de 2014 .
- ^ Afiche de Paradigmas de programación
- ^ "Sistema de programación de Mozart". mozart2.org . Consultado el 25 de octubre de 2024 .