MSNAn 适合大胆开发者的实验性编程语言

Patricia Arquette
发布: 2024-11-24 19:54:13
原创
117 人浏览过

开始

几年前,在折腾了2种语言草案之后,我开始了我个人项目的巅峰。 MSN2 曾经(现在仍然是)我认为是一种模拟编程语言,主要是由于其非常规、未优化的解释方法,可能会导致语言完整性问题。

但我又问自己,为什么这些年来我会不断回到这个项目?为什么我没有把它和其他草稿一起扔掉,以免开发人员尴尬?我保留它是因为远远超出了我对拥有单一贡献者的编程语言的期望,尽管我离我的愿景还有很长的路要走。

为什么要另一种语言?

在开发早期,并没有真正的意图向公众发布它,因为这只是一个学习练习,因此没有真正的理由引入一种新语言。无论如何,作为一种功能性工具和我的 Python 研究的主要来源,在 Python 之上构建编程语言的好处不仅使我们拥有 Python 本身的完整功能,而且还具有以下新功能:

  • 多道编程
  • 语法添加
  • 自动化(赢得 10 项独家)
  • 多语言(自 2.0.403 起,Python、JavaScript、Java、C)
  • MSN2 -> JavaScript/React 转译
  • API端点创建和交互
  • 简单、轻量级的容器

由于易于实现新功能,它可以作为更加面向社区的语言的基础,通过社区反馈和贡献不断进步。凭借当前和未来的贡献,我们创造机会:

  • 创新编程策略
  • 促进跨语言互操作性
  • 支持灵活且可定制的语法
  • 提供用于自然语言处理 (NLP) 的预构建实用程序
  • 促进自定义库和插件的创建
  • 适应更广泛的开发环境

还有多少...?


能力

很容易说该语言非常强大,并且在某些情况下,我认为它用更少的代码就更强大。随着更新的发布,作为开发人员使用它也变得越来越愉快。不幸的是,使用该语言并不容易说是小菜一碟。我发布了 VSCode 的 msn2 语法突出显示扩展、基本文档以及许多教程和代码示例。尽管在以某种方式编写代码时,如果没有自动完成关键字或标记并理解其含义,就会变得很困难。这些问题在 MSN2 存储库的问题选项卡中得到解决。

完整的、可运行的示例

(这些示例都没有超出框架的额外代码)

  1. 简化简单操作
    MSNAn Experimental Programming Language for the Bold Developer

  2. 启动 API 端点并查询
    MSNAn Experimental Programming Language for the Bold Developer

  3. 创建个性化宏
    MSNAn Experimental Programming Language for the Bold Developer

  4. 运行内联 JavaScript(也可以使用 Java 和 C)

MSNAn Experimental Programming Language for the Bold Developer

  1. 这些示例几乎触及 MSN2 的表面,在 MSN2 存储库中找到许多更大的项目和演示

较大的项目示例

  • 实现 C 语法
  • 自动化 Excel
  • 全栈应用程序 - HTML MSN2 作为后端
  • 自动化 - 在 chess.com 上随机下棋
  • 启动一个简单的 Streamlit 容器
  • 我的 TikTok(15 个项目)- 将 MSN2 注入 leetcode.com
  • 所有大型测试项目

缺点

以上听起来很棒!我完全投入到在我所创建的内容的基础上采取步骤。但尽管我希望如此庞大、过于复杂、需要维护的代码库不会出现问题,但还是有 XD。

正直

MSN2 2.0.403 起,存在多个可修复的完整性问题,可能会在运行时产生不正确的结果。幸运的是,诚信问题是暂时的,但重要的是要迅速解决这些问题。

速度

使用 Python 作为后端,速度成为一个残酷的缺点,这就是速度。速度将永远成为MSN2的一个问题,不幸的是我们只能尝试让基础语言匹配接近Python自身的速度。

那我们能做什么呢?

  • 我们可以提供多语言方法 - 虽然我们管理速度较慢、开销较大的流程,但此流程可以轻松地以更快的语言启动程序。 MSN2 GitHub - 查看多语言实现
  • 我们可以让它变得值得 - 通过 Python 维护更大的后端,MSN2 获得了一个独特的机会,可以在拥有广泛而灵活的功能时从开发人员角度探索功能上的可能性。一组跨语言和环境的内置集成。这使开发人员能够更有效地协调广泛的数据管道、自动化工作流程和大型系统,从而可能使管理和扩展依赖于 Python 无限的生产就绪功能的项目变得更加容易。
  • 我们可以优化 - 在解释过程中有很多去优化点,这将是主要速度增益的初始来源。
  • 我们可以接受它 - 基础MSN2永远用于依赖速度的应用程序,例如数据科学、实时分析、高频交易以及许多其他领域。 MSN2 将主要用于可定制的程序编排,快速、无缝地使用高度通用的功能,允许开发人员创建连接各种编程语言和工具的强大工作流程。这种灵活性使其成为管理复杂的多语言项目和自动化不同任务的理想选择,而无需切换环境或编写大量 Python。

总结

这个项目是一次雄心勃勃的旅程,最初是一次学习练习,很快就发展成为探索语言设计和新的、创造性的概念证明的游乐场。 MSN2 作为一种学习经历,不断挑战我的编程能力。它远非可接受,也远非完美,但这正是它令人兴奋的部分原因 - 它充满了成长和改进的机会。

虽然大多数语言尚未完全准备好投入生产,并且测试尚未达到 100% 的覆盖率,但 MSN2 代表了非传统思维的潜力和在没有完美压力的情况下进行实验的自由。它是否成为项目中的有用工具或仍然是个人的努力取决于我自己和社区,但它的未来取决于持续的开发、反馈和完善。现在,我将它视为一块踏脚石,边缘粗糙,有很多裂缝,但仍然足够坚固,可以站立。

有用链接
GitHub 上的 MSN2
MSN2[2.0.401] 文档
我的网站/作品集

这篇文章的横幅是未格式化的,但可运行的 MSN2 代码包含 JavaScript、Java、C 的内联混合,所有代码都与同一行中旋转的 API 端点交互。

以上是MSNAn 适合大胆开发者的实验性编程语言的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板