Me gustaría incluir todas las funciones definidas en un archivo de raqueta dado para que tenga el mismo efecto que si se copiaran. ¿Es posible hacer eso?Incluyendo un archivo externo en la raqueta
Respuesta
Puede utilizar include
de la siguiente manera:
Crear un archivo llamado "foo.rkt"
que tiene este aspecto:
(define x 1)
(define y 2)
Luego, en otro archivo:
#lang racket
(require racket/include)
(include "foo.rkt")
(+ x y)
Debería ver el resultado 3
.
Puede ver la documentación para include
también.
Para exportar las funciones de un módulo, se utiliza provide
, considere un archivo "foo.rkt"
:
#lang racket
(define fortytwo 42)
(define (det a b c)
(- (* b b) (* 4 a c)))
(provide (fortytwo det))
El archivo "bar.rkt"
pueden ahora importar las definiciones de "foo.rkt"
:
#lang racket
(require "foo.rkt")
(define (baz a b c)
(+ (det a b c) (- c 4)))
La otra forma en que podría permitir que otros archivos tengan acceso a todo lo que está definido en el archivo, está usando (all-defined-out)
:
#lang racket
(define fortytwo 42)
(define (det a b c)
(- (* b b) (* 4 a c)))
(provide (all-defined-out))
Espero que ayude.
Tenga en cuenta también que hay 'include', lo que podría ser lo que la pregunta era originalmente acerca. –
de alguna manera incluir no funcionó en mi caso, pero su solución hizo el trabajo. – dKab
Creo que la sintaxis correcta para exportar esas dos funciones cuarenta y dos y det es '(proporcione cuarenta y dos det)'. –
Usted podría utilizar la carga
(load "assert.scm")
- 1. Incluyendo un archivo R5RS en otro archivo en la raqueta
- 2. Incluyendo un archivo erb en otro
- 3. incluyendo un archivo remoto en PHP
- 4. Incluyendo un archivo fuente Netlogo en otro
- 5. Incluyendo un archivo XML en un archivo XML/XSL
- 6. Incluyendo un archivo XSLT en un archivo ejecutable
- 7. Incluyendo archivo PHP en Joomla
- 8. javascript document.write en un archivo js externo
- 9. Incluyendo un archivo .js dentro de un archivo .js
- 10. Asp.Net script en un archivo js externo
- 11. Generar HTML en Raqueta
- 12. Incluyendo un archivo .idl en un proyecto de C++
- 13. incluye la clase Jfactory en un archivo php externo, Joomla
- 14. Programación de juegos en la raqueta
- 15. patrón condicional a juego en la raqueta
- 16. Cómo evaluar cadenas en la raqueta
- 17. Cómo abrir un archivo externo desde HTML
- 18. ¿Cargar archivo xml externo?
- 19. carga jQuery-Plantillas desde un archivo externo?
- 20. Fijaciones POST/GET en Raqueta
- 21. Incluyendo archivo de recursos en un proyecto por archivo .RC en lugar de archivo .RES
- 22. Cómo comprobar si existe un archivo en un servidor externo
- 23. Llamar a funciones de Drupal en un archivo PHP externo
- 24. Configuración Raqueta Geiser Emacs Ruta
- 25. referencia csc.exe archivo .dll externo
- 26. Incluyendo un archivo de encabezado de otro directorio
- 27. Cargar variables desde un archivo externo en PHP
- 28. Typo3 - Obtenga el idioma actual en un archivo php externo
- 29. ¿Podemos establecer un único archivo como externo en Subversion?
- 30. Nuevo código de Google Analytics en un archivo externo
Sam, lea [etiquetado de preguntas sobre el lenguaje de raqueta: etiquetas "plt-scheme" y "racket"] (http://meta.stackexchange.com/q/74042/147036). –
Lamentablemente, no tengo suficientes representantes para votar por los sinónimos. –
Perdón por despertar un hilo antiguo, pero ¿por qué no hay #lang racket en foo.rkt? – Manbroski