写一个打印运行时间的方法

By 黄油香蕉君 at 2019-06-06 • 1人收藏 • 167人看过
(define-syntax show-time
  (syntax-rules ()
    ((_) '())
    ((_ body ...)
     (begin
       (let ([start (current-time)])
         (printf "start\n")
         body ...
         (printf "end\n")
         (time-difference (current-time) start))))))

写一个打印运行时间的方法。我使用的是chez Scheme实现竟然没有找到show-time方法,有的同学希望告诉我。

方法写不算完美只是占时能用。如果有需要的同学欢迎提供改造。

4 个回复 | 最后更新于 2019-06-07
2019-06-06   #1

(time (procedure ...))

不仅包含精确到纳秒的运行时间,还提供GC时间和GC清扫大小

2019-06-06   #2

给力!

2019-06-07   #3

scheme里面这...是啥

2019-06-07   #4

回复#3 @physcrf :

代表0 至 N个参数


(procedure ...) =>


(procedure)

(procedure x)

(procedure x y)

(procedure x y z)

(procedure x y z ...)

登录后方可回帖

登 录
信息栏

Scheme中文社区

推荐实现 ChezScheme / r6rs / r7rs large
theschemer.org
Q群: 724577239

精华导览

社区项目

包管理器:Raven
HTTP服务器:Igropyr (希腊火)
官方插件:vscode-chez

社区目标:

完善足以使Scheme工程化和商业化的库,特别是开发极致速度的Web服务器和ANN模块。

一直以来Scheme缺少一个活跃的中文社区,同时中文资料的稀少,导致大多数因为黑客与画家和SICP而接触Scheme的朋友,在学完SICP后无事可做,不能将Scheme转换为实际的生产力。最后渐渐的放弃。
同时Chicken等实现,却因效率问题无法与其他语言竞争。本社区只有一个目的,传播Scheme的文明之火,在最快的编译器实现上,集众人之力发展出足够与其他语言竞争的社区和库。


友情链接:

Clojure 中文论坛
函数式·China


Loading...