微软开源了一个名叫Checked C的研究项目,该项目为C语言加入了新的语法。项目的主要目标是为了抵消使用C语言编程带来的一些危险,比如造成Heartbleed和Shellshock安全事故的bug。 这在理论上一个大胆的想法。这个想法中最困难的地方是怎样促使C语言开发者修改现有代码,修改遗留C代码通常会是非常困难的。 在受伤前先检查一下自己 Checked C是C语言的修改版,重点针对指引引起的问题。C语言中可以直接访问内存。新版C语言提供了几种新的指针和数组类型,自带安全检查。它们与C语言现有的非安全指针不同,程序员可以使用新的带安全检查的指针。当然,如果有需要也可以切换回非安全类型的指针。 新版本还提供了带检查的程序作用域。这些程序代码段默认启用边界检查。如果程序员试图在这样的代码段中使用非受检指针,编译器会拒绝编译。当然,也可以使用#pragma指令指定编译器对整个程序默认启用边界检查。 目前已经有一些工具可以对C语言进行安全分析和检测,比如Cppcheck。但是它们通常都是独立的静态代码分析工具。Checked C在程序构思和计划时就直接将安全特性加入了C语言。更多内容请关注本次专辑的相关内容…… 最近,在新发布的一篇学术报告中,Facebook 详细介绍了新的人工智能开源软件 Torchnet,用于简化深度学习。 深度学习是当下一种时髦的学习方式,涉及到培训人工神经网络处理大量的数据,如图片,然后让神经网络做出新数据的预测。与其建立一个全新的深度学习框架, Facebook 选择的是在 Torch 上编译一个开源库,Facebook 先前也曾致力于此。 Facebook开源深度学习框架Torchnet,加快A.I研究步伐 “这使得它很容易实现完全隐藏 I/O(输入 / 输出)成本功能,而如果你想创建一个实用的大型深度学习系统,你就很需要这项功能的。” Facebook 人工智能研究所(FAIR)的一名科学家 Laurens van der Maaten 在一次采访中这样说道,“我们并不是要让 Torch 运作的更快或者更慢或者其他怎样,这些都不是框架的重点所在。” van der Maaten 还表示,Torchnet 是用 Lua 脚本语言写成,能够在标准的 x86 芯片或图形处理单元(GPUs)上运行,也可以让程序员重用某些代码。这样一来就能够降低工作量,同时也可以降低出现 bug 的几率。 Facebook并不是唯一一家为 Torch 编译工具的公司,Twitter 也这样做过,可以肯定的是,同 van der Maaten 聊过的一些 Twitter 的员工似乎也对 Torchnet 感兴趣。亚马逊、谷歌和微软也在近几个月发布了全新的深度学习框架,Facebook 之前一直致力于开发原生开源项目,如 React Native 和 Presto,所以现在 Facebook 做出一些改变看上去还是挺有意思的。更多的详细内容,就来本次专辑详细了解吧! 随着去年Oracle对Java传教士进行裁员,以及更早前宣布将暂时停止继续为GlassFish Server发布大型版本更新并对相关支持进行限制,一群Java标准的支持者开始以“Java EE守护者”的身份自居,并通过一个章程宣告他们将努力拯救Java EE。 Java EE守护者是名副其实的Java权威人士,其成员包括“Java之父”James Gosling、前任技术传教士Reza Rahman,以及其他很多知名的Java技术人员。 这个群体的创始人,Java EE/GlassFish前任传教士Reza Rahman称:目前我们在Google Group聚集了将近400名成员,我们的Twitter账号也有近2000名关注者。 虽然受雇于Oracle,这些“步兵”依然在努力推动Java技术继续发展。然而他们提供的统计数据显示出Java EE开发热潮正面临严重的衰退。从他们网站上提供的图表中可以很清楚地看到,问题的解决数量和版本的提交数量均有双双下滑的趋势。按照Oracle的辩解,该公司似乎已经将未来发展方向全面转向云计算。更多的,大家可以关注本次专辑…… |