小编hij*_*ian的帖子

当CL程序作为shell脚本调用时如何使用quicklisp?

我目前在Common Lisp中有一个小程序,我希望它作为shell脚本运行.我正在使用SBCL并且完全没问题,所以我宁愿留在这个平台上.:)

我知道这个--script选项,除了(ql:quickload)形式,它完美无缺.

我的程序使用CL-FAD,它加载通过ql:quickload(我想我应该提到它是来自quicklisp的包加载函数).当脚本运行到评估时

(ql:quickload :cl-fad)
Run Code Online (Sandbox Code Playgroud)

形式,它打破了下一个错误:

package "QL" not found
Run Code Online (Sandbox Code Playgroud)

程序打包在单个源文件中,该文件具有以下标题:

(defpackage :my-package
  (:use :common-lisp)
  (:export :my-main-method))
Run Code Online (Sandbox Code Playgroud)

它是简单的自动化可执行文件,因此我决定(可能是错误的)不要编写任何ASDF系统.它导出单个函数,应该在没有任何参数的情况下运行.

对于这个程序,我目前正在尝试编写启动器脚本,这就是我正在盯着的:

#!/usr/bin/sbcl --script
(load "my-program.lisp")
(in-package :my-package)
(my-main-method)
Run Code Online (Sandbox Code Playgroud)

这三行(不包括shebang)是我想要自动化的.正如我在文档中看到的那样,使用这个shebang的脚本可以被称为简单./script.lisp,并且它确实这样做...具有之前描述的错误.

我需要在启动器中添加什么:cl-fad才能正确加载?文档说明使用--script选项SBCL不加载任何init文件,所以我真的需要复制行

#-quicklisp
(let ((quicklisp-init (merge-pathnames "systems/quicklisp/setup.lisp"
                                       (user-homedir-pathname))))
  (when (probe-file quicklisp-init)
    (load quicklisp-init)))
Run Code Online (Sandbox Code Playgroud)

(ql:add-to-init-file添加到.sbclrc),到我的启动器脚本?也许我的程序设置有一些深层的架构缺陷?

是的,当我输入我尝试在sbcl本身的REPL中自动化的行时,程序按预期运行.

shell automation sbcl common-lisp quicklisp

15
推荐指数
2
解决办法
3015
查看次数

如何将未覆盖的文件添加到Yii应用程序的PHPUnit代码覆盖率报告中

我目前正在尝试获取基于Yii框架的PHP应用程序的代码覆盖率报告.

代码覆盖率由PHPUnit 3.6生成,我使用白名单方法来源文件过滤.

问题是,当我设置选项时addUncoveredFilesFromWhitelist="true",代码覆盖中断时出现以下错误:

Generating code coverage report, this may take a moment.PHP Warning:  include(CButtonColumn.php): failed to open stream: No such file or directory in /home/hijarian/systems/yii/framework/YiiBase.php on line 418
PHP Stack trace:
PHP   1. {main}() /usr/bin/phpunit:0
PHP   2. PHPUnit_TextUI_Command::main() /usr/bin/phpunit:46
PHP   3. PHPUnit_TextUI_Command->run() /usr/share/php/PHPUnit/TextUI/Command.php:125
PHP   4. PHPUnit_TextUI_TestRunner->doRun() /usr/share/php/PHPUnit/TextUI/Command.php:187
PHP   5. PHP_CodeCoverage_Report_HTML->process() /usr/share/php/PHPUnit/TextUI/TestRunner.php:373
PHP   6. PHP_CodeCoverage->getReport() /usr/share/php/PHP/CodeCoverage/Report/HTML.php:133
PHP   7. PHP_CodeCoverage_Report_Factory->create() /usr/share/php/PHP/CodeCoverage.php:141
PHP   8. PHP_CodeCoverage->getData() /usr/share/php/PHP/CodeCoverage/Report/Factory.php:65
PHP   9. PHP_CodeCoverage->processUncoveredFilesFromWhitelist() /usr/share/php/PHP/CodeCoverage.php:173
PHP  10. include_once() /usr/share/php/PHP/CodeCoverage.php:516 …
Run Code Online (Sandbox Code Playgroud)

