无价值人生记录.0:浪费 1000% 时间去做一个用来节省 1% 时间的“轮子玩具”(上:因缘)
-0.1 系列目录
0. 重要备注
本文皆为个人的闲言碎语,不具备任何价值,大家不必放在心上,如果浪费了大家时间,大可骂我几句即可,就别打了我。
这篇随笔目的只是记录一下个人正在做的事情,当前时间节点上我为什么做这个事情,些许会掺杂一些技术想法,最核心其实只是通过随笔文字去与自我对话,清理掉繁杂的贪嗔痴。
1. 因缘
相信有许多同学应该有过觉得有些技术或者其他东西好有趣,想知道它们时怎么做到的,原理到底是什么的经历。
本人在两年前对 AOP 中的做静态编织 ( Static weaving ) 充满了兴趣,所以做了一些研究(实际就是google搜索+copy,何谈资格研究呀)。
如下是当时的部分结果内容:
AOP静态编织 分为两条道路:
使用预处理器添加源代码 c++等中存在类似宏的处理
使用后处理器在编译后的二进制代码上添加指令, dotnet 里面可以叫做 IL 重写。
C# 里面有三种方式可以做静态编织:
可以使用Roslyn 在编译时修改AST添加拦截的代码 (不过暂时我没有在msbuild task的文档中找到怎么添加Roslyn 编译时修改,倒是可以自己利用Roslyn自己做编译,感觉这工作量有点大,有同学如果知道怎么添加Roslyn 编译时修改请一定要告知我,thanks very much)
使用mono.cecli或者dnlib 在编译后进行IL重写
实现CLR Profiling API 在JIT编译时修改method body。实现真正无任何限制的运行时静态AOP (不过貌似得用C++才能做CLR Profiling API)
完整的内容备份在 https://github.com/fs7744/Norns/blob/backup/old-design/README.md
当时因为担心roslyn 之外的技术去实现成本过大(时间工作量以及兼容性),而且本来只是研究的目的,并没有打算做个成品出来用,所以研究实验了一下就直接搁置了。
随后恍然之间发现自己积累的问题开始爆发
发福严重
开始秃头,掉发严重
生活单调模式化,逐渐丧失了意义和动力,欲望和无法实现的愤慨交织掺杂
没有女盆友,家人和朋友催婚行为日渐严重,永远在我面前的话题离不开 单身/爱情/婚姻/传宗接代
意识到自身性格缺陷,不太合群,时而只爱静静,时而嘻嘻闹闹,反反复复,时常不顾及他人情绪
所以接下来的时间直接远离了github,停用qq,消减微信各种交流,过以前的生活,心开始离群索居,尝试各种平易近人的(便宜)人生玩法,试图找到人生的答案。
时至今日,
一切过往不过“空”一字涵盖,
一切皆为自己怎么想,怎么看,认为是什么样便会在自己面前是什么样,
这一切他人怎么想,怎么看,可能和自己相同,可能和自己不同,皆为他人自由,
没有什么人必须一起,没有什么事情必须有绝对意义,没有什么必须怎么样,
一切皆为相对,实质为空,而空因相对而有意义。
当然说着容易,做着难,所以这篇随笔也是我修行所走的路。
心态有了一些变化,
人生就感觉有了很多空闲时间可以让我挥霍(不在乎价值,不在乎成败,就是花费时间做想做的)了,
然后恰巧Roslyn有了一个实验特性: https://github.com/dotnet/roslyn/blob/master/docs/features/source-generators.md
本人又有研究的动力了,
所以我又开始了做 https://github.com/fs7744/Norns
这“玩具”最后有没人用,多少人关注,能带来多少名声,有啥可在乎的,
做完了我心满意足,做人最重要不是开心吗?
版权声明: 本文为 InfoQ 作者【八苦-瞿昙】的原创文章。
原文链接:【http://xie.infoq.cn/article/5d29fbc6edc2bbdae68a5880c】。文章转载请联系作者。
评论