在Lisp语言中,macro是一个神器,可以“动态的生成代码”,然后被执行,这种方式给到Lisp无限的表达能力。除Lisp之外,很少有语言支持Macro这个特性,我记得 GWT之中曾经有一个类似的Generator的概念,可以在编译期间提供一定的代码生成能力(GWT Project),很多GWT ...
优化的日志方式 在这个例子中: 我们通过隐式转换的方式,为org.slf j.Logger扩展了 DEBUG 方法,使用上与 原有的debug 一致,我们期望新的 DEBUG 匹配如下的模式: 可以使用这个选项来看看 scala 编译生成的代码: 可以直接在sbt中set scalacOption : Seq Ymacro debug lite 开启选项 上面的第一段代码,是 scalac 生成的 ...
2019-04-27 17:17 2 617 推荐指数:
在Lisp语言中,macro是一个神器,可以“动态的生成代码”,然后被执行,这种方式给到Lisp无限的表达能力。除Lisp之外,很少有语言支持Macro这个特性,我记得 GWT之中曾经有一个类似的Generator的概念,可以在编译期间提供一定的代码生成能力(GWT Project),很多GWT ...
序 距离上次在博客园发布文章已经过了大约有一年了,由于最近一系列神奇的际遇,让我非常强烈意愿的提起笔来给大家描述我最近一段时间的经历,希望大家根据我的经历做一些参考,我尽量写的逻辑通顺,如果各位兄弟阅读时有不惑可以私信我,此经历仅供大家参考,如有雷同纯属巧合! 博主本人坐标深圳,已婚人士,截止 ...
摘要: 通过分析用户的行为,才想得到为什么会出现这种情况! 前两天在BearyChat收到这样的一个报警消息: 409 ?Conflict ? 平时很少遇到这样的错误,貌似很严重的样子,吓得我赶紧查看到底发生了什么。 仔细查看错误详情发现是因为使用同一个邮箱账号多次注册导致后面 ...
JSFuck,整体由6个字符[, ], (, ), !, +组成,但却是可以正常运行的JS代码,JSFuck程序可以在任何Web浏览器或引擎中运行解释JavaScript! 看一段代码,源代码为:d ...
一、基础介绍 ——In computing, a plug-in (or plugin) is a set of software components that add specific ab ...
Java获取Class实例的四种方式 Scala获取Class实例 classOf[A] 类A的类型 a.getClass 对象a的类型,多态情况获取的是对象的类型,不是父类类型 ...
在开发项目时,我们或许需要一份精致的开发文档,那么使用docsify是不错的选择,docsify是一个文档生成工具,它直接加载 Markdown 文件并动态渲染,同时还可以生成封面页。所以我们只需要写完 Markdown 文档,就可以看到文档页面了。 特性 无需构建无需编译 ...
在如今的大数据时代,数据的价值可想而知。有时候为了做测试,需要模拟真实的环境,但是又不能直接使用真实数据,就需要我们认为制造一些数据出来。 对比Excel,我还是觉得Python制造这样的 "虚拟" ...