Resultados de la búsqueda a petición "racket"
¿Cómo puedes redefinir un identificador constante en DrScheme?
Estoy usando DrScheme para escribir un intérprete de Scheme. Defino un bucle de lectura, lectura, evaluación y estoy redefiniendo el procedimiento de evaluación. Esto funciona bien en otras implementaciones de esquemas como Chez Scheme, pero no ...
Ejecución de código de sustitución basado en reglas de coincidencia de patrones SICP
He encontrado el código de esta lección en línea (http://groups.csail.mit.edu/mac/ftpdir/6.001-fall91/ps4/matcher-from-lecture.scm), y estoy teniendo una gran experiencia tiempo tratando de depurarlo. El código se ve bastante comparable a lo que ...
¿Cómo paso una lista como una lista de argumentos en la raqueta?
Tengo una declaración como esta: ((lambda (a b c) (+ a b c)) 1 2 3) ; Gives 6 Y me gustaría poder pasarle también una lista así: ((lambda (a b c) (+ a b c)) (list 1 2 3)) ... excepto que esto no funciona porque toda la lista se pasa como 'a'. ...
Diferencias entre #lang esquema y #lang racket
Supongo que la raqueta #lang es un dialecto del esquema con muchas más estructuras innovadoras y funciones comunes, y tal vez sería más pedagógico. ¿Cuáles son las ventajas de una raqueta #lang contra el esquema #lang? Es mejor (o incluso ...
Lambdas anónimas que se refieren directamente a sí mismas
¿Scheme o cualquier dialecto del esquema tienen una especie de operador "propio" para que las lambdas anónimas puedan repetirse sin hacer algo como un combinador en Y o ser nombrado en un letrec, etc. Algo como (lambda (n) (cond ((= n 0) 1) ...
Comportamiento de citas anidadas en Scheme and Racket
Mientras escribía una función en Racket, accidentalmente ponía dos comillas simples delante de un símbolo en lugar de una. es decir, escribí accidentalmente '' a y descubrí un comportamiento de citas anidadas que parece extraño. Estoy usando ...
Convertir número a la lista de dígitos
¿Cómo convierto un número en una lista de dígitos? Actualmente estoy haciendo: ;; (num->list 12345) -> '(1 2 3 4 5) (define (num->list n) (local ((define (num->list n) (map (lambda (c) (char->num c)) (string->list (number->string n)))) ...
Cómo deshacerse de los duplicados en una lista, pero mantenga el orden
Estoy usando Estudiante intermedio con Lambda en DrRacket, me preguntaba cómo se eliminarían los duplicados en una lista, manteniendo el orden. Por ejemplo(remove-dup (list 2 5 4 5 1 2)) produciría(list 2 5 4 1). Hasta ahora, tengo esto: (define ...
Cómo hacer una GUI usando Lisp: DrScheme o Common Lisp
O el trabajo básico debe hacer para crear una GUI. Sé los componentes básicos de la GUI, pero por dónde empezar. Solo soy una persona de autoaprendizaje y estoy leyendo "Cómo diseñar un programa" (HtDP) al final del libro, el autor sugiere que ...
¿Por qué se define foldl de una manera extraña en Racket?
En Haskell, como en muchos otros lenguajes funcionales, la funciónfoldl se define de modo que, por ejemplo,foldl (-) 0 [1,2,3,4] = -10. Esto está bien, porquefoldl (-) 0 [1, 2,3,4] es, por definición,((((0 - 1) - 2) - 3) - 4). Pero, en ...