03 2011 档案
摘要:sayMe :: (Integral a) => a -> String sayMe 1 = "One" sayMe 2 = "Two" sayMe 3 = "Three" sayMe 4 = "Four" sayMe x = "Others" sayMe :: (Integral a) => a -> String sayMe x | x < 3 = "less than 3" | x =...
阅读全文
摘要:1. Helper大爆炸.NET Framework为我们提供了丰富的类库,但是这并不是万能地,在大部分的时间,我们都需要为我们的项目特殊定制我们的通用类库。常常,我们都可以构造一个类,类里封装一些方法。但是对于很多时候,我们并没有办法提取出这样一个类,举一个小例子,我们在很多时候,需要把url给保存到数据库里,作为一个唯一标识,但是我们知道url所占空间很大,如果用url来建立索引的话是非常耗费...
阅读全文
摘要:这篇文档所给出的编码约定适用于在主要的Python发布版本中组成标准库的Python 代码,请查阅相关的关于在Python的C实现中C代码风格指南的描述。 这篇文档改编自Guido最初的《Python风格指南》一文,并从《Barry's style guide》中添加了部分内容。在有冲突的地方,Guide的风格规则应该是符合本PEP的意图(译注:指当有冲突时,应以Guido风格为准)。这篇PEP仍然尚未完成(实际上,它可能永远都不会完成)。 在这篇风格指导中的一致性是重要的。在一个项目内的一致性更重要。在一个模块或函数内的一致性最重要。但最重要的是:知道何时会不一致——有时只是没有实施
阅读全文
摘要:1. 在Haskell中,字符串的的确确成了字符数组的语法糖。 2. 合并List 在Haskell中,合并List是用++运算符来实现: 在这里,我们也可以看到字符串和字符数组的关系。 但是++操作符,会遍历左侧的List,这样List越长,访问起来越慢,这个时候使用:会是更好的选择: 但是,:运算符只能连接一个元素和一个List: 那么从上面,为什么不能成为[[1,2,3],4,5,6],而却...
阅读全文
摘要:1. 概论在过去的近十年的时间里,面向对象编程大行其道。以至于在大学的教育里,老师也只会教给我们两种编程模型,面向过程和面向对象。孰不知,在面向对象产生之前,在面向对象思想产生之前,函数式编程已经有了数十年的历史。那么,接下来,就让我们回顾这个古老又现代的编程模型,让我们看看究竟是什么魔力将这个概念,将这个古老的概念,在21世纪的今天再次拉入了我们的视野。2. 什么是函数式编程在维基百科中,已经对...
阅读全文
摘要:用了一阵子mongodb,作一些小结,作为将来的参考。按照以往的习惯,先作一个总览,然后再挑出一些自己比较关注的几个点,作为珠玑,加以串联阐述。 mongodb由C++写就,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理。关于它的一个最简洁描述为:scalable, high-performance, open source, schema-free, do...
阅读全文
摘要:If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Find the sum of all the multiples of 3 or 5 below 1000. def getSum(ma...
阅读全文
摘要:好久不发文,第一篇竟然是为了认证42qu。好吧,我还是继续在cnblogs上发发技术文章的好。http://42qu.com/-10009995
阅读全文