Ruby China
  • Topics
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • Sign Up
  • Sign In
Zete
@luikore
VIP
NO. 2880 / 2012-07-16

55 Topics / 3423 Replies
245 Followers
6 Following
32 Favorites
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
  • Overview
  • Topics
  • Replies
  • Favorites
  • Following
  • Followers
  • 如何将 Json 转换成 Hash? at January 07, 2013

    #7 楼 @robertyu 那是在 pry 输入的,代码中这么写不行?

    require 'json'
    JSON.parse '{
    "name": "name",
    "id": 12112,
    "sex": "male",
    "birthday": "2012-09-08"
    }'
    
  • 如何将 Json 转换成 Hash? at January 07, 2013

    #6 楼 @Saito

    char 类型问题可多了... 首先字符串必须内码一致并且用定长编码,如果处理是不同编码的内容,就要先统一转换成内码再处理,你是可以直接用 enumerable 方法,但是之前和之后的转换比 each_char / each_byte 要麻烦,而且用户又怎么知道迭代的是字符还是字节呢?

    内码其实用 utf-32 才是正确的,但由于历史原因 (最初他们以为全宇宙字符不会超过 65535 个), 常见语言都用了 utf-16 (最初定长的时候叫 ucs-2), 例如 C++ 的 wchar_t (wchar_t 在各平台长度不一样又是另一个坑了...), OC 的 uchar, Java 的 char.

    但 utf-16 和 utf-32 都有 less endian 和 big endian 的不同 (例如 windows 的 "unicode" 和 java 的 "unicode" 是二进制不兼容的)...

    超过 65535 的字符要两个 char 才能表示,为了解决这个问题,就衍生出各种新概念 (如 glyph) 去表达原本"字符"的意思,定长编码的预设也失效了,char 类型也不是字符的意思了,可坑爹了...

    ruby 处理 utf-8 字符串:

    "𝄞".size #=> 1
    "𝄞".bytesize #=> 4
    

    java 里:

    String s = "𝄞";
    s.length(); //=> 2 WTF?
    s.codePointCount(0, s.length()); //=> 要得到正确的结果, 还要在 javac 加上 -encoding UTF-8 参数
    

    所有基于 java 的二奶语言弄这类超出 65535 的字符都超蛋疼 (jruby 虽然结果正确,但 irb 输入都困难...) clojure 我整了个 rlwrap 可以输入了但正确结果我是弄不出来 ...

    归根结底最大的祸害就是这个暧昧不清的 char 类型...

  • ruby 条件区间的问题 at January 07, 2013

    #6 楼 @windwiny 不管 p327 还是 p362, range 作为逻辑条件都是上下文相关的:

    http://www.ruby-doc.org/docs/ProgrammingRuby/html/tut_expressions.html

    You can use a Ruby range as a boolean expression. A range such as exp1..exp2 will evaluate as false until exp1 becomes true. The range will then evaluate as true until exp2 becomes true. Once this happens, the range resets, ready to fire again

  • 如何将 Json 转换成 Hash? at January 07, 2013

    #4 楼 @Saito 其实 char 的唯一作用就是当整数用,既然有整数类型了要 char 有何用...

  • ruby 条件区间的问题 at January 07, 2013

    #4 楼 @windwiny

    boolean range 的值和上下文相关的,很容易出问题

    !!(false..false) #=> false
    !!(true..false)
    !!(false..false) #=> true
    

    所以已经不推荐了,用 vs.select{ |n| (3..6).cover? n } 吧

  • 如何将 Json 转换成 Hash? at January 07, 2013

    #1 楼 @Saito ''' 其实是 '' + ' ...

  • production 环境下怎么输出? at January 07, 2013

    production 输出的东西都在 logs/production.log 里了

  • 服务器端耗时异常?? at January 07, 2013

    spree 栈太深 -_-

  • 如何覆盖类已经存在的方法? at January 06, 2013

    没看明白..

    def a
      ... # 静态的逻辑
      yield
      ... # 静态的逻辑
    end
    
    a{ 动态的逻辑 }
    
  • 请问如何让 date 类型可以和 datetime 进行比较? at January 06, 2013
    Date.now.to_time < Time.now
    

    或者

    Date.now < Time.now.to_datetime
    
  • 话说 html 标签的 id 值可以设置多个吗?怎么改变 simple-form input 的 id 值? at January 06, 2013
    :label_html => {:id => "add-label"}
    :input_html => {:id => "add-input"}
    :wrapper_html => {:id => "add-wrapper"}
    
  • 2012年12月21日以后的数据丢失了 at January 05, 2013

    在 test_helper 里判断一下如果是 production 直接 exit! ?

  • "ta".classify 的结果是什么? at December 21, 2012
    $ pry
    > require 'active_support/all'
    > cd String
    > show-doc classify
    
  • rails 调用.so 文件类型的共享链接库 at December 20, 2012

    rails 里放到 lib 目录,或者在 config/application.rb 的最后加一行 (假设是 /home/xxx/y.so)

    require '/home/xxx/y.so'
    

    或者像 #3 楼说的那样

    $:.unshift "/home/xxx" # 这里最好用 unshift, 后面追加的话, 如果你的 so 和某个文件同名就载不来了
    require 'y' # 这里不用加扩展名也可以哦
    
  • 请教如何优化 at December 20, 2012

    #2 楼 @xuelz 视图很不一样可以不合并啊,用 render 就可以了

  • 请教如何优化 at December 20, 2012

    合并成同一个 action 加个参数判断是否是第一个页面链过来的?

  • Rails4 重大设计决策:“胖” Model 用 ActiveSupport::Concern 瘦身 at December 20, 2012

    代码过多加 module, 职责过多加 scope ...

  • 老大们决定用 JRuby on Rails,看看这个版块的冷清,就知道... at December 20, 2012

    #12 楼 @ywjno 不是,书名是 ガベージコレクションのアルゴリズムと実装 (图书馆里超容易被分类到环境工程类 orz), 内容是由浅入深介绍各种 GC 算法的,不是对特定 GC 的解读

  • sinatra 并发 性能 at December 20, 2012

    700 够高了...

    1 请求/秒就能撑起百万 PV/月的应用...

  • 老大们决定用 JRuby on Rails,看看这个版块的冷清,就知道... at December 20, 2012

    @lgn21st 再附带一提,nari 叫中村成洋,冰激凌工人出身,写了一本书:GC 算法实装, 暂时只有日文版,看了可以对现代高级语言的 GC 有更好的认识哦 (我不懂日语只看了书中的代码...)

  • 老大们决定用 JRuby on Rails,看看这个版块的冷清,就知道... at December 20, 2012

    #7 楼 @lgn21st

    2.0-preview1 的 ChangeLog 里有:

    sat Jan 7 22:25:50 2012 Narihiro Nakamura [email protected]

    • gc.c: use Bitmap Marking algorithm to avoid copy-on-write of memory pages. See [ruby-dev:45085] [Feature #5839] [ruby-core:41916].

    但 1.9.3-p327 没有

    另外 1.9.3 已经是使用了 lazy-sweep 手段的增量式 gc, 不会有像 1.8 那样的卡住的情况了

    再另外同样是这个作者 nari 已经做了 parallel gc 的原型,据称可以提升 40% 左右的 gc 速度

  • [求助] 盲人 网站 at December 20, 2012

    针对 css @media braile (盲文) 和 @media speech 整?

  • 老大们决定用 JRuby on Rails,看看这个版块的冷清,就知道... at December 20, 2012

    #4 楼 @xds2000 Ruby 2.0 的 COW friendly GC 的话,多进程部署各种优势啊,而且并行和并发是两回事,EventMachine 就是单线程内处理高并发的...

  • 老大们决定用 JRuby on Rails,看看这个版块的冷清,就知道... at December 20, 2012

    @xds2000 C 扩展慢的问题不好解决吧? Ruby 写 C 扩展很容易的一个原因是 Ruby 的 GC 是保守式 GC, 保守式 GC 可以通过扫描栈获得变量存活信息而不用在 C 代码中手动释放对象. 而 JNI 完全就不是这么回事,你要各种手动 JNIEnv->releaseXXX, 而且对象进入到 C 实现的代码中前,指针会在内存中 pin 住,直接脱离 GC 的 compact 阶段... 这种异构导致要么得用 Java 重写相应的 C 扩展,要么得在调用前走好厚的 FFI 包装,本来能变快的东西却变慢了...

  • 获取客户端真实 ip 地址 at December 19, 2012

    web 服务器没有办法获取代理后面的 ip 吧?

    可以弄贝叶斯方法筛选广告贴之类的...

  • Rails 中使用 ETag 加速页面载入 at December 19, 2012

    用 xml 解决一个问题,你就有了两个问题,然后再用 xslt, 你就有了ℵ2个问题

  • Rails 中使用 ETag 加速页面载入 at December 19, 2012

    XSLT 就是 xml 版的 lisp, 最早我就在暴雪官网看到过用... 后来换掉不用了,太蛋疼了...

  • wiki 指南 sed 这一步出错 (mac)(解决,谢谢,建议改一下 wiki) at December 19, 2012

    ?

    sed -i .bak 's/ftp.ruby-lang.org\/pub\/ruby/ruby.taobao.org\/mirrors\/ruby/g' ~/.rvm/config/db
    

    wiki 里不是有个 -e 参数么你怎么没加..

  • 坐了一天,应该做一下 JoJo 广播体操 at December 19, 2012

    #3 楼 @lgn21st 你需要安全裤...

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