小编Yan*_*Yin的帖子

Bash中$ {}和$()之间的差异

我有两个问题,可以使用一些帮助来理解它们.

  1. ${}和之间有什么区别$()?我理解这() 意味着在单独的shell中运行命令并放置$意味着将值传递给变量.有人能帮助我理解这个吗?如果我错了,请纠正我.

  2. 如果我们可以使用for ((i=0;i<10;i++)); do echo $i; done并且它工作正常那么为什么我不能用它while ((i=0;i<10;i++)); do echo $i; done?两者的执行周期有什么不同?

linux bash scripting

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

Haskell程序可以表示为Lisp S表达式吗?

这对于遗传编程很有用,遗传编程通常使用Lisp子集作为程序的表示.

我在网上找到了一个名为Liskell(Lisp语法,Haskell里面)的东西,但链接坏了,我找不到它上面的文件......

lisp haskell functional-programming genetic-programming

14
推荐指数
3
解决办法
1982
查看次数

Chrome扩展,在后台脚本中播放声音

我想从 Chrome 扩展程序播放声音,但我读到内容脚本无法播放声音。所以我把这段代码放在我的后台脚本中:

\n\n
var audio = new Audio("alert.ogg");\naudio.play();\n
Run Code Online (Sandbox Code Playgroud)\n\n

但还是没有声音。从 _ generated_backgound_page.html 的控制台中,我能够检查“网络”选项卡并看到声音文件已成功加载,但我什么也没听到。

\n\n

另外,在另一个 HTML 页面中,我可以加载另一个 Javascript,其中包含上述代码,并且它可以工作(我可以听到声音。)

\n\n

事实上它在后台脚本中似乎使它失败了。另外,请注意,我没有与后台 SCRIPT 关联的后台 PAGE。这有什么关系\xef\xbc\x9f

\n\n

编辑: 问题已解决。上面的代码有效,但我忘记听正确的声音输出通道。

\n

google-chrome-extension

5
推荐指数
1
解决办法
8942
查看次数

引导翻译?

我们知道,可以使用称为引导程序的技巧以自己的语言编写编译器。我的问题是,这个技巧是否也可以应用于口译人员?

从理论上讲,答案肯定是肯定的,但是人们担心,随着迭代的进行,对源代码的解释将变得越来越低效。那会是一个严重的问题吗?

我正在引导一个非常动态的系统,在该系统中程序将不断变化,因此它排除了编译器。

让我这样写出来:

让我成为口译员。

假设L是编程语言。

  • 我们可以用机器代码(最低级别)编写i1来解释L1。
  • 然后,我们用L1编写i2,解释L2(一种新语言)。
  • 然后,我们用L2编写i3,解释另一种新语言L3。
  • 等等...

我们上面不需要任何编译器,只需解释器。对?

这可能是低效的。这是我的问题,如果确实效率低下,该如何克服。

language-agnostic compiler-construction bootstrapping interpreter

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