你的 test.dll 里,GetSum 是 C call 吧?win32api 都是用 stdcall 的,calling convention 不同硬调就会败。
require "dl"
require "dl/import"
module Test
extend DL::Importer
dlload 'test.dll'
extern "int GetSum(int, int)"
end
Test.GetSum 3, 4
如果你是在开发基于 NaCl 的应用,就可以随便用各种语言操作 dom...
它们在浏览器是同构的。新 chrome 可以 inspect 一个元素,改属性,然后按保存就存回 sass 里了...
自从 Ola Bini 转 clojure 后就好久没关注过了...
data = stream.read
写到文件或者数据库都随意...
边听边下饭中...
还是 cruby 最快。要求吃内存少可以 mruby, 增量 gc 也不会卡帧,但速度会差点。
如果把 ruby 代码转换到其它格式能更快还能保持能力,官方 ruby 就不用做了... 或者你可以学 rubymotion 那样,牺牲部分能力然后转换成 objc (objc 对象模型比较接近,如果要转换成 c++ 就很困难), 但是就要消耗很多精力去开发。
windows 要快可以试试 vc 编译...
瓶颈处用 C/C++ 就好了,不纠结
只要不做浮点运算,性能就足够了...
ember 就是有点超大了... TIL 如果只是绑定下数据的话,用超小的 http://rivetsjs.com 就够了...
where('char_length(table_name.code) = 2')
https://dev.mysql.com/doc/refman/5.7/en/string-functions.html
ember 可以用 emblem 模板,angular 不能
angular 有依赖注入这种东西在,不好控制生命周期,和 jquery mobile 等兼容性不好
discourse 用 ember, 不过 angular star 数多 40% 左右
ember 让人担心的地方就是有 yehuda 在... 每次 yehuda 想重构什么东西的时候你们懂的...
zsh 只要不用 oh-my-zsh, 就很快。
fish 管道的写法变化有点大,另外不支持 heredoc..
祝福一下小朋友... 我们那个年代各种被老师家长拆散的现在都在后悔...
她在准备高考
光自动断句就很有用了,可以省掉大量精确调整字幕时间轴的时间. google 的语音识别还是一般般,不过也对听译/切时间有帮助的..
文中提的那本书 Exploring Everyday Things with R and Ruby 值得一看
阀值
...
scala 有没有括号和有没有副作用完全没联系吧...
object O {
def prop = {
println("side effect")
2
}
def main(xs: Array[String]) {
O.prop
O.prop
}
}
另外 scala 函数后面的括号又和其他语言不同,它其实是 tuple 来的...
object O {
def f(x:Int) = {
x
}
def main(xs: Array[String]) {
O.f(1)
val x = (1)
O f x
}
}
这时候你甚至会怀念 java... 至少 O.f
和 O.f()
还能看出区别,但 scala 里就看不出来了...
隔离了副作用的只有 haskell 能做到,scala 那种大杂烩是不可能语法隔离副作用的...
再另外 gcc 有告诉编译器函数无副作用的 attribute, 例如一个求平方的函数可以这么标记
int square (int) __attribute__ ((pure));
那编译器就知道它是 pure 函数,下面的代码
int x = square(3);
int y = square(3);
就会被优化成类似
int x = square(3);
int y = x; // pure 函数无副作用, 相同参数结果也相同, 不需要再调用一次了
我就喜欢不好的地方...
ruby 里的 .
总是发消息而不是取成员,没有二义性,是否带括号完全不重要.
javascript 里的 .
总是取成员而不是调用,如果一个成员是 function, 然后忘记写括号就败了。所以 coffee 里才不得不对无参函数调用加空括号。我觉得,强迫人写括号就是法西斯...
还有一些语言里 .
是带二义性的,只能靠后面的括号区分,这才是"野马".
lambda 是后来加上的,然后呢... 用 lisp 会感觉 lambda 比 ruby 好写么?
代码块是控制流不是 lambda. 你可以详细学学 smalltalk 是怎么整的就明白 block 的强大之处了...
当然代码块和 lambda 有相似之处,因为 closure 和 object 殊途同归。但是写久了以后就会发现是没有 silver bullet 的,二者在不同场景各有其用处...
关于自律可以看这个... http://yourbrainonporn.com/your-brain-on-porn-series
therubyracer (v8), ruby-python (python), hubris (haskell), ruby-inline (C), rinruby (R)... 直接窃取其他语言的劳动成果才是 ruby 程序员的做法...
block buffer size 弄大一点试试?
ftp.putbinaryfile(localfile, remotefile, 1000_000)