动态语言
文章平均质量分 76
dingx
一个热衷于技术的人
展开
-
第一个Ruby程序
讲到脚本语言,当下流行的无非是Ruby、Python、Perl和JSR正在讨论的Groovy,最近正在上人工智能要实现一些算法,没有规定实现语言,反正都是写,何不乘机看看脚本的魅力究竟在何处,于是我选择了在企业级应用上已经比较成熟的Ruby作为学习的第一个脚本语言,以便今后转向Ruby on Rails。 第一个程序不是Hello world!而是汉诺塔问题,看了看R原创 2005-09-07 19:16:00 · 1160 阅读 · 1 评论 -
从Rails里“借”来的Ruby代码统计程序
以前每做完一个项目,或者完成某个里程碑的时候都喜欢用代码统计工具统计下自己的代码情况,看看多少LOC,多少注释。现在开始用Ruby写程序了,忽然发现竟然找不到支持Ruby的代码统计工具,偏偏自己这次写的东西又与Rails无关,不能用里面的stats……脑子一转,反正有空,就研究下Rails的代码统计代码,整理出来,让它能够单独运行。由于原来的代码不统计注释,所以我加了对注释和注释率的统计,单行注...2007-02-15 11:31:00 · 104 阅读 · 0 评论 -
白马非马?
前两天看到朋友在博客里写了一篇《白马非马》,长长的一大段,那些文字我们就不说了,我最感兴趣的是他用python和ruby“证明”的白马不是马。虽说我从小接受的教育让我始终相信白马是马,不过还是挺有意思的。让我们来看下他是怎么写的——战国的时候有一位公孙龙先生,提出了这么一个观点,说“白马非马”。我们的教科书上说那叫诡辩,白马明明也是马么。那么咱先写个程序来验证一下:Python程序略Ruby程序...2007-05-21 12:04:00 · 295 阅读 · 0 评论 -
第一个Ruby程序
讲到脚本语言,当下流行的无非是Ruby、Python、Perl和JSR正在讨论的Groovy,最近正在上人工智能要实现一些算法,没有规定实现语言,反正都是写,何不乘机看看脚本的魅力究竟在何处,于是我选择了在企业级应用上已经比较成熟的Ruby作为学习的第一个脚本语言,以便今后转向Ruby on Rails。 第一个程序不是Hello world!而是汉诺塔问题,看了...2005-09-07 19:16:00 · 185 阅读 · 0 评论 -
Caesar算法的3种实现
1、Ruby实现:caesar.rbdef encode(plaintext, offset) ciphertext = plaintext.dup for i in 0..(plaintext.length-1) if plaintext[i]>=?a && plaintext[i]<=?z ciphertext[i] = ?a + ((...2005-09-11 22:52:00 · 404 阅读 · 0 评论 -
皇后问题的Ruby实现
人工智能课讲4皇后问题,数据结构做8皇后,索性棋盘大小可变,用100行的Ruby代码写了皇后问题的实现。Queens.rb class Queen @@Chessboard = nil def initialize(size) @@Chessboard = Array.new(size) puts "The chessboard is #{s...2005-09-19 19:35:00 · 76 阅读 · 0 评论 -
八数码游戏的Ruby实现
八数码游戏就是通过移动空格把数字从给定的状态移动到目标状态,例如:初始状态为 目标状态为2 8 3 1 2 31 6 4 8 47 5 7 6 5 程序中用0表示空格,提供了两套状态。EightNums.rbclass EightNum...2005-09-29 22:31:00 · 148 阅读 · 0 评论 -
野人与修道士问题的Ruby实现
问题描述:河左岸有三个修道士,三个野人和一条船,假定船最多只能运两个人,且任何岸边的野人数目不得超过修道士,否则修道士就会被野人吃掉。如何才能把修道士和野人都运到右岸?Savage.rbSAVAGE = 0BOANERGES = 1DEEP = 5#记录状态class Status @@StatusList = Array.new @@Pos = -1 attr_writer...2005-10-08 20:51:00 · 283 阅读 · 0 评论 -
第一个RoR程序
昨晚空着没有什么事情,就去下了gigix的RoR的录音,顺便把很久以前写的Ruby代码翻出来看看。 以前只是听说RoR写代码方便,没有想到有这么方便,前后才几行就能够运行了,完整的mvc/orm都有了。这次参照onlamp上的文档——那个最广泛使用的RoR入门文档作了cookbook,可惜现在手上有别的项目,否则真想一头扎进去,搞个自己的demo出来看看。参考资料:...2006-04-11 14:08:00 · 171 阅读 · 0 评论 -
十进制转换Ruby实现
昨天带上机课时,听到了十进制转换为八进制这个题目,据说是数据结构的考试题,回来后想想转成什么进制的算法不都一样吗,所以用Ruby写了个脚本,才20行,真是短小。def transform(num, target) num *= target output = "" while ((num = num / target) > 0) output = (num % target)....2006-04-25 10:26:00 · 319 阅读 · 0 评论 -
Step by Step-Turning Ruby Files into Java Classes
以前做了个Ruby的项目,最近有了点新的需求,其中有一条是要保护源代码,我选择用JRuby把rb文件编译为class,查了些资料,看了下jrubyc相关的一些代码,也许有朋友有类似的需要,和大家分享一下。突发奇想用英文来写,很久不写英文了,果然这个还得常写写。。。附上对应的中文,如果不高兴看英文的同学可以直接看中文的,呵呵。 There are many reasons for us to t...2008-06-02 16:55:04 · 83 阅读 · 0 评论 -
ActiveRecord与AR-JDBC的兼容性问题
Ruby的作者是日本人,这个我想大家都知道,所以第一手的语言相关资料是日语的这不稀奇。好在我不是研究语言本身的, 也就不用去折腾什么日语了。最近在看JRuby on Rails的东西,在实验一段小的数据库操作的代码时偏偏就碰上了个奇怪的问题——在事务中执行save!方法报错:D:/jruby-1.0.2/lib/ruby/gems/1.8/gems/activerecord-2.0.1/lib...2008-01-22 17:36:00 · 96 阅读 · 0 评论 -
当Ruby遇到Java,勇敢地跨越边界吧
1. 引言2004年Ruby on Rails的横空出世让大家为之一惊,很多Java社区对它也投去关注的目光,现在RoR已经渐渐为人接受,被运用于不少实际项目之中,这也让本来不怎么吸引眼球的Ruby从角落里走了出来。不少开发者在试用了Ruby和RoR后产生了浓厚的兴趣,毕竟Ruby的语法是如此的有趣,Rails中的开发是如此的便捷,有时它替你安排好了一切,敲键盘就是了。但Ruby毕竟和主流的Jav...2008-01-24 16:17:39 · 215 阅读 · 0 评论 -
Shanghai on Rails第五次活动上关于JRuby的PPT
周末参加了Shanghai on Rails的第五次线下活动,弄了个关于JRuby的主题演讲。本来打算做“5分钟演讲”的,不过负责人stephen邮件里说这次正式演讲少,时间可以放长些,然后我就多弄了几页,那天状态也比较好,时间就从5分钟变成了半小时左右。。。汗,原来只要状态好,我也挺能侃的。在开始前主持人Daniel做了个小调查,原来与会者中大多数人都做过Java,我的主题正好是“When R...2008-11-02 21:18:29 · 97 阅读 · 0 评论 -
2009 KungFu Rails大会JRuby演讲PPT
上周六去出席了KungFu Rails大会,这次很荣幸受到主办方邀请,做了一个简短的有关JRuby的演讲,当时离大会还剩两周时间,我连讲什么都还不知道。。。后来趁着周末赶紧动想了想主题,定在JRuby on Rails项目在Java应用服务器上的部署,看着还能忽悠一下,呵呵。之前受到蔡学镛启发,Slides要做个“商业化”点,于是整个过程中有一半时间都变成在Google图片上找图,不过整个东西做出...2009-10-26 15:53:56 · 95 阅读 · 0 评论 -
走近JRuby
最近公司里有计划要在工作中引入脚本语言,虽然具体哪种语言还没有最终确定,但看这架势是势在必行了,而且有些系统也的确已经在使用Groovy了,好希望最后能选上JRuby呀。为此,最近打算给同事们做一次JRuby的分享,内容基于去年年底Shanghai on Rails的PPT,增加了Ruby基础知识的介绍。刚做完PPT,感觉自己终日与Java为伍,离Ruby的世界越来越远了……...2009-08-09 22:19:49 · 205 阅读 · 0 评论 -
了解Instagram背后的技术
(本文首发于InfoQ中文站:http://www.infoq.com/cn/news/2012/05/instagram) 刚被Facebook以10亿美金收购的著名手机照片分享应用Instagram最近吸引了无数人的眼球,Android版本登陆Google Play不到一个月下载量就突破1000万,总用户数即将超过5000万。Instagram联合创始人Mike Krieger说他们用了8原创 2012-05-16 22:51:38 · 1308 阅读 · 0 评论 -
2009 KungFu Rails大会JRuby演讲PPT
上周六去出席了KungFuRails大会,这次很荣幸受到主办方邀请,做了一个简短的有关JRuby的演讲,当时离大会还剩两周时间,我连讲什么都还不知道。。。后来趁着周末赶紧动想了想主题,定在JRuby onRails项目在Java应用服务器上的部署,看着还能忽悠一下,呵呵。之前受到蔡学镛启发,Slides要做个“商业化”点,于是整个过程中有一半时间都变成在Google图片上找图,不过原创 2009-10-26 16:10:00 · 703 阅读 · 0 评论 -
走近JRuby
最近公司里有计划要在工作中引入脚本语言,虽然具体哪种语言还没有最终确定,但看这架势是势在必行了,而且有些系统也的确已经在使用Groovy了,好希望最后能选上JRuby呀。为此,最近打算给同事们做一次JRuby的分享,内容基于去年年底Shanghai onRails的PPT,增加了Ruby基础知识的介绍。刚做完PPT,感觉自己终日与Java为伍,离Ruby的世界越来越远了…… P原创 2009-08-09 22:22:00 · 523 阅读 · 0 评论 -
皇后问题的Ruby实现
人工智能课讲4皇后问题,数据结构做8皇后,索性棋盘大小可变,用100行的Ruby代码写了皇后问题的实现。Queens.rbclass Queen @@Chessboard = nil def initialize(size) @@Chessboard = Array.new(size) puts "The chessboard is #{size} * #{@@Chessb原创 2005-09-19 19:35:00 · 1183 阅读 · 3 评论 -
Caesar算法的3种实现
1、Ruby实现:caesar.rbdef encode(plaintext, offset) ciphertext = plaintext.dup for i in 0..(plaintext.length-1) if plaintext[i]>=?a && plaintext[i] ciphertext[i] = ?a + ((plaintext[i] - ?a + offset) %原创 2005-09-11 22:52:00 · 1701 阅读 · 0 评论 -
八数码游戏的Ruby实现
八数码游戏就是通过移动空格把数字从给定的状态移动到目标状态,例如:初始状态为 目标状态为2 8 3 1 2 31 6 4 8 47 5 7 6 5 程序中用0表示空格,提供了两套状态。EightNums.rbclass EightNum原创 2005-09-29 22:31:00 · 1403 阅读 · 2 评论 -
野人与修道士问题的Ruby实现
问题描述:河左岸有三个修道士,三个野人和一条船,假定船最多只能运两个人,且任何岸边的野人数目不得超过修道士,否则修道士就会被野人吃掉。如何才能把修道士和野人都运到右岸?Savage.rbSAVAGE = 0BOANERGES = 1DEEP = 5#记录状态class Status @@StatusList = Array.new @@Pos = -1 attr_writer原创 2005-10-08 20:51:00 · 1494 阅读 · 0 评论 -
第一个RoR程序
昨晚空着没有什么事情,就去下了gigix的RoR的录音,顺便把很久以前写的Ruby代码翻出来看看。 以前只是听说RoR写代码方便,没有想到有这么方便,前后才几行就能够运行了,完整的mvc/orm都有了。这次参照onlamp上的文档——那个最广泛使用的RoR入门文档作了cookbook,可惜现在手上有别的项目,否则真想一头扎进去,搞个自己的demo出来看看。参考资料原创 2006-04-11 14:08:00 · 1355 阅读 · 0 评论 -
十进制转换Ruby实现
昨天带上机课时,听到了十进制转换为八进制这个题目,据说是数据结构的考试题,回来后想想转成什么进制的算法不都一样吗,所以用Ruby写了个脚本,才20行,真是短小。def transform(num, target) num *= target output = "" while ((num = num / target) > 0) output = (num % target)原创 2006-04-25 10:26:00 · 1344 阅读 · 1 评论 -
从Rails里“借”来的Ruby代码统计程序
以前每做完一个项目,或者完成某个里程碑的时候都喜欢用代码统计工具统计下自己的代码情况,看看多少LOC,多少注释。现在开始用Ruby写程序了,忽然发现竟然找不到支持Ruby的代码统计工具,偏偏自己这次写的东西又与Rails无关,不能用里面的stats……脑子一转,反正有空,就研究下Rails的代码统计代码,整理出来,让它能够单独运行。由于原来的代码不统计注释,所以我加了对注释和注释率的统计,单行原创 2007-02-15 11:31:00 · 1167 阅读 · 0 评论 -
Using the Rake Build Language翻译
年初的时候翻译了Martin Fowler的Using the Rake Build Language,并提交做成了OpenDoc,前阵子排版后的PDF发布在了Redsaga上,在这里做笔记录~~~~考虑到Csdn上贴大段的文章不太方便,所以直接给出下载地址:http://www.redsaga.com/opendoc/OpenDoc-Rake.pdf翻译 2007-08-08 08:47:00 · 1146 阅读 · 0 评论 -
跨浏览器?谈何容易
不就做个Web应用吗,有什么难的,可是碰上了多种浏览器,问题就来了,一般都是首先满足IE的,因为大多数客户使用的是IE,不过现在用FF的人也越来越多了,所以考虑让FF能有和IE一样的显示效果也是很重要的。这次我从开发之初就定下目标一定要让自己的程序在两种浏览器里都能正常运行。就是这么个目标给我带来了不少麻烦,好在有框架帮忙,不过问题还是有不少滴。。。举几个例子:js里用const定义个常量,IE不原创 2007-09-14 15:38:00 · 1119 阅读 · 1 评论 -
ActiveRecord与AR-JDBC的兼容性问题
Ruby的作者是日本人,这个我想大家都知道,所以第一手的语言相关资料是日语的这不稀奇。好在我不是研究语言本身的, 也就不用去折腾什么日语了。最近在看JRuby on Rails的东西,在实验一段小的数据库操作的代码时偏偏就碰上了个奇怪的问题——在事务中执行save!方法报错:D:/jruby-1.0.2/lib/ruby/gems/1.8/gems/activerecord-2.0.1/l原创 2008-01-22 17:36:00 · 878 阅读 · 0 评论 -
当Ruby遇到Java,勇敢地跨越边界吧
1. 引言2004年Ruby on Rails的横空出世让大家为之一惊,很多Java社区对它也投去关注的目光,现在RoR已经渐渐为人接受,被运用于不少实际项目之中,这也让本来不怎么吸引眼球的Ruby从角落里走了出来。不少开发者在试用了Ruby和RoR后产生了浓厚的兴趣,毕竟Ruby的语法是如此的有趣,Rails中的开发是如此的便捷,有时它替你安排好了一切,敲键盘就是了。但Ruby毕竟和主流的Jav原创 2008-01-24 17:07:00 · 1134 阅读 · 1 评论 -
第一次用OWL-S API
看了好久的论文,终于要开始动手实践了,虽然目标还不是很明确,但照着Demo做东西偶还是会滴。OWL-S API是专门用来处理OWL-S的一个Java开发包,自然是应该放在Java里用的,可是好久没有写JRuby了,所以第一次的小程序就用JRuby来写吧,哈哈~require javadir = Dir.new("../lib")dir.each { |filename| $CLA原创 2008-04-30 10:44:00 · 2080 阅读 · 2 评论 -
Step by Step - Turning Ruby Files into Java Classes(中英文对照版)
There are many reasons for us to turn Ruby files (.rb) into Java classes (.class). For example, you want a high-performance system, or you want to protect your ruby code, etc. Last year, JRuby finishe原创 2008-06-02 21:48:00 · 958 阅读 · 0 评论 -
Shanghai on Rails第五次活动上关于JRuby的PPT
周末参加了Shanghai on Rails的第五次线下活动,弄了个关于JRuby的主题演讲。本来打算做“5分钟演讲”的,不过负责人stephen邮件里说这次正式演讲少,时间可以放长些,然后我就多弄了几页,那天状态也比较好,时间就从5分钟变成了半小时左右。。。汗,原来只要状态好,我也挺能侃的。在开始前主持人Daniel做了个小调查,原来与会者中大多数人都做过Java,我的主题正好是“When Ru原创 2008-11-03 20:36:00 · 618 阅读 · 0 评论 -
比较排序算法的简单复习(说明+代码)
前面看到有人发了数组排序的代码,想起自己前阵子为了应付xxxxxx公司笔试复习时写下的一些关于比较排序算法 的笔记和代码,拿出来和大家分享一下,攒点RP:(代码基本是按照《算法导论》的伪代码写的,lgn是以2为底的,西塔估计打不出,我这里都用O了)1、Insertion Sort遍历数组,将小的值插在前面。是原地、稳定的排序算法。复杂度O(n^2)a = [5,2,4,6,1,3]原创 2008-11-10 22:46:00 · 731 阅读 · 0 评论 -
了解Instagram背后的技术
(本文首发于InfoQ中文站:http://www.infoq.com/cn/news/2012/05/instagram) 刚被Facebook以10亿美金收购的著名手机照片分享应用Instagram最近吸引了无数人的眼球,Android版本登陆Google Play不到一个月下载量就突破1000万,总用户数即将超过5000万。Instagram联合创始人Mike Kri...2012-05-16 22:47:00 · 549 阅读 · 0 评论