From 1cc6fee9914659fc161781d2ae2a4143b675e8e5 Mon Sep 17 00:00:00 2001 From: sejo Date: Wed, 26 May 2021 18:07:55 -0500 Subject: =?UTF-8?q?p=C3=A1gina=20d-turing?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/d-turing.gmo | 85 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 src/d-turing.gmo (limited to 'src/d-turing.gmo') diff --git a/src/d-turing.gmo b/src/d-turing.gmo new file mode 100644 index 0000000..b1125ea --- /dev/null +++ b/src/d-turing.gmo @@ -0,0 +1,85 @@ +# d-turing + +bailando los inicios, una máquina de turing + +parte de las {compudanzas} + +# componentes + +## participantes + +la siguiente descripción depende de tres personas / roles: + +* cabeza en cinta +* semáforo de estado +* instructora + +la dinámica podría adaptarse fácilmente para dos o una persona(s), pero es más divertido bailarla en grupo. + +## materiales + +como materiales tangibles se requiere lo siguiente: + +* un conjunto de objetos flexibles para crear una fila con ellos: por ejemplo cordones, calcetines, bloques de madera... +* una tabla de reglas en papel o arcilla; al menos en lo que se memoriza + +## elementos + +una máquina en específico consiste de los siguientes elementos: + +* un conjunto finito de símbolos posibles a colocar en la cinta, con un conjunto de movimientos que correspondan uno-a-uno. +* una cinta con dichos símbolos, acomodados en una configuración inicial según sea el caso. +* un conjunto finito de estados posibles, cada uno con un movimiento correspondiente. +* un estado inicial. +* un par de movimientos que indiquen dirección en un eje; por ejemplo izquierda y derecha. +* una tabla de reglas, que responde lo siguiente: dado un símbolo encontrado en la cinta, y un estado actual: ¿por cuál símbolo hay que reemplazarlo, a qué dirección hay que mover la cabeza, y cuál ha de ser el nuevo estado? + +# guía + +## preparación + +es necesario que la cabeza en cinta conozca los símbolos posibles en la cinta, y sus movimientos correspondientes. además, ha de conocer los movimientos de dirección. + +el semáforo ha de conocer los estados posibles y sus movimientos correspondientes. + +la instructora tiene que conocer todos los movimientos nombrados arriba. + +## inicialización + +hay que acomodar la cinta de símbolos en una configuración inicial adecuada. + +la cabeza en cinta se coloca al lado del primer símbolo. + +el semáforo empieza a moverse con el estado inicial. + +la instructora se prepara. + +## el ciclo + +la cabeza en cinta se empieza a mover transmitiendo en qué símbolo se encuentra. + +la instructora observa el movimiento del semáforo y el movimiento de la cabeza en cinta, y busca en su tabla de reglas la entrada correspondiente: + +¿qué acciones hay que tomar a partir del estado actual y del símbolo leído por la cabeza en cinta? + +### con respuesta + +si la tabla tiene una respuesta, la instructora empieza a moverse para transmitir las acciones a tomar: + +* primero realiza un movimiento de símbolo: la cabeza en cinta lo recibe y lo usa para reemplazar al símbolo en el que se encuentra actualmente. +* cuando concluye la transformación, la instructora realiza un movimiento de dirección: la cabeza en cinta lo recibe y lo sigue para dirigirse al siguiente símbolo que se encuentra en esa dirección. +* finalmente, la instructora realiza un movimiento de estado: el semáforo lo recibe, y lo ha de empezar a realizar como indicación del estado actual. + +terminando esas acciones, el ciclo vuelve a comenzar. + +### sin respuesta + +si la tabla no tiene una respuesta, entonces la máquina se detiene. el cómputo ha terminado. + +# algunas máquinas + +próximamente + + +## llega(n) aquí +=> ./compudanzas.gmi {compudanzas} -- cgit v1.2.3