小编Rom*_*rio的帖子

是否有可能使Node.js使用Rhino作为Javascript引擎?

我在我的网络应用程序上使用Node.js进行多项工作,到目前为止还可以.

但是Node.js使用Google的V8作为默认的Javascript引擎(JSE),V8在x86和ARM指令集架构(ISA)上运行.

现在我有一台PPC处理器Mac计算机,我想运行Node.js.

为此,我建议使用Rhino + OpenJDK Shark虚拟机+低级虚拟机(LLVM)作为JIT编译器.目前,这看起来像是在PPC ISA上运行Node.js最适用的方式.或者,有更好的方法吗?

你能预先告诉我是否可以让Node.js与Rhino一起工作?顺便说一句,Node.js是用C++编写的,我确实有C++编程经验,即如果必须,我可能会尝试重新编辑Node.js的代码.

谢谢.

v8 powerpc rhino llvm node.js

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

Perl 6的reduce功能和reduction metaoperator给出不同的结果

my @s=<1 2 3 2 3 4>;
say reduce {$^a < $^b}, @s;
say [<] @s;
# --------
# True
# False
Run Code Online (Sandbox Code Playgroud)

我的问题有两个方面:首先,为什么归约元<运算符对运算符的处理方式不同?似乎归约元操作估计使用了一个变量,在从true到false的第一个更改中,保留了该更改,原因是:

say [\<] @s;
# ----------
# (True True True False False False)
Run Code Online (Sandbox Code Playgroud)

其次,我也想在reduce函数中使用它,即,在reduce函数的花括号内引入一些代码,以使其产生与reduce元运算符相同的结果。我该怎么做?谢谢。

reduction perl6 raku

12
推荐指数
1
解决办法
125
查看次数

Perl 6 calculate the average of an int array at once using reduce

I'm trying to calculate the average of an integer array using the reduce function in one step. I can't do this:

say (reduce {($^a + $^b)}, <1 2 3>) / <1 2 3>.elems;
Run Code Online (Sandbox Code Playgroud)

because it calculates the average in 2 separate pieces.

I need to do it like:

say reduce {($^a + $^b) / .elems}, <1 2 3>;
Run Code Online (Sandbox Code Playgroud)

but it doesn't work of course.

How to do it in one step? (Using map or some other function is welcomed.)

functional-programming perl6 raku

9
推荐指数
2
解决办法
162
查看次数

嵌套列表的Perl 6赋值超级运算符无法正常工作

您好我正在尝试在https://docs.perl6.org/language/operators#Hyper_operators中使用分配超级运算符Perl 6

?my (@one, @two) «=» (<1 2 3>,<4 5 6>);
say @one;
say @two;
# Prints nothing (empty array)

# Expected behaviour:
@one=<1 2 3>;
@two=<4 5 6>;
say @one;
say @two;
# Prints [1 2 3] and [4 5 6]
Run Code Online (Sandbox Code Playgroud)

如何使分配超级操作员正确运行?谢谢。

perl6 raku

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

MSYS2上的Perl6脚本导致“无法统计文件”错误

当我尝试MSYS2-64在Windows 7的(bash.exe)上运行简单的perl6脚本时,它说:

Could not open my-perl6-script.pl. Failed to stat file: no such file or directory
Run Code Online (Sandbox Code Playgroud)

相同的脚本可以很好地运行,CMD.exe因此我认为perl6和MSYS2之间有些不兼容。

$ perl6 -v 返回:

This is Rakudo Star version 2018.04.1 built on MoarVM version 2018.04.1 implementing Perl 6.c.
Run Code Online (Sandbox Code Playgroud)

perl6的bin文件夹是:

-rwxr-xr-x 1 win7 None  537938 May 11  2015 libgcc_s_sjlj-1.dll
-rw-r--r-- 1 win7 None  130262 May  7  2018 libmoar.dll.a
-rwxr-xr-x 1 win7 None   57681 May 11  2015 libwinpthread-1.dll
-rwxr-xr-x 1 win7 None 6633702 May  7  2018 moar.dll
-rwxr-xr-x 1 win7 None   57225 …
Run Code Online (Sandbox Code Playgroud)

cross-platform perl6 rakudo-star msys2 raku

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

Perl 6将split函数的输出解释为整数列表/数组

say "1 10".split(" ") 
Run Code Online (Sandbox Code Playgroud)

