Ruby China
  • 社区
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • 注册
  • 登录
Zete
@luikore
高级会员
第 2880 位会员 / 2012-07-16

55 篇帖子 / 3422 条回帖
245 关注者
6 正在关注
32 收藏
GitHub Public Repos
  • triez 140

    fast, efficient, unicode aware HAT trie with prefix / suffix support for Ruby

  • rsec 78

    Parser / Regexp Combinator For Ruby

  • regexp_optimized_union 11

    Regexp.optimized_union(word_list, regexp_options) generates optimized regexp for matching union o...

  • zscan 9

    Improved string scanner

  • stimulus-bind 9

    Enable simple data binding for stimulusjs

  • vscode-hypertab 3

    The Missing Tab Completion for VS Code

  • property-list 1

    Property list (plist) library with all formats support

  • keycap 1

    1.5u keycap for Kailh low profile switch

  • ffi-clang 0

    Ruby FFI bindings for libclang 3.4+.

  • llvm-node 0

    Node LLVM 4.0+ Bindings

More on GitHub
  • 概况
  • 话题
  • 回帖
  • 收藏
  • 正在关注
  • 关注者
  • 迷茫了,该怎么去找方向 at 2013年07月25日

    #39 楼 @ice_bb

  • 不知 社区有没有人用 Tmux 的 at 2013年07月25日

    #27 楼 @jjym nerdtree 不是按 o 打开的吗...

  • 在 Class 中混入 Module 的实例变量 at 2013年07月25日

    #18 楼 @blackanger

    Ruby 里说到的继承就是指 class A < B 这种语法结构,和 mixin 不同... 当多继承用只是 mixin 的一个用途而已,但是这个 "多继承" 和 Ruby 语法里的 "继承" 不是一回事,这么讲会产生混淆的...

    调 super 的一个问题就是菱形继承

    module A
      def initialize
        puts 'a'
      end
    end
    
    module B
      include A
    end
    
    module C
      include A
      def initialize
        puts 'c'
      end
    end
    
    class D
      include C
      include B
      def initialize
        super # 明显? 谁记住父类方法查找是深度优先还是广度优先?
      end
    end
    

    另一个隐患是 open class, 在上面的代码之外,再加上这个:

    module E
      def initialize
        puts 'e'
      end
    end
    
    class D
      include E
    end
    

    如果这两段代码载入顺序不同,结果也不同...

  • 在 Class 中混入 Module 的实例变量 at 2013年07月25日

    #16 楼 @blackanger

    当有多个 "上一层" 的时候,super 的语义就很牵强了

    class C < B
      include N
      include M
    end
    

    mixin 更倾向于用组合 (composition) 而非继承的方式去理解问题,例如:

    module Hand
    end
    
    module Leg
    end
    
    module Doll
      include Hand
      include Leg
    end
    

    Hand 是 Doll 的一部分,你偏要说 Doll 继承了 Hand 不就很奇怪么...

  • 问个很弱的问题。=~ 在 ruby 里是什么意思啊 at 2013年07月25日

    #2 楼 @jarorwar 就是一个方法,名叫 =~, 碰巧正则表达式和字符串都有这个方法

  • 在 Class 中混入 Module 的实例变量 at 2013年07月25日

    毕竟 mixin 不是继承,当又有 include 又有继承的时候,super 调到哪里就比较难弄清楚了

    笨办法:把 N 的初始化改个名字

    module N
      attr_accessor :v
      def init_n
        @v = ...
      end
    end
    
    class C
      include N
      def initialize
        ...
        init_n
        ...
      end
    end
    
  • 判断 params ['foo'] 存在,是数组,并且包含某个值的快捷方式? at 2013年07月25日

    #4 楼 @doitian 是的.. 而且 Hash 也有 include?, deleted

  • Rails 命令时有的时候很好用有时候出错 at 2013年07月25日

    可能需要 bundle exec rails 或者 NOEXEC_DISABLE=1 rails

    哪个好用加个 alias 就好了

  • 制作 Slides 的错误示范 at 2013年07月24日

    #4 楼 @lgn21st rabbit 的样式和 latex beamer 的样式很相似,就是都不够炫...

  • 判断 params ['foo'] 存在,是数组,并且包含某个值的快捷方式? at 2013年07月24日

    nil 判断可以去掉,因为 nil 必然不是 Array

  • 咨询一下这个怎么建模 at 2013年07月24日

    文档数据库很简单:要查什么样的结果,就存什么

  • coffeescript 使用简单问题 at 2013年07月24日

    coffee 里需要暴露到全局作用域的东西,用 window

    window.divover = (flag) ->
      ...
    
  • XML 引用 XSL 样式 at 2013年07月24日

    #2 楼 @liker 不知道... 手头没 IE ...

  • Rails 页面响应问题 at 2013年07月24日

    大概是选择器写错了,应该是 $("#send_message") 或者 $(".send_message") ?

    或者是 render 参数有问题?

  • 制作 Slides 的错误示范 at 2013年07月24日

    matz 用的是高桥流 http://book.douban.com/subject/4326862/

    主要内容在讲的部分...

  • XML 引用 XSL 样式 at 2013年07月24日

    我试了下,都放到 public 目录下,没问题啊

    建议检查下 xsl 的文件名

  • 为什么 Rails 在国内 这么多年,还是不火呢? at 2013年07月24日

    必须加个条件:"有 Java 基础时", RoR 才很难学...

  • 求推荐颜色或计算公式 at 2013年07月24日

    命名也很重要...

    同一个颜色 屎黑色 摩卡色 然后档次就上来了

  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月24日

    #46 楼 @bhuztez 在 lua 里 +, -, < 都不是 call 或者 call 的特化...

    而 lua 的

    call A, B, C
    

    参数用到了从 A 起的连续 B 个 (VM) 寄存器,返回值放到从 A 起的连续 C 个 (VM) 寄存器里 但是这些 VM 寄存器跑完一趟 mem2reg 完全可以对应到真机寄存器,不一定在栈里的

  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月24日

    #44 楼 @bhuztez 语义上就不是,vm register 访问是随机的,还可以 spill 到真 register 上

  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月24日

    #42 楼 @bhuztez lua 就是典型的寄存器机...

  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月24日

    #40 楼 @bhuztez 那大概就是寄存器机和栈机的区别了... 栈机实现简单,指令占用空间小,寄存器机实现略复杂,但可以指令执行需要的周期少 (可以少做一些 push / pop), 可以利用 cpu pipeline 一次执行好多个 (机器码) 指令

  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月24日

    #35 楼 @rasefon IO 完全不关语言的事啊... 难道不是操作系统或者网络的问题?有具体代码或者例子么?

    #36 楼 @bhuztez 不知道,大概是 python vm 里指定了 register modifier 的变量影响了流水线,导致空跑几个时钟周期之类的... 具体只能 micro benchmark 单个指令了吧...

    JIT 比解释慢没什么好奇怪的,java 1.1 刚加 JIT 的时候是默认不开的,因为开了反而更慢...

    erlang 生成了什么样的 byte code 也不知道啊,或许发现这个函数是 pure recursive 的把 memoize 应用上了...

  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月24日

    #22 楼 @jjym ...

    其实闹这么多不如加个 memoize ...

    require 'benchmark'
    require "memoize"
    include Memoize
    
    def fib n
      if n < 2
        1
      else
        fib(n - 1) + fib(n - 2)
      end
    end
    memoize :fib
    
    Benchmark.bm{|bm| bm.report{puts fib(35)}}
    
  • 请教个 ruby 问题? at 2013年07月24日

    ... 这样... ?

    O = Object.new
    def O.foo
      'foo'
    end
    
    K = Object.new
    def K.foo
      O.foo
    end
    
  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月23日

    #28 楼 @bhuztez 最后那个 LOAD_CONST None 是个死分支还是没删掉?

  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月23日

    #26 楼 @bhuztez 就等你说 erlang 最快了... 这个 benchmark 是非常适合做 JIT 的类型...

    你的 py3 可能是开发版有些编译参数有区别,我的机器上 brew 装的 python3 是比 python2 快一点的。

    多一条指令完全是因为 python 的 if 语句无值...

  • [Benchmark] Ruby 2.0 真的快了不少,还是我的 Python 代码有问题? at 2013年07月23日

    python 是取 attr 再 apply, non-method attr 没有 cache 的意义,估计就是 inline method cache 的区别了...

    如果在 ruby 源码的 vm_opts.h 里把这些优化选项改成 0 关掉:

    #define OPT_INLINE_METHOD_CACHE 0
    #define OPT_GLOBAL_METHOD_CACHE 0
    

    再 make install

    应该可以更接近 python3 一点...

  • 上一页
  • 1
  • 2
  • …
  • 60
  • 61
  • 62
  • 63
  • 64
  • …
  • 111
  • 112
  • 下一页
关于 / RubyConf / Ruby 镜像 / RubyGems 镜像 / 活跃会员 / 组织 / API / 贡献者
由众多爱好者共同维护的 Ruby 中文社区,本站使用 Homeland 构建,并采用 Docker 部署。
服务器由 赞助 CDN 由 赞助
iOS 客户端 / Android 客户端 简体中文 / English