开发四年只会写业务代码,分布式高并发都不会还做程序员? >>>  

在昨日举办的 RubyKaigi 2019 大会上,知名 Ruby 开发者 Paul Tarjan 发表了名为"State of Sorbet: A Type Checker for Ruby"的主题演讲,Paul 曾就职于 Facebook,参与过 HHVM 和 Hack 的开发工作。

Kaigi 是日语【会議】的罗马字母写法,因此我们可以将 RubyKaigi 看作是在日本举行的 RubyConf。

据 Dmitry Petrashko 的推特表示,Paul 在 RubyKaigi 2019 大会上的演讲透露了以下几点消息:

  • 目前正与 Ruby 核心团队合作开发并为 Ruby 添加“静态类型”特性
  • “静态类型”将会是 Ruby 3 stdlib 源码的一部分
  • sorbet.org 网站已上线
  • sorbet.run 提供了类似 IDE 一样的体验

Sorbet 是一个 Ruby 静态类型检查工具,不但快速而且功能强大:

  • 多线程,可以在 CPU 的内核之间线性扩展。它会在几秒钟内完成类型检查,以在编码时提供反馈。
  • 与编译器整合使用能提供像 IDE 一样的功能,如自动补全和跳转到定义。
  • Sorbet 适用于常规的 Ruby,因此可以继续使用现有的工具链。

推荐阅读
Ruby 之父:Ruby3 有望 3 倍提速,不添加类型推断

Ruby 3 有望引入静态类型相关推荐

  1. sql编辑器_SQL的弱点(3):缺少静态类型检查

    静态类型检查的重要 如果要把SQL按照编程语言的类型来分类的话,SQL应该属于一种描述型的动态语言. 用动态语言编写的程序,当达到一定的复杂度后,相比强类型静态编译语言来说,更容易出问题. 从2个例子 ...

  2. Flow - JS静态类型检查工具

    本章的目标是提供一些Flow工具的介绍与使用建议.Flow本质上也只是个检查工具,它并不会自动修正代码中的错误,也不会强制说你没按照它的警告消息修正,就不会让你运行程序.当然,并没有要求什么时候一定要 ...

  3. 【Android NDK 开发】Android Studio 使用 CMake 导入静态库 ( CMake 简介 | 构建脚本路径配置 | 引入静态库 | 指定静态库路径 | 链接动态库 )

    文章目录 I . CMake 简介 II . Android Studio 中 CMake 引入静态库流程 III . 指定 CMake 最小版本号 IV . 导入函数库 ( 静态库 / 动态库 ) ...

  4. 静态类型检查—Flow入门

    Flow入门 介绍 一个 JAVASCRIPT 静态类型检测器 Flow 使用类型接口查找错误,甚至不需要任何类型声明. 它也能够准确地跟踪变量的类型,就像运行时那样 Flow 专为 JavaScri ...

  5. Scala教程之:静态类型

    文章目录 泛类型 型变 协变 逆变 不变 类型上界 类型下界 内部类 抽象类型 复合类型 自类型 隐式参数 隐式转换 多态方法 类型推断 Scala是静态类型的,它拥有一个强大的类型系统,静态地强制以 ...

  6. O-C相关-08-动态类型与静态类型

    08-动态类型与静态类型 1, 什么是动态类型和静态类型 1) 动态语言 又叫动态编程语言,是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化.比如众所周知的EC ...

  7. Python静态类型解析工具简介和实践

    简介: Python是一门强类型的动态类型语言,开发者可以给对象动态指定类型,但类型不匹配的操作是不被允许的.动态类型帮助开发者写代码轻松愉快,然而,俗话说:动态一时爽,重构火葬场.动态类型也带来了许 ...

  8. 编程语言 - 强弱/动静态类型 - 整理

    1.应用场景 了解编程语言的分类及显著的区别, 帮助理解编程语言的本质,和帮助快速学习一门新的语言. 2.学习/操作 1. 文档阅读 12 | 栈空间和堆空间:数据是如何存储的?-极客时间 2. 整理 ...

  9. Python 静态类型解析工具简介和实践

    一 背景 Python是一门强类型的动态类型语言,开发者可以给对象动态指定类型(动态),但类型不匹配的操作是不被允许的(强类型,如str和int两个变量无法相加). 动态类型帮助开发者写代码轻松愉快, ...

最新文章

  1. Docker linux安装
  2. Mysql-高性能索引
  3. Kafka设计解析(四):Kafka Consumer解析
  4. 82. 删除排序链表中的重复元素 II(链表操作)
  5. 【 Grey Hack 】加强版nmap
  6. 一个微信公众号接入另一个微信公众号的内容
  7. EditorGridPanel 中使用checkbox列,并包含afterEdit事件
  8. matlab的unique函数
  9. mapxtreme java_用mapXtreme Java开发web gis应用 (下)
  10. html计算100以内偶数和,学习脚本1:计算100以内奇数和和偶数和 (笔记)
  11. UiPath Computer Vision本地版使用
  12. 【水文】2345——卸载!拜拜了您嘞
  13. npm -i 与npm install -s与-d的区别
  14. centos怎么读(centos系统怎么读)
  15. 最新10款好看的英文字体免费下载
  16. 346雷达有多少tr组件_346A型有源相控阵雷
  17. 共探万物智联新模式,第二届中国通信业物联网大会成功召开
  18. Background Matting视频抠图
  19. Python+OpenCV3.3图像处理视频教程 贾志刚 代码笔记3
  20. MogaFX外汇波动加剧时新西兰元排名下滑:官方

热门文章

  1. 自动化测试基础篇--Selenium框架设计(POM)
  2. Sublime使用的插件和快捷键
  3. .net项目技术选型总结
  4. oracle 学习小结1
  5. 数字资产交易所IM即时通讯社交系统APP开发
  6. mongodb可视化工具连接报错
  7. 脚本中export不起作用的原因分析
  8. 父窗口jquery触发iframe按钮事件(转载)
  9. 潜移默化学会WPF--线程巧用(一)
  10. 一、你要拥有自己的服务器