BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Racket 6.7最新版本:提供对Android App的支持及改进的REPL等等

| 作者 Sergio De Simone 关注 12 他的粉丝 ,译者 刘嘉洋 关注 0 他的粉丝 发布于 2016年11月7日. 估计阅读时间: 4 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

PLT Design发布了新版本的Racket,类Scheme通用多模式编程语言Racket 6.7可以支持在Android上构建图形类应用程序,它同时改进了REPL、包管理器,还支持扩展的Typed Racked。

Racket 6.7对于Android GUI编程的支持是通过racked-android项目所实现的。InfoQ对话UMass Lowell副教授、racked-android创建者Jay McCarthy,探讨了相关内容。

是否能请你介绍一下,这个项目是怎么应运而生的,它会被使用于哪种类型的应用程序开发?

Black Swan Learning, LLC (BSL)是目前XPrize Global Learning竞赛中的一支队伍。他们使用Racket搭建了一个“学习操作系统”,并且XPrize竞赛要求参赛者必须将学习工具部署在Android平板电脑上,因此他们对于Racket的发展做出了很大的贡献。我在RacketCon上遇到了BSL的领袖Byron Davies,他请求我帮助他搭建这个项目,嗯,其余的不用多说了。

从技术上来说,由于CVM的可移植性,以及Matthew Flatt甚至在好些年前就已经做出了ARM JIT,所以自Android第一个版本以来,Racket就开始在Android上运作了。对我们来说,我们必须解决连接Java至Racket的一些问题,才能实际构建Android应用程序。

Racket-android旨在实现创建基于OpenGL的应用程序。这是否为你们路线图上其他的Android APIs提供了支持?

BSL对于全屏基于画布布局的应用程序非常感兴趣,因此这就是我们要完成的第一个目标。由于OpenGL可以提供良好的性能,而且我已经有一个2D的OpenGL引擎可以实现需求,所以使用OpenGL是一个非常可行的选择。从此出发可以为Android的Java API搭建一个基于Racket的FFI,这看起来没有任何的技术性挑战(从技术工作上来说)。我们目前尚没有计划实现它。

使用Racket给Android开发带来了什么优势和缺点?

你必须忽略大部分的系统APIs(尽管不是所有的系统APIs),这显然是一个劣势。在搭建的过程中,你需要时刻留心,避免使用不存在于Android上的库。目前来看,我并不认为使用Racket给Android开发带来了什么特别的好处,但如果你偏向于使用Racket编程(搭建DSLs,大量使用函数式编程等等),那你将会受益于此。

Racket 6.7中其他值得关注的内容:

  • Racket的REPL现在使用racket/interactive来支持行编辑、命令及结果历史和元命令。元命令可以扩展REPL已知的命令集。元命令“开箱即用”,开发者可以使用backtrace回溯追踪到最后一个异常,使用trace追踪到命名的函数,使用profile更统计性地精确地分析代码等等。
  • Racket的包管理器(raco pkg)允许当从Git仓库安装包的的时候,通过git-checkout-credentials配置选项指定验证凭证。此外,raco pkg支持隧道使用HTTP CONNECT
  • 可以逐步指定类型信息的Typed Racket,作为Racket的扩展,目前已经扩展到包括racket/os和racket/db/sqlite。

Racket 6.7版本现在在Racket网上可供下载

查看英文原文Racket 6.7 Brings Android App Support, Improved REPL, and More

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT