SlideShare una empresa de Scribd logo
1 de 4
Una aproximación a la Didáctica del Logo. (parte 2)

Enrique Araújoviedo (2001): Foro Local de Informática Educativa, Localidad Octava. Bogotá.



Logo es un lenguaje basado en listas. Pero realmente es poco lo que se muestra de él sobre
esto. Casi todos los tratados o trabajos están basados en su capacidad gráfica, de la que no
carecen –hoy por hoy- la mayoría de los lenguajes de programación. Por tanto no vamos a
resaltar -pero sí utilizar su capacidad gráfica, que no podemos desconocerlo, es excepcional-
en éste trabajo esta potencialidad sino preocuparnos un poco más en esa ventaja que tiene
sobre muchos lenguajes maduros y experimentados. Logo, por supuesto es un lenguaje
maduro y experimentado, pero tiene un adalid que son las listas y las capacidades mentales
que requieren para su tratamiento. Hé visto recientemente un trabajo sobre cómo abordar el
trabajo gráfico con Logo utilizando diagramas de flujo; es un gran esfuerzo, pero muy
reforzado. Los diagramas de flujo (libres) no son una buena estructura para abordar la
programación en Logo y en general los lenguajes basados en listas como Lisp.

La pretensión de éste apartado es mostrar cómo aprovechar el potencial de Logo (la
programación en estructuras de listas) para desarrollar un tipo de pensamiento específico: el
heurísitico.

Los docentes de informática sabemos que el lenguaje, por antonomasia para enseñar a
programar es el Lenguaje Pascal; hoy existen versiones de lenguajes libres muy buenas como
Léxico, sin embargo, haciendo a un lado la discusión acerca de cómo empezar a enseñar a
programar –cuando de enseñar a programar se trata- muchos creemos que Logo en la etapa
primaria cumple cabalmente las expectativas tanto de la estructuración de la programación
como las de desarrollo de pensamiento. Igualmente mucha gente defiende que el lenguaje que
hay que enseñar es el C++ -cosa que no discuto porque comparto, pero en una etapa final de la
Educación Básica-. De manera semejante, creo que es horrendo enseñar VisualBasic –no
porque sea un lenguaje malo; no, todo lo contrario, es un lenguaje profesional que requiere
madurez para obtener resultados que ameriten su uso; cosa parecida pasa con Java-.
Retomando nuestro asunto que es la formación inicial en la programación y en esto hacemos
alusión a enseñar a programar a niños entre los 8 y los 12 años. En este espacio son también
muy buenos entornos de trabajo como como KPL (basado en lenguaje Basic) y scracth (basado
en lenguaje Logo). Pero una cosa son los entornos de trabajo y otra bien diferente son las IDE
(los ambientes de desarrollo). En éstas últimas por ejemplo, existe la posibilidad de la
compilación y por tanto la ejecución del producto independiente del entorno.

Enseñar a programar a los niños y jóvenes con Logo ha seguido una directriz, que consiste en
enseñar a elaborar figuras según una secuencia de comandos. Cuando las figuras son básicas o
que requieren un patrón predeterminado, es decir con una geometría a lo más definidas a
patrones de simetría axial, o grupos básicos la dificultad es mínima; pero cuando requiere de
estructuras geométricas más exigentes (teselaciones, fractales,…) el ejercicio de la
programación se vuelve engorroso y tortuoso en la medida que se requieren fuertes
conocimientos geométricos previos. En este sentido el fracaso no radica en el lenguaje sino en
su didáctica; en pretender abordar un desarrollo sin los concebidos prerrequisitos
geométricos. Surge la pregunta: ¿se debe tener fuertes conocimientos geométricos para
aprender a programar en Logo? Antes de responder, debe aclararse que una cosa es enseñar a
programar con Logo y otra es enseñar a programar en Logo. El objetivo de la enseñanza de la
programación es la primera; pues como se manifestó arriba se puede “enseñar a programar
con Pascal”, “se puede “enseñar a programar con C++”, se puede “enseñar a programar con
Delphi”, etc. El fin último es enseñar a programar, el lenguaje es la herramienta; el medio. Pero
si de lo que se trata es de enseñar el lenguaje como tal, se requieren precisamente esas
estructuras de programación y otros recursos como la diagramación libre, la estructurada y en
general los lenguajes de representación. Aprender un lenguaje de programación se puede
hacer desde cero o desde el púlpito de un Gurú. Mucha gente, después de haber trabajado por
años con un lenguaje, tuvo que aprender un nuevo lenguaje en pocas semanas; de no haber
tenido esas estructuras de programación habrían durado mucho más e incluso tardar años en
la reconversión. En alguna medida las didácticas de una segunda lengua se asemejan a las
didácticas de la enseñanza de un lenguaje de programación y éstas se diferencian de las
didácticas de la programación. Esto es que aprender a programar se puede realizar sin el
conocimiento de un lenguaje de programación, como lo propone precisamente el proyecto
Léxico. Así pues, enseñar Logo, a programar en Logo es muy diferente a aprender a programar
con Logo. Para aprender a programar con Logo, la metáfora de las figuras y el uso de una
geometría básica está bien; pero para aprender a programar en Logo, esa metáfora no es útil.
Primero porque realmente sí se requieren serios conocimientos geométricos, algebraicos y
topológicos y segundo porque en este enfoque no es evidente el trabajo subyacente de las
listas, que es la razón de ser de Logo. Los lenguajes, en general, tienen unos espacios de
definición: intentad hacer una página web con C++; intentad hacer un protocolo de red con
Cobol o Fortran (que se puede se puede, claro. A costa de que?) Semejante cosa ocurre con
Logo. Su diseño inicial y su pretensión no es ser un lenguaje profesional (quizás para ello esté
LISP) sino ser un lenguaje para la enseñanza y dentro de éste campo para desarrollar
estructuras de pensamiento. Tal vez por ello, muchos de los entornos Logo están elaborados
en lenguajes profesionales; un excelente entorno (Logográfico –argentino-) ha sido
desarrollado con VisualBasic; los clásicos (WMSLogo, FMSlogo) han sido desarrollados en C++;
un entorno muy bueno (el Xlogo) ha sido desarrollado en java y el último entorno que conocí
fue elaborado en Python. No conozco ningún compilador de C++ o Pascal elaborado en Logo
(eso sería como elaborar un diccionario de español elaborado en inglés).

Después de estas disquisiciones entremos en materia. Lo que pretendemos es enseñar a
programar en Logo y por ello su enfoque serán las listas. Tampoco vamos a ir muy lejos –el
tiempo y el espacio apremian-, solamente trataremos lo básico; lo necesario para trabajar con
listas.



LAS LISTAS

 En general, todos sabemos que es una lista; las entendemos como una secuencia (horizontal o
vertical) de expresiones que pueden estar ordenadas o no. Así, un directorio telefónico es una
lista con algunos tipos de identificadores para separar segmentos de expresiones. Un párrafo
es una lista de palabras con algunos tipos de identificadores para separar segmentos de
palabras. El párrafo tiene un identificador de inicio (usualmente un espacio previo y una letra
mayúscula) y otro indicador de final (usualmente el punto aparte y un espacio posterior). Un
“punto seguido” es un indicador de separación de un segmento del párrafo y divide el párrafo,
pero no lo concluye; cosa semejante podría decirse de la “coma” y el “punto y coma”. Un
“espacio en blanco” es un delimitador de separación.

En Logo las listas están asociadas a un tipo de estructuras arbóreas (ver artículo sobre
estructuras en árbol) que nos permiten establecer la secuencia de los elementos que contiene
la lista. Una lista en Logo tiene un identificador de inicio (el paréntesis cuadrado “[“ ) y un
identificador de terminación (el paréntesis cuadrado “]“ ). Los elementos de la lista deben

