Scheme DrRacket中的随机函数

Scheme DrRacket中的随机函数,scheme,racket,Scheme,Racket,我目前正在Mac OS X上使用DrRacket并选择语言“R5RS”,但当我输入 (random 100) 我收到错误消息: reference to undefined identifier: random 这里有什么问题?它是由丢失的包引起的吗?R5RS提供的函数是“随机”函数吗?我在的索引中查找,但在那里看不到。R5RS是一种最小的语言模式,当Racket处于R5RS模式时,它实际上会限制自己 球拍确实有其固有的功能。如果您使用的是#lang racket,它将自动可用。使用R5RS

我目前正在Mac OS X上使用DrRacket并选择语言“R5RS”,但当我输入

(random 100)
我收到错误消息:

reference to undefined identifier: random

这里有什么问题?它是由丢失的包引起的吗?

R5RS提供的函数是“随机”函数吗?我在的索引中查找,但在那里看不到。R5RS是一种最小的语言模式,当Racket处于R5RS模式时,它实际上会限制自己


球拍确实有其固有的功能。如果您使用的是#lang racket,它将自动可用。使用R5RS语言模式有什么原因吗?

正如dyoo指出的,R5RS中没有定义函数
random
。 如果您想在DrRacket中使用R5RS语言中的“foreign”函数, 您可以使用
#%require
导入它们

在这种情况下,在Racket文档中搜索
random
。请注意,
random
是模块
racket/base
的一部分。现在写:

(#%require (only racket/base random))
(random 10)

仅使用
only
确保只导入函数
random
racket/base

中存在的任何其他非R5R构造。我也尝试了random integer和random float,但得到了相同的响应。我找到了解决方案,数据包在PLaneT中可用。