How to include files in DrScheme?

I use DrScheme to work through SICP, and I noticed that some procedures (like square) are used over and over again. I would like to put them in a separate file so that I can include them in other programs without rewriting them every time, but I cannot figure out how to do this.

I tried:

(load filename)
(load (filename))
(load ~/path-to-directory/filename)
(require filename)
(require ~/path-to-directory/filename)
(require path-from-root/filename)

None of these works. Obviously, I grab onto a straw - any help is greatly appreciated.

+3
source share
4 answers

From your question it is not clear which language level you are using; some legacy languages ​​may make certain mechanisms inaccessible.

The best inclusion / abstraction mechanism is a module.

"". , :

-square.ss:

#lang scheme

(require "square.ss")

(define (super-duper x) (square (square x)))

square.ss:

#lang scheme

(provide square)

(define (square x) (* x x))

"" "uses-square.ss", , .

: .

+4

, :

(include "relative/path/to/scheme/file.scm")

() .

+4

MIT/GNU Scheme :

(load "c:\\sample-directory\\sample-file.scm")

, DrScheme.

+1
(require "~/path-to-directory/filename")
+1

Source: https://habr.com/ru/post/1713975/


All Articles