- 博客(24)
- 收藏
- 关注
原创 python 修饰器
python 修饰器。 先看下面的结果。 在不调用run的情况下, 输出1。 用test("my_test") 修饰 run 函数, 修饰的实际效果如下1)先执行 test("my_test") 函数, 结果是impl 函数, (所以再不调用run的情况下,会有输出)2)再把 run 函数做为参数给impl 函数, 结果是 inter 函数。在调用run的情况下,
2014-12-04 13:48:14
681
转载 haskell Monad 3 Reader Monad
instance Monad ((->) r) where return x = \_ -> x h >>= f = \w -> f (h w) w
2014-11-19 19:53:34
762
转载 haskell monad
Monad 是一个从 Applicative functors 很自然的一个演进结果。对于他们我们主要考量的点是:如果你有一个具有 context 的值 m a,你能如何把他丢进一个只接受普通值 a 的函数中,并回传一个具有 context 的值?也就是说,你如何套用一个型态为 a -> m b 的函数至 m a?基本上,我们要求的函数是:(>>=) :: (Monad m) => m
2014-11-18 09:36:59
702
转载 haskell Monoids
12class Monoid m where mempty :: m mappend :: m -> m -> m mconcat :: [m] -> m mconcat = foldr mappend mempty3
2014-11-17 19:37:36
510
转载 haskell Applicative Functor
在 Haskell 中是用在 Control.Applicative中的 Applicative 这个 typeclass 来定义的.
2014-11-17 17:54:57
614
转载 haskell Functor
Functor 这个 typeclass,基本上就代表可以被 map over 的事物。听到这个词你可能会联想到 List,因为 map over list 在 Haskell 中是很常见的操作。你没想错,List 的确是属于 Functor 这个 typeclass。
2014-11-17 09:08:19
724
转载 haskell 递归和高阶函数
递归实际上是定义函数以调用自身的方式。 Haskell 没有 while 或 for 循环的原因,递归是我们的替代方案。边界条件: 不递归的部分, 在递归定义中声明的一两个非递归的值maximum' :: (Ord a) => [a] -> a maximum' [] = error "maximum of empty list" maximum' [x] = x
2014-11-15 22:21:09
1107
转载 haskell 类型
数据和函数都有类型addThree :: Int -> Int -> Int -> Int addThree x y z = x + y + zghci> :t True True :: Bool ghci> :t "HELLO!" "HELLO!" :: [Char]
2014-11-15 22:01:05
497
原创 快速更新 被import 的 python格式的数据问题, 部分 数据更新没被认出来
遇到一个问题: 用python 统计一个数据, 我用脚本生成
2014-11-07 10:56:50
681
原创 geraman 学习
1 安装 (环境 debian 7)$ sudo aptitude install gearman$ ps axu |grep gearmandgearman 10382 0.0 0.0 55612 976 ? Ssl 15:24 0:00 /usr/sbin/gearmand --pid-file=/var/run/gearman/gear
2014-09-17 10:24:43
529
原创 学习单元测试, 如何在开发过程中把单元测试也做了
17 希望能写质量更好的代码, 从功能角度看, 需要测试代码使它满足需求 18 重新看 http://diveintopython.org 的 13/14 章节, 学习在开发中用上单元测试。~ 19 原来开发没有单元测试,基本是手动测试, 集成测试加上联调。 20 但在代码改动后,需要重新测试。 手动的非常麻烦.
2014-05-13 17:44:24
1314
原创 printf 格式化 (备忘)
man 3 printf 中间的一段, 介绍 format 参数 int printf(const char *format, ...); Format of the format string The format string is a character string, beginning and ending in its initial shift state, if
2014-01-08 16:24:27
719
原创 c++ 对象模型 (备忘)
1指针的类型是告诉编译器如何解释对应地址中的内存内容及其大小多态需要指针或引用子类赋值给基类会发生对象切割 (sliced)对象的大小: 数据的大小, 对齐需要的填补, virtual 带来的额外开销
2014-01-01 21:30:54
414
原创 阅读 七周七语言
看介绍很吸引我。 记下一词: 享受编程ruby没有环境在网上找了一个 http://codepad.org, 支持很多语言。 解释型语言 纯面向对象语言. 一切皆对象, 数字是 Fixnum 强类型语言。运行时检查类型。动态语言 (可以在运行过程中,变换类型) 面向接口编程,而不是面向实现。 动态语言 。 有pop,push 的方法的,就可以当做“栈”
2013-12-29 20:23:08
520
原创 重构 读后感和实践
重构需要测试支持, 我用google test 试了一下, 感觉很不错。 每次改完,测试后,我对代码的质量更有信心, 不想以前, 需要手工做些测试。 测试自己认为会出错的。每次改动小一点。 步子太大扯到蛋。 在需要添加功能无从下手时, 先重构代码试试。
2013-12-29 17:39:33
709
原创 学用gprof
1 编译使用 -pg 2 运行程序会生产 gmon.out3 gprof -q BFS_huarongdao gmon.out >out4 less out 查看
2013-12-14 16:28:41
484
原创 简单使用set/unordered_set (备忘)
在set/unordered_set 用自定义类型, 编译失败。 记录下。在set 中使用自定义类型 mask, 需要提供 std::less 和等价的方式set 构造函数的原型set (const _Compare &__comp, const allocator_type &__a=allocator_type())如果是自定义变量需要提供 Compare, compa
2013-12-13 20:47:29
2091
原创 实现华容道
看到文章 http://coolshell.cn/articles/10476.html文章对应代码在: https://github.com/chenshuo/recipes/blob/master/puzzle/huarong.cc学习C++, 也自己实现一个华容道。 脑袋一拍就出来下面的代码class chessboard;class chess;class ch
2013-12-12 21:33:46
2057
原创 学习 github git 使用
在github 上先申请一个帐号。 在 repositories 标签下, “new” 一个 repo 叫 “test code”。 然后我就要在上面写代码了。 在本地用git,命令如下touch README.mdgit initgit add README.mdgit commit -m "add readme"悲剧了*** Please tell m
2013-12-05 14:23:25
620
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人