» DEFINICION DE VARIABLES » HAZ
HAZ nombrevar valor
Asigna el valor indicado en valor a la variable nombrevar, que debe ser una palabra sin que importe si está en mayúsculas o minúsculas. Si la variable ya existe, cambia su valor. Si no, se crea una nueva variable global.
nombrevar:(PALABRA) Nombre de la variable.
valor:(OBJETO) Objeto que será asignado a la variable.
Ejemplo:
haz "foo [Hola, cómo estás]
muestra :foo
[Hola, cómo estás]
» DEFINICION DE VARIABLES » NOMBRE
NOMBRE valor nombrevar
Asigna el valor indicado en el argumento valor a la variable nombrevar, que debe ser una palabra, sin que importe si está en mayúsculas o minúsculas. Si la variable ya existe, cambia su valor. Si no, se crea una nueva variable global. Esta orden es parecida a pero con la entrada en orden inverso.
valor:(OBJETO) Objeto que será asignado a la variable.
nombrevar:(PALABRA) Nombre de la variable.
Ejemplo:
nombre [Hola, cómo estás] "foo
muestra :foo
[Hola, cómo estás]
» DEFINICION DE VARIABLES » LOCAL
LOCAL nombrevar
LOCAL nombrevarlista
(LOCAL nombrevar1 nombrevar2 ...)
Acepta como entradas una o más palabras, o una lista de palabras. Se crea una variable por cada una de las entradas, con el nombre de esa palabra. Las variables son locales en el procedimiento en que se encuentran. Las variables en Logo tienen un alcance dinámico; una variable local en un procedimiento no está disponible en los subprocedimientos invocados por ese procedimiento. Las variables creadas con no tienen valor inicial; se les debe asignar un valor (p.e.con ) antes de que el procedimiento intente leer su valor.
nombrevar:(PALABRA) Nombre de una variable local.
nombrevarlista:(LISTA) Lista de nombres (palabras) que serán variables locales.
nombrevar1:(PALABRA).
nombrevar2:(PALABRA).
Ejemplo:
para foo
haz "bar 1
escribe :bar
fin
foo
1
muestra :bar
1
para abc
local "xyz
haz "xyz 1
escribe :xyz
fin
abc
1
muestra :xyz
xyz no tiene valor
» DEFINICION DE VARIABLES » VALOR
valor VALOR nombrevar
valor : nombrevar
Devuelve el valor de una variable cuyo nombre es la entrada. Tiene como abreviatura (:)
valor "foo equivale a :foo
valor:(OBJETO).
nombrevar:(PALABRA).
Ejemplo:
haz "foo [Hola, cómo estás]
muestra valor "foo
[Hola, cómo estás]
muestra :foo
[Hola, cómo estás]
» CONTROL DE ESPACIO DE TRABAJO » EDITA
EDITA contenidolista
ED contenidolista
(EDITA)
(ED)
ED
Edita las definiciones de elemento(s), usando el Editor de Logo.
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
Ejemplo:
para "myprog
escribe "Horla
fin
myprog
Horla
edita "myprog
myprog
Hola
» CONTROL DE ESPACIO DE TRABAJO » EDTODO
EDTODO
Edita todo. Es una abreviación de .
Ejemplo:
para "myprog
escribe "Horla
fin
haz "foo "bar
edtodo
» CONTROL DE ESPACIO DE TRABAJO » EDITASESION
EDITASESION nombrearchivo
ESS nombrearchivo
Ejecuta el editor de Logo (ver ), de la misma manera que lo hace ; pero, en lugar de editar un archivo temporal, edita un archivo especificado en la entrada. Cuando se cierra el editor, Logo lee el archivo modificado como lo hace EDITA. EDITASESION también recuerda el nombre del archivo, así que un subsecuente comando EDIT sin entrada re-editará el mismo archivo.
EDITASESION es una alternativa a usar y . Con este comando puede mantener una sesion propia, controlar el orden en que aparecen las definiciones, mantener "comentarios" en el archivo, etc.
nombrearchivo:(PALABRA) Nombre de la sesión.
Ejemplo:
ess "misesion
; Este es mi primer programa
; Este archivo se llama misesion
para "myprog
escribe "Hola
fin
haz "variable 10
myprog
Hola
ed
» CONTROL DE ESPACIO DE TRABAJO » CARGA
CARGA nombrearchivo
(CG nombrearchivo)
CG
Carga un archivo. El archivo puede incluir definiciones de procedimiento con , que serán aceptados aunque esos procedimientos existan.
Si Logo ve un PARA definirá ese procedimiento.
Si Logo ve un HAZ creará la variable.
Si Logo ve código fuera de la definición de un procedimiento, lo ejecutará en el orden en que aparezca.
CARGA recuerda el nombre del archivo, de tal manera que posteriormente se puede escribir simplemente CG para recargar el contenido (majorado o aumentado) del archivo.
nombrearchivo:(PALABRA).
Ejemplo:
para myprog1
escribe "Hola1
fin
para myprog2
escribe "Hola2
fin
imts
para myprog1
para myprog2
guarda "myprogs.lgo
botodo
imts
carga "myprogs.lgo
imts
para myprog1
para myprog2
» CONTROL DE ESPACIO DE TRABAJO » GUARDA
GUARDA nombrearchivo
Guarda las definiciones de todos los procedimientos, variables y listas de propiedades no vacías, que no estén tapados, al archivo indicado.
nombrearchivo:(PALABRA).
» CONTROL DE ESPACIO DE TRABAJO » AYUDA
AYUDA nombre
(AYUDA)
Muestra información del manual de referencia sobre la primitiva o procedimiento de librería indicada. Sin entradas, muestra ayuda general.
Como excepción, el comando AYUDA puede ser usado sin paréntesis y sin entrada, si es que se lo ingresa solo en la línea de comandos.
nombre:(PALABRA).
» CONTROL DE ESPACIO DE TRABAJO » PONEDITOR
PONEDITOR rutaeditor
Indica a Logo que use el programa especificado como su editor, en lugar del editor por defecto.
rutaeditor:(PALABRA).
Ejemplo:
poneditor "pico
poneditor "notepad
» CONTROL DE ESPACIO DE TRABAJO » TRAZA
TRAZA contenidolista
Marca un elemento para ser ejecutado en modo trazar (modo de rastreo). Cuando se ejecuta un procedimiento que ha sido marcado, Logo envía un mensaje con los valores actuales de las entradas, también cuando el procedimiento ejecuta las primitivas o . Cuando se rastrea una variable, Logo envía un mensaje siempre que se le asigna un nuevo valor. Vea también .
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
Ejemplo:
para myprog :a
escribe :a
fin
myprog "Hola
Hola
traza "myprog
myprog "Hola
(myprog "Hola)
Hola
notraza "myprog
myprog "Hola
Hola
» CONTROL DE ESPACIO DE TRABAJO » NOTRAZA
NOTRAZA contenidolista
Desactiva el modo traza. Vea también .
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
Ejemplo:
para myprog :a
escribe :a
fin
myprog "Hola
Hola
traza "myprog
myprog "Hola
(myprog "Hola)
Hola
notraza "myprog
myprog "Hola
Hola
» CONTROL DE ESPACIO DE TRABAJO » TRAZADOS
contenidolista TRAZADOS
Devuelve una lista de contenidos que incluye todos los elementos rastreados del espacio de trabajo.
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
» CONTROL DE ESPACIO DE TRABAJO » PASO
PASO contenidolista
Marca un elemento para su ejecución en modo PASO. Siempre que se invoca un procedimiento en este modo, Logo escribe cada línea del procedimiento antes de ejecutarla y espera una pulsación del usuario para continuar con una nueva línea; también envía un mensaje siempre que el nombre de una variable "hace sombra a otra" porque se crea una variable local con el mismo nombre con o se utiliza una entrada de un procedimiento con el mismo nombre. Vea también .
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
Ejemplo:
para myprog
av 10
gd 90
av 20
gi 90
fin
myprog
paso "myprog
myprog
nopaso "myprog
myprog
» CONTROL DE ESPACIO DE TRABAJO » NOPASO
NOPASO contenidolista
Desactiva la ejecución en modo PASO. Vea también .
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
Ejemplo:
para myprog
av 10
gd 90
av 20
gi 90
fin
myprog
paso "myprog
myprog
nopaso "myprog
myprog
» CONTROL DE ESPACIO DE TRABAJO » ENPASO
contenidolista TRAZADOS
Devuelve una lista de contenidos que incluye todos los elementos en modo de PASO del espacio de trabajo.
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
» CONTROL DE ESPACIO DE TRABAJO » TAPA
TAPA contenidolista
Oculta los procedimientos, variables y listas de propiedades contenidos que aparecen en su entrada. Un elemento tapado no se incluye en las listas de salida de , , , y , pero se incluye en la lista de salida de . Por implicación, no contendrá los objetos tapados, ni los guardará .
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
Ejemplo:
para foo
Escribe [Estoy aquí]
fin
para bar
Escribe [Allí estoy]
fin
imts
para bar
para foo
tapa [[foo] [] []]
imts
para bar
foo
Allí estoy
» CONTROL DE ESPACIO DE TRABAJO » TAPAVAR
TAPAVAR nombrevariable
TAPAVAR varlistanombres
nombrevariable:(PALABRA) Nombre de variable que será tapada.
varlistanombres:(LISTA) Lista de nombres de variables que serán tapadas.
Ejemplo:
haz "foo 1
haz "bar 2
imtodo
Haz "bar 2
Haz "foo 1
tapavar "foo
imtodo
Haz "bar 2
muestra :foo
1
muestra :bar
2
» CONTROL DE ESPACIO DE TRABAJO » DESTAPA
DESTAPA contenidolista
Destapa los procedimientos, variables y listas de propiedades que aparecen en la entrada contenidolista. Esto es, estos elementos se mostrarán con , etc.
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
Ejemplo:
haz "foo 1
haz "bar 2
imvariables
Haz "bar 2
Haz "foo 1
tapanombre [foo]
imvariables
Haz "bar 2
destapa [[] [foo] []]
imvariables
Haz "bar 2
Haz "foo 1
» CONTROL DE ESPACIO DE TRABAJO » BOTODO
BOTODO
Borra todos los procedimientos, variables, y listas de propiedades de memoria.
Ejemplo:
para foo
fin
para bar
fin
imts
para foo
para bar
botodo
imts
» CONTROL DE ESPACIO DE TRABAJO » BOPROCS
BOPROCS
Borra todos los procedimientos no tapados de la memoria.
Ejemplo:
para foo
fin
para bar
fin
imts
para foo
para bar
boprocs
imts
» CONTROL DE ESPACIO DE TRABAJO » BORRA
BORRA contenidolista
BO contenidolista
Borra de la memoria los procedimientos, variables y listas de propiedades indicados. Si contenidolista es en realidad una PALABRA, BORRA borrará el procedimiento con ese nombre. Las primitivas no se borrarán a no ser que la variable tenga el valor CIERTO.
contenidolista:(LISTA) Lista de tres listas con procedimientos, variables y propiedades.
Ejemplo:
para foo
fin
para bar
fin
imts
para foo
para bar
borra "foo
imts
para bar
» CONTROL DE ESPACIO DE TRABAJO » BOVARS
BOVARS
Borra todas las variables no tapadas de la memoria.
Ejemplo:
haz "foo 1
haz "bar 2
imvars
Haz "bar 2
Haz "foo 1
imvars
» CONTROL DE ESPACIO DE TRABAJO » BOVAR
BOVAR nombrevariable
BOVAR varlistanombres
Borra de la memoria la variable(s).
nombrevariable:(PALABRA) Nombre de la variable a borrar.
varlistanombres:(LISTA) Lista de nombres de variables para borrar.
Ejemplo:
haz "foo 1
haz "bar 2
haz "baz 2
imvars
Haz "bar 2
Haz "baz 2
Haz "foo 1
bovar [foo baz]
imvars
Haz "bar 2
» INSPECCION » IMTODO
IMTODO
Escribe todas las definiciones no tapadas del espacio de trabajo.
Ejemplo:
para xxx
escribe "Hola
fin
haz "a 10
imtodo
para xxx
escribe "Hola
fin
haz "a 10
» INSPECCION » IMTS
IMTS
Escribe todas las líneas de título de los procedimientos no tapados del espacio de trabajo.
Ejemplo:
para xxx
escribe "Hola
fin
para bar
escribe "Hola2
fin
imts
para bar
para xxx
» INSPECCION » IMVARS
IMVARS
Comando que escribe todas las definiciones de todas la variables no tapadas que haya en el entorno de trabajo.
Ejemplo:
haz "nada 1
imvars
Haz "nada 1
» PREDICADOS » VAR?
verdad VAR? nombre
Devuelve CIERTO si la entrada es el nombre de una variable.
verdad:(BOOLEANO).
nombre:(PALABRA).
Ejemplo:
define "abc [[a b] [escribe :a] [escribe :b]]
haz "xyz 1
muestra var? "abc
falso
muestra var? "xyz
cierto
» PREDICADOS » PRIMITIVA?
verdad PRIMITIVA? nombre
Devuelve CIERTO si la entrada es el nombre de una primitiva. Observe que algunos de los comandos que vienen con Logo son procedimientos escritos en Logo, no primitivas.
verdad:(BOOLEANO).
nombre:(PALABRA).
Ejemplo:
para avanzad :arg
avanza :arg
fin
muestra primitiva? "avanzad
falso
muestra primitiva? "avanza
cierto
» CONSULTAS » LISTANOMBRES
contenidolista LISTANOMBRES varnombre
contenidolista LISTANOMBRES varnombrelista
Devuelve una lista formada por una lista vacía seguida de otra lista con el nombre o nombres de los argumentos.
contenidolista:(LISTA) Lista formada por 2 sublistas; la primera es una lista de procedimientos vacía y la segunda, una lista con los nombres de variables.
varnombre:(PALABRA) Nombre que se quiere poner en contenidolista.
varnombrelista:(LISTA) Lista de nombres que se quiere poner en contenidolista.
Ejemplo:
muestra listanombres [foo bar]
[[] [foo bar]]
» CONSULTAS » CONTENIDO
Devuelve una lista, formada por tres listas que contiene los nombres de los procedimientos definidos, las variables y propiedades. Esta lista incluye todos los elementos no tapados del espacio de trabajo.
contenidolista:(LISTA).
Ejemplo:
para proc1
fin
haz "nombre1 1
ponprop "prop1 "p1 1
muestra contenido
[[proc1] [nombre1] [prop1]]
» CONSULTAS » TAPADOS
contenidolista TAPADOS
Devuelve todos los elementos que se encuentran el espacio de trabajo.
contenidolista:(LISTA) Lista formada por tres sublistas que contiene los procedimientos, las variables y propiedades tapados.
Ejemplo:
muestra tapados
[[] [] []]
» CONSULTAS » LVARS
contenidolista LVARS
Devuelve una lista vacía (lo que indica que no son nombres de procedimiento), seguida de una lista con los nombres de las variable no tapadas del espacio de trabajo.
contenidolista:(LISTA).
Ejemplo:
haz "foo 1
haz "bar 2
muestra lvars
[[] [bar foo]]