小编Mir*_*lov的帖子

任何用于wordpress的lisp代码highligher

我有个人Wordpress页面并计划发布lisp代码.默认情况下,Wordpress不支持lisp的代码突出显示器.有什么建议?

lisp wordpress syntax-highlighting

8
推荐指数
1
解决办法
317
查看次数

使用Lisp进行高阶编程:将函数传递给mapcar?

我只是在学习ANSI Common Lisp(在Win32机器上使用clisp),我想知道mapcar是否可以使用传入的函数作为正式参数?请参阅以下内容:

(defun foo (fn seq) 
    (mapcar #'fn seq))
Run Code Online (Sandbox Code Playgroud)

在我看来,这将提供比以下更大的灵活性:

(defun mult (i)
    (* i 2))

(defun foo ()
    (mapcar #'mult '(1 2 3)))
Run Code Online (Sandbox Code Playgroud)

lisp common-lisp

8
推荐指数
2
解决办法
4070
查看次数

模拟Python在Scheme中的范围

如何在Scheme中创建连续数字列表?

在Python中创建一个从1到10的整数列表range(1,11).方案有同等效力吗?

mzscheme --versionWelcome to Racket v5.2.1.

编辑:根据/sf/answers/500101731/实现范围功能,需要以下代码:

#lang racket
(require srfi/1)
(iota 5 1)
Run Code Online (Sandbox Code Playgroud)

python scheme

8
推荐指数
3
解决办法
4138
查看次数

为组织模式中的每个条目分配ID

Org-mode有一个名为的捆绑扩展org-id,它为组织模式文件实现全局唯一ID.每个条目(标题及其正文)都可以在其:PROPERTIES:抽屉中具有ID属性.

可以使用函数分配单个条目的新ID org-id-get-create.

如何为组织模式文件中的每个条目分配ID?

我可以使用Emacs方法自动执行此操作,就像调用org-id-get-create每个字符串开头的宏一样*.但我想知道org-mode是否已具备该功能.如果没有,请为此目的推荐最恰当的方式来编写elisp代码.

emacs elisp org-mode

8
推荐指数
2
解决办法
4794
查看次数

基于单元测试以生成的代码编写的程序

当我在进行测试驱动开发时,我思考是否可以通过基于测试的生成代码完全开发出假设程序.即是否有能力让生成器专门创建代码来传递测试.编程语言的未来只是编写测试吗?

tdd unit-testing code-generation

8
推荐指数
1
解决办法
709
查看次数

具有多个monad类型的Haskell do子句

我在Haskell中使用一个名为Threepenny-GUI的图形库.在这个库中,main函数返回一个UImonad对象.这让我很头疼,因为当我尝试将IO值解压缩到局部变量时,我收到错误抱怨不同的monad类型.

这是我的问题的一个例子.这是标准主函数的略微修改版本,由Threepenny-GUI的代码示例给出:

main :: IO ()
main = startGUI defaultConfig setup

setup :: Window -> UI ()
setup w = do

labelsAndValues <- shuffle [1..10]

shuffle :: [Int] -> IO [Int]
shuffle [] = return []
shuffle xs = do randomPosition <- getStdRandom (randomR (0, length xs - 1))
                let (left, (a:right)) = splitAt randomPosition xs
                fmap (a:) (shuffle (left ++ right))
Run Code Online (Sandbox Code Playgroud)

请注意第五行:

labelsAndValues <- shuffle [1..10]
Run Code Online (Sandbox Code Playgroud)

返回以下错误:

Couldn't match type ‘IO’ with ‘UI’ …
Run Code Online (Sandbox Code Playgroud)

monads haskell threepenny-gui

8
推荐指数
2
解决办法
610
查看次数

解决问题的标准:uuid(和其他)?

我的应用程序使用urn:uuid作为实体的URI.当然,当我得到有关资源的RDF信息时,被引用的实体(主题或对象)将在urn:uuid模式中包含URI.为了获取新实体的表示,可能是以REST方式,我需要一个"解析器",类似于dx.doi.org的DOIs.另一种情况可能是解析isbn:URI,因此要获得此URI的合理表示.

我的问题是关于URI-to-representation-URL解析的建议标准的相关内容.

uri resolution

7
推荐指数
3
解决办法
3771
查看次数

无法向SLIME发送有趣的字符

虽然我在任何地方都设置了UTF-8(在我的lein项目中,slime-lisp组自定义,Emacs缓冲区本身......),我在尝试运行代码时不断收到此错误(def beta "?"):

Coding system iso-latin-1-unix not suitable [...]
Run Code Online (Sandbox Code Playgroud)

例如,仅在Emacs中发生,而不是在lein repl从命令行运行时发生.

可能是什么原因造成的?我正在使用Ubuntu,如果这有任何区别.

unicode emacs clojure slime swank-clojure

7
推荐指数
1
解决办法
279
查看次数

检查Haskell中的列表是否平坦

The Little Schemer中有一个功能可以检查列表是否是平的:

(define lat?
  (lambda (l)
    (cond
     ((null? l) #t)
     ((atom? (car l)) (lat? (cdr l)))
     (else #f))))
Run Code Online (Sandbox Code Playgroud)

我正在尝试在Haskell中编写相同的递归函数,但没有成功:

is_lat :: [a] -> Bool
is_lat [] = True
is_lat ???
Run Code Online (Sandbox Code Playgroud)

我如何检查参数不在表单中[[a]]?换句话说,[1,2,3]是一个有效的输入,但[[1,3], [2,4]][[[1,2,3]]]没有.

我想在接受列表的递归函数中进一步使用它,以确保我只处理平面列表.

编辑:我看到人们因is_lat :: [a] -> Bool类型签名而感到困惑.我现在同意,我不应该在运行时检查类型.但是,是否可以在编译时检查类型?如何使该功能仅适用于平面列表?或者我应该彻底改变我的思维方式?

recursion haskell list pattern-matching the-little-schemer

7
推荐指数
3
解决办法
833
查看次数

在 Python 中展平复杂的目录结构

我想将文件从复杂的目录结构移动到一个地方。例如,我有这个深层次的层次结构:

foo/
    foo2/
        1.jpg
    2.jpg
    ...
Run Code Online (Sandbox Code Playgroud)

我希望它是:

1.jpg
2.jpg
...
Run Code Online (Sandbox Code Playgroud)

我目前的解决方案:

def move(destination):
    for_removal = os.path.join(destination, '\\')
    is_in_parent = lambda x: x.find(for_removal) > -1
    with directory(destination):
        files_to_move = filter(is_in_parent,
                               glob_recursive(path='.'))
    for file in files_to_move:
        shutil.move(file, destination)
Run Code Online (Sandbox Code Playgroud)

定义:directoryglob_recursive。请注意,我的代码仅将文件移动到它们的公共父目录,而不是任意目标。

如何简洁优雅地将所有文件从复杂的层次结构移动到一个地方?

python directory-structure flatten file-move

7
推荐指数
3
解决办法
8443
查看次数