我目前正在尝试练习1.22,它需要一个名为runtime的函数,它返回系统运行的毫秒数。但是,我的环境(R5RS)似乎没有这个。它没有时间,current-milliseconds,current-inexact-milliseconds等。
我可以访问哪些功能来分析我的功能?哪些函数返回已经过的毫秒数,微秒数等?我当然更喜欢可用的最高精度计时器。
答案 0 :(得分:3)
可能最好的办法是将DrRacket中的语言切换为“使用源中声明的语言”,然后使用#lang racket
启动文件。然后可以使用current-seconds
和朋友等功能。
或者,您可以使用通过(require profile)
提供的分析库并记录here。
最后,你可能想看看Neil Van Dyke的SICP library for DrRacket。
答案 1 :(得分:1)
我在练习时使用了current-inexact-milliseconds。 剧透警报:您可以在SICP Exercise 1.22: Timed Prime Test的博客上查看我的解决方案。
顺便说一句,我在问了一个类似的问题Is there an equivalent to Lisp's “runtime” primitive in Scheme?
之后才解决了这个问题