退货 (1,10)

当我使用这些110作为序列运算符的参数时[...]

say [...] "1 10".split(" ")
Run Code Online (Sandbox Code Playgroud)

返回,(1)而应该返回,(1 2 3 4 5 6 7 8 9 10)我想是因为split函数的输出被解释为字符串。

如何解决这个问题?谢谢。

perl6 raku

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

C++17 没有匹配的调用函数来减少错误

这段代码来自Apress 的C++17 Standard Library Quick Reference一书:

#include <numeric>
#include <vector>

using namespace std;
int main() {
  vector vec {4,2,5,1,3,6};
  int sum = reduce( begin(vec), end(vec));
}
Run Code Online (Sandbox Code Playgroud)

当我在Windows 7g++-9.2使用选项-std=c++17(或-std=gnu++2a)编译它时,我得到:

error: no matching function for call to 'reduce(std::vector<int, std::allocator<int> >::iterator, std::vector<int, std::allocator<int> >::iterator)'
Run Code Online (Sandbox Code Playgroud)

这段代码有什么问题?谢谢你。

c++ c++17

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

如何在Lisp中将0添加到整数列表中

我有一个整数列表(3 11 7 26 5)

我写了一个函数来预置0到1位数字:

(defun beautify (list)
  (mapcar #'0-add list))

(defun 0-add (1digit)
  (format nil "~2,'0d" 1digit))
Run Code Online (Sandbox Code Playgroud)

输出("03""11""07""26""05")

但是,我想(03 11 07 26 05)

我怎么安排呢?

lisp format common-lisp

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

如何在此特定文本上使用正则表达式捕获多个单词?

我正在尝试从以下示例文本中提取薪水最高的职位:

Data Scientist

#1 in Best Paying Jobs

5,100  Projected Jobs $250,000 Median Salary 0.5% Unemployment Rate

Programmer

#2 in Best Paying Jobs

4,000 Projected Jobs $240,000 Median Salary 1.0% Unemployment Rate

SAP Module Consultant

#3 in Best Paying Jobs

3,000 Projected Jobs $220,000 Median Salary 0.2% Unemployment Rate
Run Code Online (Sandbox Code Playgroud)

通过使用以下正则表达式和Perl代码。

use File::Glob;
local $/ = undef;
my $file = @ARGV[0];

open INPUT, "<", $file
    or die "Couldn't open file $!\n";

my $content = <INPUT>;

my $regex = "^\w+(\w+)*$\n\n#(\d+)";

my @arr_found …
Run Code Online (Sandbox Code Playgroud)

regex perl

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

为什么Common Lisp的apply函数给出了不同的结果?

当我在Emacs上尝试此代码时SLIME,该apply函数会给出不同的结果.是不是应该给出相同的结果?为什么它会给出不同的结果?谢谢.

CL-USER> (apply #'(lambda (n)
             (cons n '(b a))) '(c)) 

(C B A)

CL-USER> (cons '(c) '(b a)) 

((C) B A)
Run Code Online (Sandbox Code Playgroud)

common-lisp

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

Perl one liner中括号内的函数名称

我正在研究Perl one liner 教程,有一个这样的衬里:

ls -lAF | perl -e 'while (<>) {next if /^[dt]/; print +(split)[8] . " size: " . +(split)[4] . "\n"}'
Run Code Online (Sandbox Code Playgroud)

您看到函数名称split已在括号内.关于这种功能使用的文档很难在Google上找到,所以我找不到任何关于它的信息.有人可以解释一下吗?谢谢.

perl

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

Perl中qw表示的数组数组

您好我想形成这样的数据结构:

my @AoAoA = (
   [ qw/ [a b] [c d] [e f] / ],
   [ qw/ [r t] [m n] [k l] / ],
   [ qw/ [z x] [b a] [p u] / ]
    );
Run Code Online (Sandbox Code Playgroud)

在这个结构中,我在qw表示中调用数组数组,简称AoAoA,当我想访问第一个数组的第一个数组的第一个值时:

my $first_elt = @{$AoAoA[0]}[0];# supposed to be [a b]
my $first_val = @{$first_elt}[0];# supposed to be 'a'

print "$first_val\n";
Run Code Online (Sandbox Code Playgroud)

它什么都不打印.我如何安排它以便我能正确访问该值?谢谢.

perl data-structures

0
推荐指数
1
解决办法
153
查看次数