Hi,
Damian Conway 在 Perl Best Practices 一书中推荐了 Smart::Comments 模块,利用具有特殊意义的 Perl 注释来用于 Perl 代码的调试。我一直都是该模块的忠实用户,直到最近在 Hunter 抽取的时候,明显感到 Damian 的 Smart::Comments 模块还不够好使,呵呵,于是自己从零 hack 了一个 Smart::Comments::JSON,主要致力于解决 Smart::Comments 的如下问题:
1. 变量中 Unicode 中文输出的问题 (perl's utf8 flag is required here for sure)
2. 通过有意义的注释前缀来对灵巧注释进行分组的功能
3. 一个灵巧注释中并行多个 Perl 表达式的能力
比如下面几个例子:
use Smart::Comments::JSON '##title';
##title $a @foo
##title Got: $b
##title Getting something done...
##body $blah
这里 ##title 就会被启用,而 ##body 则还是注释,呵呵。##title 和 ##body 都是用户自己随便起的前缀,也不一定开前都是一串的 #,呵呵。目前,##ensure, ##check 等 Smart::Comments 的"内建注释"还没及时间。感觉现在对我的需要来说,已经比较爽了,呵呵。
目前 Smart::Comments::JSON 底层使用 JSON::XS,所以对于 bless 过的对象 dump 时不够透明。未来打算让它底层的 dumper 可以让用户自己配置。这样这个模块的名字或许叫做 Smart::Comments::Extend 更好一些。。。呵呵。
这个东东的 JSON.pm 文件先放到这封 mail 的附件中,后准备打包成 CPAN 模块。。。大家对接口和功能方面还有没有什么好的建议?
Cheers,
-agentzh
--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛
-~----------~----~----~----~------~----~------~--~---
没有评论:
发表评论