小编And*_*ott的帖子

OCaml的并行化能力是什么状态?

我有兴趣将OCaml用于项目,但是我不确定它的并行化功能在哪里.OCaml中是否有消息传递功能?OCaml能否有效地使用1个以上的CPU?

我读到的关于这个主题的大部分内容是在2002 - 2006年写的,我最近没有看到任何东西.

谢谢!

parallel-processing ocaml

40
推荐指数
2
解决办法
9190
查看次数

clang_complete:OS X中的libclang.{so,dylib}在哪里?

我查看了通常的地方(/ usr/lib /,/ Developer/usr/lib /,/ usr/local/lib),它不在那里.

如果没有安装,有谁知道我可以在哪里找到安装说明?

谢谢!

我不确定我是否应该关闭它,但我找到了我想要的答案:

在OS X中,安装了XCode 4,libclang.dylib位于/Developer/usr/clang-ide/lib/libclang.dylib

vim clang clang-complete

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

Fortran未格式化的文件格式

我不明白fortran中未格式化文件的格式.

例如:

open (3,file=filename,form="unformatted",access="sequential")
write(3) matrix(i,:)
Run Code Online (Sandbox Code Playgroud)

将矩阵列输出到文件中.我发现它在两端填充了4个字节的文件,但是我真的不明白为什么,或者如何控制这种行为.有没有办法删除填充?

谢谢

fortran binaryfiles binary-data

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

编译器是否优化了对通过指针进行的简单函数的调用?

假设我有一个带函数指针的函数:

int funct(double (*f)(double));
Run Code Online (Sandbox Code Playgroud)

我传给它一个实际上没有做任何事情的函数:

double g(double a) { return 1.0;}
//...
funct(g);
Run Code Online (Sandbox Code Playgroud)

编译器会优化调用g吗?或者这还有开销吗?如果确实有开销,多少钱?足够值得重载函数来接收函数指针和常量值吗?

c++ optimization function-pointers

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

LLVM和优化的未来

我意识到LLVM还有很长的路要走,但从理论上讲,可以在GCC/ICC /等中进行优化.个别语言应用于LLVM字节代码?如果是这样,这是否意味着编译为LLVM字节代码的任何语言都有可能同样快速?或者是特定于语言的优化(在LLVM字节码阶段之前)将始终在优化任何特定程序中发挥重要作用.

我不太了解编译器或优化(只是危险),所以如果这个问题没有明确定义我会道歉.

compiler-construction optimization gcc llvm compiler-optimization

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

使用Homebrew和备用GCC

我已经gcc-4.6使用homebrew-alternatives gcc公式安装,但我似乎无法使用该GCC来安装其他公式.特别是Open-MPI和提升.

有谁知道如何使Homebrew使用这个新的编译器?

谢谢!

macos homebrew gcc

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

异步写入c ++ unix中的文件

我有一些长循环,我需要在每次迭代时将一些数据写入文件.问题是写入文件可能很慢,所以我希望通过异步写入来减少这个时间.

有谁知道这样做的好方法?我应该创建一个线程,通过写出来消耗放入缓冲区的任何东西(在这种情况下,单个生产者,单个消费者)?

我主要感兴趣的是除了标准库(C++ 11)之外什么都不涉及的解决方案.

c++ file-io asynchronous c++11

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

生锈中lambda表达的生命周期

如果我有一个函数返回一个函数:

fn<'r, T> ( p : T ) -> (&'r fn(&'r str) -> ~[(T,int)]) {
     return |s| ~[(p, 0)]
}
Run Code Online (Sandbox Code Playgroud)

但是,这似乎不起作用,我得到以下(有点重复)错误:

playground.rs:10:8: 10:29 error: cannot infer an appropriate lifetime due to conflicting requirements
playground.rs:10         return |s| ~[(p, 0i)]
                         ^~~~~~~~~~~~~~~~~~~~~
playground.rs:9:70: 11:5 note: first, the lifetime cannot outlive the block at 9:70...
playground.rs:9     pub fn result<'r, T>( p : T ) -> (&'r fn(&'r str) -> ~[(T, int)] ){
playground.rs:10         return |s| ~[(p, 0i)]
playground.rs:11     }
playground.rs:10:8: 10:29 note: ...due to …
Run Code Online (Sandbox Code Playgroud)

lambda lifetime rust

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

Emacs,切换特定窗口

我有一个缓冲区,我想在按键上的emacs窗口中"切换".

例如:

 ________________        ________________        ________________ 
|                |      |    |           |      |                |
|                |      |    |           |      |                |
|                |      |    |           |      |                |
|       W        |  ->  | S  |     W     |  ->  |        W       |
|                | <f3> |    |           | <f3> |                |
|                |      |    |           |      |                |
 ----------------        ----------------        ---------------- 
Run Code Online (Sandbox Code Playgroud)

S在左侧窗口是一个特定的缓冲.

问题出现了,无论窗口结构W是什么,都应该发生这种情况.如果其中W有几个不同的窗口,按下<F3>仍应在屏幕边缘创建一个新窗口,并将特定缓冲区放入其中,然后将其取走.

我不确定怎么做才是emacs然而.

windows emacs buffer

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

获取 Jupyter Notebook 中定义的对象的源

通常,如果你想获取一个对象的来源,你可以通过inspect模块获取:

import inspect
inspect.getsource(MyObject)
Run Code Online (Sandbox Code Playgroud)

但是,在 Jupyter 笔记本中,这不起作用:

import inspect

class Foo:
    def __init__(self, info):
        self.info = info

a = Foo("hi")

inspect.getsource(a)
Run Code Online (Sandbox Code Playgroud)

抛出错误:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-14-048b6f0c2e9b> in <module>()
      7 a = Foo("hi")
      8 
----> 9 inspect.getsource(a)

/usr/lib/python3.6/inspect.py in getsource(object)
    963     or code object.  The source code is returned as a single string.  An
    964     OSError is raised if the source code cannot be retrieved."""
--> 965     lines, lnum = getsourcelines(object)
    966     return ''.join(lines)
    967 …
Run Code Online (Sandbox Code Playgroud)

python inspect python-3.x jupyter-notebook

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