php phpunit code-coverage yii

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

如何在material-ui组件上设置HTML元素ID?

我有一个使用Material-UI用 Gatsby.js 构建的网站。

具体问题是这样的:我想使用Google标签管理器“元素可见性”触发器。如果某些 HTML 元素变得可见,GTM 应该触发一些 GA 标记。

问题是这样的:我如何为 GTM(或其他任何东西)的material-ui 组件指定 HTML ID 来找到它?

第一个例子:

// ...react imports omitted...
import makeStyles from '@material-ui/core/styles/makeStyles';
import Box from '@material-ui/core/Box';
import Grid from '@material-ui/core/Grid';
import CloseIcon from '@material-ui/icons/Close';

import Link from '~components/Link';
import ButtonSubmit from '~components/form-buttons/ButtonSubmit';
import Container from '~components/Container';

// ... all other imports are in-house code

const useStyles = makeStyles(theme => ({ /* ...styles... */}));

const GuestUserSoftSaleSecondPopup = ({ which, ...rest }) => {
  const classes = useStyles(); …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs material-ui

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

为什么highlight.js会忽略语言类?

我正在使用Highlight.js库在Blogger中对代码进行语法突出显示,并且它拒绝正确地突出显示Lisp代码.

在Blogger上的文章中:

<pre><code class="lisp">
  (coerce (average 1 2 3 4) 'float)
  > 2.5
</code></pre>
Run Code Online (Sandbox Code Playgroud)

在结束前的设计模板中</head>:

<script src='http://yandex.st/highlightjs/7.0/lisp.min.js' ></script>
<script src='http://yandex.st/highlightjs/7.0/highlight.min.js' ></script>
<link href='http://yandex.st/highlightjs/7.0/styles/github.min.css' rel='stylesheet' />
<script type='text/javascript'>
  hljs.initHighlightingOnLoad();
</script>
Run Code Online (Sandbox Code Playgroud)

在打开文章时,突出显示被破坏,Firebug在HTML面板中显示:

<pre>
  <code class="lisp ruby"> // WTF
  ... stylized RUBY tokens here ...
  </code>
</pre>
Run Code Online (Sandbox Code Playgroud)

在一些代码片段中,荧光笔放置<code class="lisp undefined">并拒绝突出显示.当我在Blogger上时,我真的不想将任何内容下载到任何地方,特别是当已经发布语言包时.我应该做些什么魔法让Lisp变得可识别?

javascript lisp blogger syntax-highlighting

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

如何在Yii2中找到属性等于value或为null的ActiveRecords

我基本上有一个活动查询,我想要过滤该列,如果它匹配ID或为null

MyTable::find()->andFilterWhere(['in', 'org_id', [null, $org_id]])->all();
Run Code Online (Sandbox Code Playgroud)

目前使用这个,工作正常$org_id,但它不会返回null值.我试过这个,看看我是否可以得到任何空结果,但无济于事

MyTable::find()->andFilterWhere(['in', 'org_id', null])->all();
Run Code Online (Sandbox Code Playgroud)

有小费吗?

php sql activerecord yii2

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

如何在Haskell中给出该函数的导数,从而在数值上计算复函数的值?

鉴于:

  1. 哈斯克尔
  2. df/dz在复平面上定义的复值函数U(假设z是a Complex Double).
  3. z1U在其上df/dz被定义.

题:

如何获得函数的价值是f(z)哪个df/dz是衍生物z1?I. e.假设复杂的平面,如何只给出它的导数,如何恢复原始函数的值?


这个问题与我之前关于计算复杂函数积分的问题有些相关,但它们是关于不同的东西.在这里,我感兴趣的不是计算某些标量值,而是在找到原始函数时给出它的导数.它主要是计算这个导数的不定积分.

haskell integral complex-numbers derivative

3
推荐指数
1
解决办法
619
查看次数