una relación matemática :         → ℕcon el conjunto de elementos de la lista. Dos listas son
estar contenidos entre estos dos identificadores. Los elementos están ordenados de acuerdo a

diferentes si dadas :       → ℕ y      :     → ℕ se tiene que       ≠ . Más específicamente
                                     ,

diríamos que       y deben ser tales que :        →     ⊊ℕ y      :   →     ⊊ con ≠ .
                                                                               ℕ

Una lista puede ser vacía. En este caso su único elemento es el “caracter en blanco”. El
“caracter en blanco” o “espacio en blanco” sólo se considera como elemento en éste único
caso, en los demás se considera como un indicador de separación entre elementos. Es claro
pues que no se puede utilizar el espacio en blanco dos veces seguidas para indicar por
ejemplo: (caracter)(espacio en blanco)(espacio en blanco)(caracter). Pues esto sería lo mismo
que: (caracter)(espacio en blanco)(caracter). Y por tanto no se admite: (espacio en
blanco)(espacio en blanco)(espacio en blanco)(espacio en blanco)…(espacio en blanco)(espacio
en blanco). Ya que todos ellos equivaldrían a uno solo.

Logo además de considerar las listas, dispone de otros tipos de datos como las “palabras”.
Una palabra es un conjunto de caracteres (letras, números, caracteres especiales:
alfanuméricos, símbolos de puntuación, símbolos de acento, etc.). Se tiene pues que el
“carácter en blanco” define la “palabra vacía”. Ejemplos de palabras serían: a, 4, color,
amarillo, ioki, aníbalnicolás, siuleuquirneojuaraodeivo, a2009m11d26, 1+4=5, 9^2igual81,
unodostres. Para el intérprete del lenguaje Logo (que en adelante llamaremos simplemente
Logo) una palabra puede ser cualquier cosa que contenga un caracter o muchos siempre y
cuando no estén separados por el delimitador “espacio en blanco”. A su vez una lista no es
más que un conjunto de palabras o de listas o de combinaciones de palabras y listas.

Existen muchas definiciones de lista.

La primera y más elemental es decir que:

Definición 1: Una lista es un conjunto de palabras.

Ejemplos: a) [ a e i o u]; b) [ 1 2 3 4]; c) [ a A7 i(8) águila uh!]; d) [ … y Aladino dijo: ábrete
sésamo!]; e) [ uno dos tres]; f) [ uno tres dos]; g) [ 1 dos 3]; h) [ unodostres]; i) [ ].

Es claro que las listas (e) y (f) son distintas porque aunque los elementos son los mismos, el
orden es distinto. En las listas (e) y (g) los elementos son distintos; en la lista (h), hay un solo
elemento, lo mismo que en la lista (i).
Esta definición es bastante débil por cuanto no admite listas como:

a) [ a [ e i o u] ]

b) [ a [ e i] o [u] ]

