小编tkf*_*tkf的帖子

如何在Emacs中删除已安装的软件包(版本24+)?

我想删除我安装的几个软件包.当我调用时package-list-packages,我注意到有一个' d'(删除标记)命令和' x'(执行).但是,似乎这只是从列表中删除包名称/描述而不是下面的实际文件~/.emacs.d/elpa.我做错了什么或错过了什么?当然必须有一些方法来删除已安装的包.

emacs24

45
推荐指数
2
解决办法
3万
查看次数

Clojure中的尾部呼叫消除?

有人可以将此(plt)Scheme代码重写为Clojure吗?

(define (f n)
   (printf "(f ~a)~n" n)
   (g n))

(define (g n)
   (printf "(g ~a)~n" n)
   (h n))

(define (h n)
   (printf "(h ~a)~n" n)
   (f (+ n 1)))
Run Code Online (Sandbox Code Playgroud)

以这种方式不会将程序f,g和h一起折叠并允许代码无限期地运行而不会崩溃?

scheme tail-recursion clojure tail-call-optimization

17
推荐指数
1
解决办法
639
查看次数

如何在PLT Scheme中打印结构以显示其字段?

我想这样的代码:

(define-struct thing (a b c))
(define th (make-thing 1 2 3))
Run Code Online (Sandbox Code Playgroud)

打印这样的东西:

(make-thing 1 2 3)
Run Code Online (Sandbox Code Playgroud)

当我在DrScheme或MzScheme repl中键入"th"时.我在DrScheme中使用"非常大"的语言,输出样式设置为"构造函数".这就是我在DrScheme中得到的:

(make-thing ...)
Run Code Online (Sandbox Code Playgroud)

(我真的得到三个点)

在MzScheme:

#<thing>
Run Code Online (Sandbox Code Playgroud)

scheme racket data-structures

4
推荐指数
1
解决办法
896
查看次数

在Racket Scheme中的"匹配"表格.关于匹配序列的问题

我正在尝试使用Racket的"匹配"表单,并希望匹配列表中的项目序列.每个项目都有特定的属性.例如,如果我想匹配交替的数字和字符串序列(大致)与正则表达式匹配:

#rx"([0-9]+ \"[a-zA-Z0-9]+\")+"
Run Code Online (Sandbox Code Playgroud)

下面的代码似乎可以完成这项工作:

(define (match-sequence L)
  (let ([n-lst '()]     ; Used to collect numbers found.
        [s-lst '()])    ; Used to collect strings found.
    (define  (m-test L)
      (match L
             [(list-rest (? number? n) (? string? s)  ... (? m-test))
              (set! n-lst `(,@n-lst ,n))
              (set! s-lst `(,@s-lst ,(car s)))                
              (list (reverse n-lst) (reverse s-lst))]
             ['()
              #t]
             [else
             #f]))
    (m-test L)))
Run Code Online (Sandbox Code Playgroud)

我意识到上面的#rx和代码并不完全匹配相同的序列,但它只是一个类比.

这是在Racket中写这个最简洁的方式吗?

我试过像这样的模式:

(list ((? number? n) (? string? s)) ...)
Run Code Online (Sandbox Code Playgroud)

而且球拍不接受这个.

模式如:( list(?number?n)(?string?s)...)要求匹配的列表的第一项是数字,其他所有项都是字符串.

我尝试了几种方式的quasiquotation和拼接,没有成功.

必须有一个更优雅的阵型,但我似乎无法找到它.任何帮助,将不胜感激.谢谢.

scheme racket

2
推荐指数
1
解决办法
964
查看次数