大家好!

我是韩老师。还记得 6 年前的夏天,我在巨硬写着世界上最好的语言,有时也需要带着游标卡尺写着另一门语言。然而,我对这两门语言都不熟悉,如果能在 VS Code 中方便快捷地运行各种语言,那岂不是很方便?于是,我就开发了 Code Runner 插件。

https://github.com/formulahendry/vscode-code-runner

下载量

2016 年 7 月 15 日,Code Runner 正式发布!

2019 年 11 月 24 日,Code Runner 下载量突破 1000 万!

2021 年 1 月 31 日,Code Runner 下载量突破 2000 万!

2021 年 11 月 7 日,Code Runner 下载量突破 3000 万!

2022 年 7 月 17 日,Code Runner 下载量突破 4000 万!

多语言支持

经过数年时间的打磨,Code Runner 的功能越来越丰富,也支持了超过 50 种语言:

C, C++, Java, JavaScript, PHP, Python, Perl, Perl 6, Ruby, Go, Lua, Groovy, PowerShell, BAT/CMD, BASH/SH, F# Script, F# (.NET Core), C# Script, C# (.NET Core), VBScript, TypeScript, CoffeeScript, Scala, Swift, Julia, Crystal, OCaml Script, R, AppleScript, Elixir, Visual Basic .NET, Clojure, Haxe, Objective-C, Rust, Racket, Scheme, AutoHotkey, AutoIt, Kotlin, Dart, Free Pascal, Haskell, Nim, D, Lisp, Kit, V, SCSS, Sass, CUDA, Less, Fortran, Ring, Standard ML, Zig。

新方向

不仅仅是功能上的改进和支持的编程语言的数量上的增加,我还一直尝试探索新的方向。

去年 12 月,我发布了全新的 Code Runner for Web 插件!

https://github.com/formulahendry/vscode-code-runner-for-web

与 Code Runner 需要用户自行安装相应的编译器/解释器不同,安装好 Code Runner for Web 插件后,我们可以在 vscode.dev、github.dev 和桌面版 VS Code 中直接运行 Python !它有两大亮点:

  • 快速便捷:不需要额外安装 Python 解释器,真正的一键运行!
  • 免费:无需后端运行环境,全部在浏览器环境中完成!

英雄所见略同

2021 年 12 月,我发布了 Code Runner for Web。

2022 年 4 月,Anaconda 发布了 PyScript

正可谓 Great minds think alike!

站在巨人的肩膀上

Code Runner for Web 的工作原理是怎么样的呢?

Great Products Sits on the Shoulder of Giants!有下面三位重要的巨人:

  • WebAssembly/WASM (https://webassembly.org/)
  • Emscripten (https://emscripten.org/): 把基于 LLVM 的项目编译到浏览器、Node.js 或者 WebAssembly 运行时。
  • Pyodide (https://pyodide.org/en/stable/): 基于 WebAssembly 的 Python 发行版。

简单来说,就是通过 Emscripten,Pyodide 把 CPython 解释器预先编译成 WebAssembly,使得 Python 文件可以在浏览器中运行!

未来

WebAssembly is the future! —— Jun Han

让我们一起期待!

最新文章

  1. IntelliJ IDEA 内存优化最佳实践
  2. jquery复习笔记
  3. 转!!left join on and 与 left join on where的区别
  4. settings.php rwx
  5. Web.config配置文件详解
  6. Accumulators
  7. 贪心 HDOJ 4726 Kia's Calculation
  8. 免安装版Tomcat6.0启动方法
  9. JS高级程序设计学习笔记之Date类型
  10. poj 3680 Intervals(费用流)
  11. android NDK编译(导入).a文件和编译多个so文件(转)
  12. javascript中replace使用总结
  13. FJOI2019 划水记
  14. 自动化测试-3.selenium8种常用元素定位
  15. 788. Rotated Digits
  16. Python全栈学习_day010作业
  17. 【连载6】二手电商APP的导购功能与关系链机制分析
  18. 混合型log,info按大小分,error按日期
  19. webmagic 日志使用及maven项目中排除日志依赖
  20. Maven学习(三)maven原理概念详述

热门文章

  1. RabbitMQ 3.9( 续 )
  2. 好客租房7-React脚手架的使用
  3. 深入解读SQL的聚集函数
  4. vue大型电商项目尚品汇(前台篇)day04
  5. 论文解读(SUBLIME)《Towards Unsupervised Deep Graph Structure Learning》
  6. 如何用 UDP 实现可靠传输?
  7. SpringCloud微服务实战——搭建企业级开发框架(四十一):扩展JustAuth+SpringSecurity+Vue实现多租户系统微信扫码、钉钉扫码等第三方登录
  8. Java-SpringBoot-使用多态给项目解耦
  9. html关键字大全
  10. 18.Tomcat部署及优化