Easwy的Twitter微博(2010-05-09)

  • 一个大到足以赐予你一切所求之物的政府,也强到足以剥夺你所拥有的一切。— 的确如此 #
  • [scala] 犯了一个和运算符优先级有关的错误。原来在scala中,左移位操作(<<)的优先级小于加号(+)。看来加括号是个好习惯。 #
  • [vim] 在vim中使用CTRL-]跳转时,如果文件已经更改了,则vim会提示文件未保存,有时候比较麻烦。有两种办法解决,一种是设置'autowrite'选项,自动保存;另一种是使能'hidden'选项。后一种有一定风险,因为在退出vim时很容易忘记还有文件未保存。 #
  • [bash] 还没搞懂在bash脚本中什么[……]

    阅读完整文章

Easwy的Twitter微博(2010-04-18)

  • [scala] 用scala操作XML实在太方便了 #
  • [scala] scala的正则表达式用起来比Java简单多了,用scala真的能大幅提高编码效率 #
  • 发现google的网站管理员工具的热门搜索查询的显示格式又变了,以前是显示“某个关键词”在搜索结果中的排名,现在显示的是搜索关键词展示的次数和点击次数。看上去google有点想淡化搜索排名的意思。 #
  • [scala] private class的public method还能被外界访问吗?
    在Scala里好像是可以的。class不能被外界访问,而它的method却可以被外界访问?听起来似乎有点矛盾 #
  • [scala] Lis[……]

    阅读完整文章

Easwy的Twitter微博(2010-04-11)

  • function programming似乎翻译成函数化编程法似乎比较好,不过说出来有点绕口 #
  • [scala] 对函数编程一直比较好奇的是,函数编程里推荐使用短函数,推荐使用递归,难道不会有效率问题(函数调用时压栈退栈)和堆栈溢出问题吗? #
  • 上条中文字引用自:http://daiyuwen.freeshell.org/gb/acl2/acl2.html #
  • [引用]…觉得递归函数很不好理解…困难来自对函数的一个错误的比喻…把函数想象成某种形式的机器.原料就象参数一样到来;一些工作被转包给其它函数;最后完成的产品被组装好运出去,就象返回一个值. 一个更好的比喻是把函数想[……]

    阅读完整文章

scala学习:添加行号

我的第一个scala脚本完成的功能就是为文本文件添加行号,不过那个脚本中使用了变量,不太符合scala编程的思想。现在把这个脚本改造了一下,去掉var变量的使用,完全使用val值。另外,把脚本改成了需编译的程序。

LineNumber.scala程序如下[……]

阅读完整文章

Easwy的Twitter微博(2010-04-04)

  • vim: 编辑xml文件时,想把多个文件中单独占一行的'>'与上一行合并。先用这个shell命令打开所有xml文件:vim `find . -name "*.xml" ` ,然后用vi命令: :argdo :g/^\s*>\s*$/-1j | :w #
  • scala: 做了一个实验,对多重继承的问题已经明白了。如果trait没有调用super,那么就不会实现链式调用,而是变成了多重继承。这时,位于最后的 trait中override的那个函数版本生效,其它trait中override的函数不被调用 #
  • scala: 做了一个实验,对多重继承[……]

    阅读完整文章

Easwy的Twitter微博(2010-03-28)

  • scala: 对trait有一个疑问,如果两个trait覆写(override)了同一个method,但没用super的方式来调用,那应该不能实现链式调用了吧?那么,这两个trait中的哪一个会被调用呢?貌似多重继承(multiple inheritance)也应该存在这类问题 #
  • scala: trait与java中的interface不同,第一,它可以有具体实现;第二,trait可以实现链式调用。 #
  • scala: 在决定是否使用继承时,要问自己两个问题:1) "is-a"问题,即子类所代表的概念,是否是超类所代表概念中的一员。例如,Student is a P[……]

    阅读完整文章

Easwy的Twitter微博(2010-03-21)

  • scala: 用"scala HelloWorld"执行编译后的Scala程序时,提示:"no such file: HelloWorld",查了一下,原来scala缺省不把当前目录列入CLASSPATH,所以需要用"scala -cp . HelloWorld"来执行。 #
  • scala: scala中的List是immutable的,也就是说不可更改,在其上的操作会生成一个新的List对象。这样的确是线程安全的,不过对非常大的List来说,它的效率会如何? #
  • scala: 下载scala的lzPack安装程序后,使用如下命[……]

    阅读完整文章