- 博客(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 651
转载 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 742
转载 haskell monad
Monad 是一个从 Applicative functors 很自然的一个演进结果。对于他们我们主要考量的点是:如果你有一个具有 context 的值 m a,你能如何把他丢进一个只接受普通值 a 的函数中,并回传一个具有 context 的值?也就是说,你如何套用一个型态为 a -> m b 的函数至 m a?基本上,我们要求的函数是: (>>=) :: (Monad m) => m
2014-11-18 09:36:59 675
转载 haskell Monoids
1 2 class Monoid m where mempty :: m mappend :: m -> m -> m mconcat :: [m] -> m mconcat = foldr mappend mempty 3
2014-11-17 19:37:36 501
转载 haskell Applicative Functor
在 Haskell 中是用在 Control.Applicative中的 Applicative 这个 typeclass 来定义的.
2014-11-17 17:54:57 592
转载 haskell Functor
Functor 这个 typeclass,基本上就代表可以被 map over 的事物。听到这个词你可能会联想到 List,因为 map over list 在 Haskell 中是很常见的操作。你没想错,List 的确是属于 Functor 这个 typeclass。
2014-11-17 09:08:19 705
转载 haskell 递归和高阶函数
递归实际上是定义函数以调用自身的方式。 Haskell 没有 while 或 for 循环的原因,递归是我们的替代方案。 边界条件: 不递归的部分, 在递归定义中声明的一两个非递归的值 maximum' :: (Ord a) => [a] -> a maximum' [] = error "maximum of empty list" maximum' [x] = x
2014-11-15 22:21:09 1074
转载 haskell 类型
数据和函数都有类型 addThree :: Int -> Int -> Int -> Int addThree x y z = x + y + z ghci> :t True True :: Bool ghci> :t "HELLO!" "HELLO!" :: [Char]
2014-11-15 22:01:05 478
原创 快速更新 被import 的 python格式的数据问题, 部分 数据更新没被认出来
遇到一个问题: 用python 统计一个数据, 我用脚本生成
2014-11-07 10:56:50 668
原创 geraman 学习
1 安装 (环境 debian 7) $ sudo aptitude install gearman $ ps axu |grep gearmand gearman 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 519
原创 学习单元测试, 如何在开发过程中把单元测试也做了
17 希望能写质量更好的代码, 从功能角度看, 需要测试代码使它满足需求 18 重新看 http://diveintopython.org 的 13/14 章节, 学习在开发中用上单元测试。~ 19 原来开发没有单元测试,基本是手动测试, 集成测试加上联调。 20 但在代码改动后,需要重新测试。 手动的非常麻烦.
2014-05-13 17:44:24 1297
原创 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 700
原创 c++ 对象模型 (备忘)
1 指针的类型是告诉编译器如何解释对应地址中的内存内容及其大小 多态需要指针或引用 子类赋值给基类会发生对象切割 (sliced) 对象的大小: 数据的大小, 对齐需要的填补, virtual 带来的额外开销
2014-01-01 21:30:54 403
原创 阅读 七周七语言
看介绍很吸引我。 记下一词: 享受编程 ruby 没有环境在网上找了一个 http://codepad.org, 支持很多语言。 解释型语言 纯面向对象语言. 一切皆对象, 数字是 Fixnum 强类型语言。运行时检查类型。动态语言 (可以在运行过程中,变换类型) 面向接口编程,而不是面向实现。 动态语言 。 有pop,push 的方法的,就可以当做“栈”
2013-12-29 20:23:08 502
原创 重构 读后感和实践
重构需要测试支持, 我用google test 试了一下, 感觉很不错。 每次改完,测试后,我对代码的质量更有信心, 不想以前, 需要手工做些测试。 测试自己认为会出错的。 每次改动小一点。 步子太大扯到蛋。 在需要添加功能无从下手时, 先重构代码试试。
2013-12-29 17:39:33 689
原创 学用gprof
1 编译使用 -pg 2 运行程序会生产 gmon.out 3 gprof -q BFS_huarongdao gmon.out >out 4 less out 查看
2013-12-14 16:28:41 475
原创 简单使用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 2080
原创 实现华容道
看到文章 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 2032
原创 学习 github git 使用
在github 上先申请一个帐号。 在 repositories 标签下, “new” 一个 repo 叫 “test code”。 然后我就要在上面写代码了。 在本地用git,命令如下 touch README.md git init git add README.md git commit -m "add readme" 悲剧了 *** Please tell m
2013-12-05 14:23:25 614
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人