c) [ [ ] [ a [ e ] ] [ [ i ] [ [o] ] [u] ]

Una definición más precisa sería:

Definición 2: Secuencia ordenada de palabras y/o listas delimitadas entre los indicadores “[“ y
“]”.

Más contenido relacionado

Destacado

Web summit presentation slideshare
Web summit presentation   slideshareWeb summit presentation   slideshare
Web summit presentation slideshareFishbowlApp
 
cloud computing
cloud computingcloud computing
cloud computingawb50
 
Catálogo yves rocher campaña 16, 2014
Catálogo yves rocher campaña 16, 2014Catálogo yves rocher campaña 16, 2014
Catálogo yves rocher campaña 16, 2014Paty Cj
 
Catálogo flormar campaña 9, 2015
Catálogo flormar campaña 9, 2015Catálogo flormar campaña 9, 2015
Catálogo flormar campaña 9, 2015Paty Cj
 
Catálogo yves rocher campaña 9, 2015
Catálogo yves rocher campaña 9, 2015Catálogo yves rocher campaña 9, 2015
Catálogo yves rocher campaña 9, 2015Paty Cj
 

Destacado (7)

Web summit presentation slideshare
Web summit presentation   slideshareWeb summit presentation   slideshare
Web summit presentation slideshare
 
Maapa codigo
Maapa codigoMaapa codigo
Maapa codigo
 
Boudica
BoudicaBoudica
Boudica
 
cloud computing
cloud computingcloud computing
cloud computing
 
Catálogo yves rocher campaña 16, 2014
Catálogo yves rocher campaña 16, 2014Catálogo yves rocher campaña 16, 2014
Catálogo yves rocher campaña 16, 2014
 
Catálogo flormar campaña 9, 2015
Catálogo flormar campaña 9, 2015Catálogo flormar campaña 9, 2015
Catálogo flormar campaña 9, 2015
 
Catálogo yves rocher campaña 9, 2015
Catálogo yves rocher campaña 9, 2015Catálogo yves rocher campaña 9, 2015
Catálogo yves rocher campaña 9, 2015
 

Similar a Aproximación a la Didactica del Logo(Parte2)

Tutorial basico prolog
Tutorial basico prologTutorial basico prolog
Tutorial basico prologAnderipe Pinto
 
Argentina Programa Apendix parte 1.pdf
Argentina Programa Apendix parte 1.pdfArgentina Programa Apendix parte 1.pdf
Argentina Programa Apendix parte 1.pdfenzo935311
 
Resumen Capitulo 1 - Sebesta
Resumen Capitulo 1 - Sebesta Resumen Capitulo 1 - Sebesta
Resumen Capitulo 1 - Sebesta Santiago Valdez
 
Manual de-java
Manual de-javaManual de-java
Manual de-javaeliseorm
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosmilituchinita
 
Introduccion a la Programacion Orientada a Objetos
Introduccion a la Programacion Orientada a ObjetosIntroduccion a la Programacion Orientada a Objetos
Introduccion a la Programacion Orientada a Objetosliberaunlibroupeg
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosYulyana López
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosmilituchinita
 
Introducción a los lenguajes de programación( imodulo)
Introducción a los lenguajes de programación( imodulo)Introducción a los lenguajes de programación( imodulo)
Introducción a los lenguajes de programación( imodulo)ROBERT ENRIQUE MARTINEZ GARCIA
 
presentacindslintro-151124180611-lva1-app6891.pdf
presentacindslintro-151124180611-lva1-app6891.pdfpresentacindslintro-151124180611-lva1-app6891.pdf
presentacindslintro-151124180611-lva1-app6891.pdfFranciscoBlancoFis
 
Introducción a DSL (Lenguajes Específicos de Dominios) con Python
Introducción a DSL (Lenguajes Específicos de Dominios) con PythonIntroducción a DSL (Lenguajes Específicos de Dominios) con Python
Introducción a DSL (Lenguajes Específicos de Dominios) con PythonJuan Rodríguez
 

Similar a Aproximación a la Didactica del Logo(Parte2) (20)

Proyecto
ProyectoProyecto
Proyecto
 
Tutorial basico prolog
Tutorial basico prologTutorial basico prolog
Tutorial basico prolog
 
Argentina Programa Apendix parte 1.pdf
Argentina Programa Apendix parte 1.pdfArgentina Programa Apendix parte 1.pdf
Argentina Programa Apendix parte 1.pdf
 
lenguaje y programacion
lenguaje y programacionlenguaje y programacion
lenguaje y programacion
 
POO
POOPOO
POO
 
Automatas
AutomatasAutomatas
Automatas
 
Manual de-java
Manual de-javaManual de-java
Manual de-java
 
Resumen Capitulo 1 - Sebesta
Resumen Capitulo 1 - Sebesta Resumen Capitulo 1 - Sebesta
Resumen Capitulo 1 - Sebesta
 
Manual de-java
Manual de-javaManual de-java
Manual de-java
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetos
 
Introduccion a la Programacion Orientada a Objetos
Introduccion a la Programacion Orientada a ObjetosIntroduccion a la Programacion Orientada a Objetos
Introduccion a la Programacion Orientada a Objetos
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetos
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetos
 
Introducción a los lenguajes de programación( imodulo)
Introducción a los lenguajes de programación( imodulo)Introducción a los lenguajes de programación( imodulo)
Introducción a los lenguajes de programación( imodulo)
 
Clase02 paradigmas
Clase02 paradigmasClase02 paradigmas
Clase02 paradigmas
 
presentacindslintro-151124180611-lva1-app6891.pdf
presentacindslintro-151124180611-lva1-app6891.pdfpresentacindslintro-151124180611-lva1-app6891.pdf
presentacindslintro-151124180611-lva1-app6891.pdf
 
Introducción a DSL (Lenguajes Específicos de Dominios) con Python
Introducción a DSL (Lenguajes Específicos de Dominios) con PythonIntroducción a DSL (Lenguajes Específicos de Dominios) con Python
Introducción a DSL (Lenguajes Específicos de Dominios) con Python
 
Mario martinez alvarez
Mario martinez alvarezMario martinez alvarez
Mario martinez alvarez
 
3
33
3
 
Tipos De Datos
Tipos De DatosTipos De Datos
Tipos De Datos
 

Más de SED - Fundación Galileo para el Desarrollo del Pensamiento, la Ciencia y la Tecnología

Más de SED - Fundación Galileo para el Desarrollo del Pensamiento, la Ciencia y la Tecnología (20)

Andrea, la niña descomplicada
Andrea, la niña descomplicadaAndrea, la niña descomplicada
Andrea, la niña descomplicada
 
El profe molina (v1)
El profe molina (v1)El profe molina (v1)
El profe molina (v1)
 
Acuerdos men fecode sept10-2013
Acuerdos men fecode sept10-2013Acuerdos men fecode sept10-2013
Acuerdos men fecode sept10-2013
 
La lógica de la sopa
La lógica de la sopaLa lógica de la sopa
La lógica de la sopa
 
El oficio de maestro mi profesora gloria ojeda
El oficio de maestro   mi profesora gloria ojedaEl oficio de maestro   mi profesora gloria ojeda
El oficio de maestro mi profesora gloria ojeda
 
Mi modelo, la pedagogia involuta
Mi modelo, la pedagogia involutaMi modelo, la pedagogia involuta
Mi modelo, la pedagogia involuta
 
Modelo pedagógico orientado al diseño
Modelo pedagógico orientado al diseñoModelo pedagógico orientado al diseño
Modelo pedagógico orientado al diseño
 
Glifos (ingenia)
Glifos (ingenia)Glifos (ingenia)
Glifos (ingenia)
 
Micromundos Para Desocupados Parte Ii
Micromundos Para Desocupados Parte IiMicromundos Para Desocupados Parte Ii
Micromundos Para Desocupados Parte Ii
 
Micromundos Para Desocupados Parte I
Micromundos Para Desocupados Parte IMicromundos Para Desocupados Parte I
Micromundos Para Desocupados Parte I
 
De La Idea Al Proyecto(Parte4)
De La Idea Al Proyecto(Parte4)De La Idea Al Proyecto(Parte4)
De La Idea Al Proyecto(Parte4)
 
Comprender Y Aprender2
Comprender Y Aprender2Comprender Y Aprender2
Comprender Y Aprender2
 
De La Idea Al Proyecto(Parte1)
De La Idea Al Proyecto(Parte1)De La Idea Al Proyecto(Parte1)
De La Idea Al Proyecto(Parte1)
 
Pres Logo 01
Pres Logo 01Pres Logo 01
Pres Logo 01
 
Cerebro,Ojo,Mano
Cerebro,Ojo,ManoCerebro,Ojo,Mano
Cerebro,Ojo,Mano
 
Juego De Polinomios
Juego De PolinomiosJuego De Polinomios
Juego De Polinomios
 
Teoria De Las Hileras
Teoria De Las HilerasTeoria De Las Hileras
Teoria De Las Hileras
 
Juego De Polinomios
Juego De PolinomiosJuego De Polinomios
Juego De Polinomios
 
Hileras De Dominos (Ejercicios Propuestos)
Hileras De Dominos (Ejercicios Propuestos)Hileras De Dominos (Ejercicios Propuestos)
Hileras De Dominos (Ejercicios Propuestos)
 
Aulas Inteligentes -Cuento-
Aulas Inteligentes -Cuento-Aulas Inteligentes -Cuento-
Aulas Inteligentes -Cuento-
 

Último

TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 

Último (20)

TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 

Aproximación a la Didactica del Logo(Parte2)

  • 1. Una aproximación a la Didáctica del Logo. (parte 2) Enrique Araújoviedo (2001): Foro Local de Informática Educativa, Localidad Octava. Bogotá. Logo es un lenguaje basado en listas. Pero realmente es poco lo que se muestra de él sobre esto. Casi todos los tratados o trabajos están basados en su capacidad gráfica, de la que no carecen –hoy por hoy- la mayoría de los lenguajes de programación. Por tanto no vamos a resaltar -pero sí utilizar su capacidad gráfica, que no podemos desconocerlo, es excepcional- en éste trabajo esta potencialidad sino preocuparnos un poco más en esa ventaja que tiene sobre muchos lenguajes maduros y experimentados. Logo, por supuesto es un lenguaje maduro y experimentado, pero tiene un adalid que son las listas y las capacidades mentales que requieren para su tratamiento. Hé visto recientemente un trabajo sobre cómo abordar el trabajo gráfico con Logo utilizando diagramas de flujo; es un gran esfuerzo, pero muy reforzado. Los diagramas de flujo (libres) no son una buena estructura para abordar la programación en Logo y en general los lenguajes basados en listas como Lisp. La pretensión de éste apartado es mostrar cómo aprovechar el potencial de Logo (la programación en estructuras de listas) para desarrollar un tipo de pensamiento específico: el heurísitico. Los docentes de informática sabemos que el lenguaje, por antonomasia para enseñar a programar es el Lenguaje Pascal; hoy existen versiones de lenguajes libres muy buenas como Léxico, sin embargo, haciendo a un lado la discusión acerca de cómo empezar a enseñar a programar –cuando de enseñar a programar se trata- muchos creemos que Logo en la etapa primaria cumple cabalmente las expectativas tanto de la estructuración de la programación como las de desarrollo de pensamiento. Igualmente mucha gente defiende que el lenguaje que hay que enseñar es el C++ -cosa que no discuto porque comparto, pero en una etapa final de la Educación Básica-. De manera semejante, creo que es horrendo enseñar VisualBasic –no porque sea un lenguaje malo; no, todo lo contrario, es un lenguaje profesional que requiere madurez para obtener resultados que ameriten su uso; cosa parecida pasa con Java-. Retomando nuestro asunto que es la formación inicial en la programación y en esto hacemos alusión a enseñar a programar a niños entre los 8 y los 12 años. En este espacio son también muy buenos entornos de trabajo como como KPL (basado en lenguaje Basic) y scracth (basado en lenguaje Logo). Pero una cosa son los entornos de trabajo y otra bien diferente son las IDE (los ambientes de desarrollo). En éstas últimas por ejemplo, existe la posibilidad de la compilación y por tanto la ejecución del producto independiente del entorno. Enseñar a programar a los niños y jóvenes con Logo ha seguido una directriz, que consiste en enseñar a elaborar figuras según una secuencia de comandos. Cuando las figuras son básicas o que requieren un patrón predeterminado, es decir con una geometría a lo más definidas a patrones de simetría axial, o grupos básicos la dificultad es mínima; pero cuando requiere de estructuras geométricas más exigentes (teselaciones, fractales,…) el ejercicio de la programación se vuelve engorroso y tortuoso en la medida que se requieren fuertes conocimientos geométricos previos. En este sentido el fracaso no radica en el lenguaje sino en
  • 2. su didáctica; en pretender abordar un desarrollo sin los concebidos prerrequisitos geométricos. Surge la pregunta: ¿se debe tener fuertes conocimientos geométricos para aprender a programar en Logo? Antes de responder, debe aclararse que una cosa es enseñar a programar con Logo y otra es enseñar a programar en Logo. El objetivo de la enseñanza de la programación es la primera; pues como se manifestó arriba se puede “enseñar a programar con Pascal”, “se puede “enseñar a programar con C++”, se puede “enseñar a programar con Delphi”, etc. El fin último es enseñar a programar, el lenguaje es la herramienta; el medio. Pero si de lo que se trata es de enseñar el lenguaje como tal, se requieren precisamente esas estructuras de programación y otros recursos como la diagramación libre, la estructurada y en general los lenguajes de representación. Aprender un lenguaje de programación se puede hacer desde cero o desde el púlpito de un Gurú. Mucha gente, después de haber trabajado por años con un lenguaje, tuvo que aprender un nuevo lenguaje en pocas semanas; de no haber tenido esas estructuras de programación habrían durado mucho más e incluso tardar años en la reconversión. En alguna medida las didácticas de una segunda lengua se asemejan a las didácticas de la enseñanza de un lenguaje de programación y éstas se diferencian de las didácticas de la programación. Esto es que aprender a programar se puede realizar sin el conocimiento de un lenguaje de programación, como lo propone precisamente el proyecto Léxico. Así pues, enseñar Logo, a programar en Logo es muy diferente a aprender a programar con Logo. Para aprender a programar con Logo, la metáfora de las figuras y el uso de una geometría básica está bien; pero para aprender a programar en Logo, esa metáfora no es útil. Primero porque realmente sí se requieren serios conocimientos geométricos, algebraicos y topológicos y segundo porque en este enfoque no es evidente el trabajo subyacente de las listas, que es la razón de ser de Logo. Los lenguajes, en general, tienen unos espacios de definición: intentad hacer una página web con C++; intentad hacer un protocolo de red con Cobol o Fortran (que se puede se puede, claro. A costa de que?) Semejante cosa ocurre con Logo. Su diseño inicial y su pretensión no es ser un lenguaje profesional (quizás para ello esté LISP) sino ser un lenguaje para la enseñanza y dentro de éste campo para desarrollar estructuras de pensamiento. Tal vez por ello, muchos de los entornos Logo están elaborados en lenguajes profesionales; un excelente entorno (Logográfico –argentino-) ha sido desarrollado con VisualBasic; los clásicos (WMSLogo, FMSlogo) han sido desarrollados en C++; un entorno muy bueno (el Xlogo) ha sido desarrollado en java y el último entorno que conocí fue elaborado en Python. No conozco ningún compilador de C++ o Pascal elaborado en Logo (eso sería como elaborar un diccionario de español elaborado en inglés). Después de estas disquisiciones entremos en materia. Lo que pretendemos es enseñar a programar en Logo y por ello su enfoque serán las listas. Tampoco vamos a ir muy lejos –el tiempo y el espacio apremian-, solamente trataremos lo básico; lo necesario para trabajar con listas. LAS LISTAS En general, todos sabemos que es una lista; las entendemos como una secuencia (horizontal o vertical) de expresiones que pueden estar ordenadas o no. Así, un directorio telefónico es una lista con algunos tipos de identificadores para separar segmentos de expresiones. Un párrafo
  • 3. es una lista de palabras con algunos tipos de identificadores para separar segmentos de palabras. El párrafo tiene un identificador de inicio (usualmente un espacio previo y una letra mayúscula) y otro indicador de final (usualmente el punto aparte y un espacio posterior). Un “punto seguido” es un indicador de separación de un segmento del párrafo y divide el párrafo, pero no lo concluye; cosa semejante podría decirse de la “coma” y el “punto y coma”. Un “espacio en blanco” es un delimitador de separación. En Logo las listas están asociadas a un tipo de estructuras arbóreas (ver artículo sobre estructuras en árbol) que nos permiten establecer la secuencia de los elementos que contiene la lista. Una lista en Logo tiene un identificador de inicio (el paréntesis cuadrado “[“ ) y un identificador de terminación (el paréntesis cuadrado “]“ ). Los elementos de la lista deben una relación matemática : → ℕcon el conjunto de elementos de la lista. Dos listas son estar contenidos entre estos dos identificadores. Los elementos están ordenados de acuerdo a diferentes si dadas : → ℕ y : → ℕ se tiene que ≠ . Más específicamente , diríamos que y deben ser tales que : → ⊊ℕ y : → ⊊ con ≠ . ℕ Una lista puede ser vacía. En este caso su único elemento es el “caracter en blanco”. El “caracter en blanco” o “espacio en blanco” sólo se considera como elemento en éste único caso, en los demás se considera como un indicador de separación entre elementos. Es claro pues que no se puede utilizar el espacio en blanco dos veces seguidas para indicar por ejemplo: (caracter)(espacio en blanco)(espacio en blanco)(caracter). Pues esto sería lo mismo que: (caracter)(espacio en blanco)(caracter). Y por tanto no se admite: (espacio en blanco)(espacio en blanco)(espacio en blanco)(espacio en blanco)…(espacio en blanco)(espacio en blanco). Ya que todos ellos equivaldrían a uno solo. Logo además de considerar las listas, dispone de otros tipos de datos como las “palabras”. Una palabra es un conjunto de caracteres (letras, números, caracteres especiales: alfanuméricos, símbolos de puntuación, símbolos de acento, etc.). Se tiene pues que el “carácter en blanco” define la “palabra vacía”. Ejemplos de palabras serían: a, 4, color, amarillo, ioki, aníbalnicolás, siuleuquirneojuaraodeivo, a2009m11d26, 1+4=5, 9^2igual81, unodostres. Para el intérprete del lenguaje Logo (que en adelante llamaremos simplemente Logo) una palabra puede ser cualquier cosa que contenga un caracter o muchos siempre y cuando no estén separados por el delimitador “espacio en blanco”. A su vez una lista no es más que un conjunto de palabras o de listas o de combinaciones de palabras y listas. Existen muchas definiciones de lista. La primera y más elemental es decir que: Definición 1: Una lista es un conjunto de palabras. Ejemplos: a) [ a e i o u]; b) [ 1 2 3 4]; c) [ a A7 i(8) águila uh!]; d) [ … y Aladino dijo: ábrete sésamo!]; e) [ uno dos tres]; f) [ uno tres dos]; g) [ 1 dos 3]; h) [ unodostres]; i) [ ]. Es claro que las listas (e) y (f) son distintas porque aunque los elementos son los mismos, el orden es distinto. En las listas (e) y (g) los elementos son distintos; en la lista (h), hay un solo elemento, lo mismo que en la lista (i).
  • 4. Esta definición es bastante débil por cuanto no admite listas como: a) [ a [ e i o u] ] b) [ a [ e i] o [u] ] c) [ [ ] [ a [ e ] ] [ [ i ] [ [o] ] [u] ] Una definición más precisa sería: Definición 2: Secuencia ordenada de palabras y/o listas delimitadas entre los indicadores “[“ y “]”.