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
  • 概况
  • 话题
  • 回帖
  • 收藏
  • 正在关注
  • 关注者
  • win 下怎样使用 sock 代理进行 git clone? at 2013年06月25日

    我也网上搜了一下... http://stackoverflow.com/questions/15227130/using-a-socks-proxy-with-git-for-the-http-transport

  • 一个 utf-16 的 byte array 怎么转换成 string? at 2013年06月25日
    byte_array.force_encoding('utf-16le').encode 'utf-8'
    

    如果 le 不对就换成 'utf-16be'

  • Teahour 20 期:跟 @luikore 和 @skandhas 一起讨论底层开发和 Ruby VM at 2013年06月25日

    #42 楼 @bhuztez 你就从了吧

  • 如何插入一个 Middleware 在指定位置? at 2013年06月25日

    方向错了... 不是看 rails 而是要看 rack

    我没看仔细,请忽略...

  • 这里有喜欢 ACM 的同学嘛 at 2013年06月24日

    #2 楼 @zuozuo

    我写了个 https://gist.github.com/luikore/5850721 , 就是查表的,0.1 秒不到

  • 这里有喜欢 ACM 的同学嘛 at 2013年06月24日

    简单思路就是前半和后半都做个表 (其实可以用同一个表)

    表的内容是 { 值 => 和为这个值的排列数 }, 然后复杂度就 √n 了

  • Teahour 20 期:跟 @luikore 和 @skandhas 一起讨论底层开发和 Ruby VM at 2013年06月24日

    #18 楼 @jasl 主楼后厅的课,温度和灯光都很适合睡觉...

    #1 楼 @skandhas 你肯定有沙发 bot...

    乱序执行那里没说好,一开始还说错了 super scalar

    tagged pointer, direct threaded, inline method cache, specialized instruction 都是笼统的带过了...

  • Teahour 20 期:跟 @luikore 和 @skandhas 一起讨论底层开发和 Ruby VM at 2013年06月24日

    哈鸡卡西...

  • Ruby 的正则表达式真是强大啊 at 2013年06月24日

    #9 楼 @ruchee 只是每个语言都有其正则方言,Onigmo 是支持多种正则方言的...

  • 我的世界将是一个 RPG 的世界 at 2013年06月24日

    绝对不是 ruby python go

    肩扛火箭筒,还是 lz 进入了戏服界?

  • HTTPS Best Practices at 2013年06月24日

    #13 楼 @bhuztez -_- 其实密码学攻击没有直接找管理员套近乎来得快捷有效... 安全手段没有法律手段能保护利益...

  • HTTPS Best Practices at 2013年06月24日

    #11 楼 @hooopo

    nosniff 解决的是挂羊头卖狗肉问题,但没解决挂羊头卖毒羊肉问题. 在 github 和 http / https 证书非认证 的外站之间,还是能有中间人的空子。

    不过图片资源的隐患已经很小了,或许是浏览器多虑了...

  • 未来这五年,软件工程师如何安身立命? (下) ——Ruby 之父松本行弘谈《代码的未来》 at 2013年06月24日

    #1 楼 @skandhas 两个沙发都给你抢到了呀

  • Daniel Lv 明天是否有喜事呀 at 2013年06月24日

    #82 楼 @yedingding 这句子信息量巨大...

  • HTTPS Best Practices at 2013年06月24日

    #8 楼 @hooopo 假如客户端图片渲染程序有缓冲区溢出的问题,光图片就能种木马... warning 是表明有非认证资源,自动抓到自己服务器上并不算"认证"了这些资源的内容,保留这个 warning 才对

    不是变绿了就安全了,浏览器出警告是有它道理的... 虽然代抓图片可以避免客户端被设置 cookie, 加强隐私保护...

  • Hacker News 今天完全被 Snowden 刷屏了啊 at 2013年06月24日

    论如何逃脱跨国追捕...

  • HTTPS Best Practices at 2013年06月24日

    github 为站外图片移除那个黄色 warning 是不对的... 假安全=更危险

  • 请教 @luikore String.unpack 中的 "S>" 是什么意思? at 2013年06月24日

    #1 楼 @leozwa S> 和 S 可以一样也可以不一样,由于 S 用的是 native endian, 系统是 big endian 才一样。

    在 VAX, x86 指令里用的 word/dword/qword 数据,处理字符串的 W 系列的 win32 API 里,用的是 little endian. 我们的台机和本基本是 x86 的,所以 native endian 往往等于 little endian. Mac OS X 的 NSString 内部也是用 little endian 的 utf-16 code unit.

    但以前 sun 为了让 java 在他们的 sparc 上跑得比较快 (sparc 是 big endian 的), 字符串用了 big endian 的 utf-16 做内部表示 (文档里就笼统的说 unicode, 反正也没暴露 API).

  • 请教 @luikore String.unpack 中的 "S>" 是什么意思? at 2013年06月24日

    unpack 文档如 #1 楼 链接

    bit 就是位,8 bit 等于 1 字节

    S 意思是 short, 在 C 语言里 short 是 16 位也就是两字节表示的整数 小写 s 是有符号 (signed, 也就是能加负号), 能表示的整数范围是 -32768 到 32767 大写 S 是无符号 (unsigned, 也就是不能加负号), 能表示的整数范围是 0 到 65535 (所以 socket 端口可以在 0..65535 取值)


    关于 endian

    假设有两个字节 \x01\x02, 可以解释成 1*256 + 2, 也可以解释成 1 + 2*256, 到底怎么解释要看系统或者协议是怎么规定的。native endian 就是使用和系统一致的 endian.

    网络协议中一般用 big endian (network endian 和 big endian 一个意思).

    big endian 的意思就是先接收到的字节表示高位,后接收到的字节表示低位。 unpack 中用 > 表示 big endian, < 表示 little endian. 之所以用 > 这个符号是因为比较形象:左边的字节对结果影响比较大。

    "\x01\x00".unpack 'S>' #=> 1 * 256 + 0 = 256
    "\x00\x01".unpack 'S>' #=> 0 * 256 + 1 = 1
    
  • 如何用 validates 加 validates_with 验证新浪微博昵称格式:4-24 位字符,支持中文、英文、数字、“-”、“_” at 2013年06月23日

    正则的话 /\A[\p{Han}\p{Alnum}\-_]{4,24}\z/ 就行了,但是渣浪验证的长度是转码成 gb18030 后的字节数而不是字符数...

    validates :weibo_nick, length: {
      maximum: 24,
      tokenizer: lambda{|s| s.encode('gb18030').bytes }
    }
    
  • 抱怨 GitLab 安装麻烦的可看看这个。。 at 2013年06月23日

    #1 楼 @apexy

    这样写就可以了:

    yxfilm.us/blog/2013/06/centos6-4下安装gitlab5-2/

    yxfilm.us/blog/2013/06/centos6-4下安装gitlab5-2/

    标准中 url 是不带非 ascii 字符的,你在浏览器上地址栏看到的是为了好看自动把 %xx 转换了结果

  • 求 JS 代码对应的 Ruby 代码... at 2013年06月23日

    #11 楼 @blacktulip 额有些写法是为了解决 IE5 不能释放循环引用而弄的吧,大部分都是没用的花拳绣腿...

    我觉得理解 coffeescript 的 class / 继承 做法 和 jquery 的 extend 就够了...

  • 求 JS 代码对应的 Ruby 代码... at 2013年06月23日

    #12 楼 @xds2000 如果没有利用返回值,every / some 就是纯当作条件中断循环用... 如果利用了返回值,就相当于 ruby 里的 all? 和 any?, 就是 js 函数名不能带问号没 ruby 看起来好理解...

  • 求 JS 代码对应的 Ruby 代码... at 2013年06月23日

    这段应该是书里用来证明 for 循环里起闭包很容易出错的: 我们写代码时经常会在循环里建造一系列的闭包 function, 以为每个都对应了不同的 i, 结果全部都是同一个 i 还是超出范围的那个...

    所以 js 里其实推荐用 array.forEach 的,或者再包个 function 让 result 的每个元素都有自己的一个 i (文绉绉一点说,就是 "不用共享状态来传递消息,而用传递消息来共享状态") :

    for (var i = 0; i < 10; i++) {
        result[i] = (function(i) {
            return (function() {
                return i;
            })
        })(i);
    } // 爆炸了没? 还是乖乖用 forEach 吧
    

    btw.

    js 的 array.forEach 不能 break 和 continue, 大大限制了其用途,所以依然是个蛋疼的语言...

    其实为了 forEach 支持 break 和 continue, 很多语言都做了超多的工作。

    例如 C++ 和 java 教程里都会唱 iterator 很好使:用 iterator, 就能把抽象的元素 traverse 放到普通的 for 里面去,break 和 continue 都能自由使用了还容易做优化 -- 唯一问题是一碰到并发/并行访问一个容器,iterator 就从救世主变成了万恶之源...

    而在纯函数式编程语言里,一般是只有 map/fold/filter 而没有 for 的。一般需要 break 的地方,程序员可以自行脑内转换成 find 调用,而本来要 continue 的地方,程序员都自行包个条件判断或者模式匹配... ES5 的话就是 array.every() 了 (这个函数相当于 ruby 里的 Array#all?, 却是 js 里唯一具备按返回值中断循环之神奇功效的 functional primitive ...), 但我基本没见过有人用它来替代 break ...

  • 求 JS 代码对应的 Ruby 代码... at 2013年06月23日

    #8 楼 @blacktulip 好像是不能直接学,但可以直接用... 还是先看完 js 书吧

  • 求 JS 代码对应的 Ruby 代码... at 2013年06月23日

    写 js 总要想 each 的第一个参数究竟是 index 还是元素... 直接 coffee

  • 求 JS 代码对应的 Ruby 代码... at 2013年06月23日

    1 是 lambda call 早了 2 是 js 里的 i 是多个 functions 之间共享的变量,而你的代码里 i 是 block local 的 3 是 for 循环最后 i 会变成 10, 而用 each i 最多变成 9

    def create_functions
      result = []
      i = 0
      while i < 10
        result[i] = lambda { i }
        i += 1
      end
      result
    end
    
    create_functions[0].call
    
  • 上一页
  • 1
  • 2
  • …
  • 68
  • 69
  • 70
  • 71
  • 72
  • …
  • 111
  • 112
  • 下一页
关于 / RubyConf / Ruby 镜像 / RubyGems 镜像 / 活跃会员 / 组织 / API / 贡献者
由众多爱好者共同维护的 Ruby 中文社区,本站使用 Homeland 构建,并采用 Docker 部署。
服务器由 赞助 CDN 由 赞助
iOS 客户端 / Android 客户端 简体中文 / English