Sintaxis de Scheme Básica

Bueno, en esta parte solo se dará una breve explicación de la sintaxis básica de scheme, para que antes de que empieces de lleno en este lenguaje puedas tomar nota de todos los términos que necesitaras para aprender este lenguaje 


Función
Descripción

                                                              Condicionales básicas
if
Condicional simple
(if <condicion>
    <valor de verdad verdadero>
    <valor de verdad falso>)
cond
     Condicional anidado
(cond
  [(<condicion>)
   (<valor de verdad de verdadero>)]
  [(<condicion>)
   (<valor de verdad de verdadero>)]
  ...
  [else (<valor de verdad de falso>)])
else
Sentencia condicional en el cond que determina que el siguiente valor de verdad es falso
[else (<valor de verdad de falso>)])
#t o true
Valor de verdad de verdadero
(if <condicion> #t ...) o 
(if <condicion> true ...)
#f o false
Valor de verdad de falso
(if <condicion> ... #f) o 
(if <condicion> ... false)
and
Operador condicional y, las condiciones tienen que ser verdaderas para que arroje un valor de verdad verdadero
(<condicion a> and <condicion b>)
or
Operador condicional o, con que solo una de las condiciones se cumpla se arrojara un valor de verdad verdadero
(<condicion a> or <condicion b>)
not
Operador condicional no, invierte la condición, si la condición arroja verdadero, con el not esa misma condición arrojara falso
(not <condicion>)
Más de condicionales
number?
Evalúa si el dato es un numero
(number? 123)
string?
Evalúa si el dato es una cadena de texto
(string? "hola mundo") -> #t
string=?
Evalúa si el dato (implicando que sea una cadena de texto) es
igual a otra
(string=? "hola mundo" "hola mundo")
-> #t
integer?
Evalúa si el dato es un numero
(integer? 123) -> #t
negative?
Evalúa si un número es negativo
(negative? -123) -> #t
positive?
Evalúa si un número es positivo
(positive? 123) -> #t
zero?
Evalúa si un número es cero o no
(zero? 0) -> #t
Numéricos
abs
Arroja el valor absoluto de un numero
(abs -123) -> 123
sqr
Arroja el valor de un número elevado al cuadrado
(sqr 5) -> 25
expt
Arroja el valor de un número elevado a una potencia indicada por el usuario, el segundo numero ingresado es el exponente
(expt 5 2) -> 25
sqrt
Arroja la raiz cuadrada de un numero
(sqrt 25) -> 5
ceiling
Aproxima un numero real al siguiente entero, aproxima a techo
(ceiling 25.5) -> 26
floor
Aproxima un numero real a su equivalente en entero, aproxima a piso
(floor 25.5) -> 25
pi
El valor numérico de pi
pi -> #i3.141592653589793
 Otros
define-struct
Es la declaración para crear una estructura
(define-struct ejemplo
  (<numero> <numero> <cadena de texto>))
list o '
Es la declaración para crear una lista
(list 1 2 3 4) o '(1 2 3 4)
cons
Es la declaración para crear una lista, siempre se finaliza con un empty y cerrando todas las declaraciones
(cons 1 (cons 2 (cons 3 empty)))
append
Une dos listas
(append (list 1 2 3)
        (list 4 5 6)) ->
(list 1 2 3 4 5 6) o
(append (cons 1 (cons 2 empty))
        (cons 3 (cons 4 empty))) ->
(list 1 2 3 4)
empty
Un tipo de dato que representa nulo o vacío, sirve para finalizar listas
(cons empty empty)
empty?
Evalúa si un elemento es nulo o vacío
(empty? (list 1 2)) -> #f





Recuerdas si te sirvio este articulo no olvides compartir y dejarnos un comentario.
sintaxis básica de scheme




Compartir en facebook twitter Google tumblr pinterest

Entradas similares

0 Comentarios