沙发
谨慎乐观,自创语言可不是个小活,你们很勇
沙发
谨慎乐观,自创语言可不是个小活,你们很勇
语言名字不好记,读着也拗口,还不如直接叫u语言什么的
由你浪?
不管是玲珑还是这个,感觉拼写一点也不顺,也不简洁
期待它能真正解决目前的行业问题
2022-09-19
希望有一个gitee的地址
里面有一个中文的开发环境搭建平台
里面有一个中文的入门文档
里面有一个群可以一起讨论遇到的问题
2022-09-20 追加其他开发者的相关建议
建议给 unilang 单独建立一个板块(和上面建群的功能类似, 但更专业)
希望能在 [ 开发者 ] 页面有比较简单的介绍和示例并可以跳转到官方开发文档
相应的IDE开发规划(进度, 目标, 负责人, 新成员加入规则, 项目审核规则, 全部公开)
通用扩展规范(防止语言特性碎片化)
留名
有时候吧,我觉得deepin不是很有钱,是个小公司,但是他的种种行为让我觉得比大公司还有钱,也比大公司有梦想,责任和担当。
建议给 unilang 单独建立一个板块
希望能在“开发者”页面有比较祥细的介绍和示例。
由你浪?
说出了我想说的
有你浪,由你浪
这是很勇敢的、艰难的挑战,不仅涉及到技术,也涉及到生态。
除了语言,你们还有相应的IDE开发规划吗?如果能像微软那样,把编程语言和IDE齐头并进地发展,效果可能更好。
1.要建立自己UI体系
2.建立自己的样式结构
3.要支持Python ! 当然Rust 和 Go也可以有
4.win要方便打包,linux也是要方便打包
5.抛弃QT,前期可以调用QT,但是最后要全部抛弃QT
6.移动端后期可以增加
可以下载安装学习使用了吗???有教程吗??😄
感受下hello,world代码:
"Hello world demo.";
puts "hello, world";
看了一下这种语言的设计思想,基本语言+特性扩展库,后者为实现各种领域扩展提供可能。但我有一个疑问:
假设在web应用开发领域,需要这种语言的扩展库提供支撑,这时候,就有了问题,不同的开发团体,对web开发领域提出了不同的实现方案,从而导致语言特性碎片化,这个问题如何解决?有没有为不同领域的语言特性的实现,提供属于该领域的通用扩展规范(specification),就像Java一样,有一套规范,这样不同的产品(dragonwell JDK、oracle JDK、华为毕昇JDK )可以互换使用。
2022年9月,deepin正式公开了自研全新通用目的编程语言——Unilang!
回顾过去,倍觉光阴荏苒:
2020年4月 ,这一年,我们决定开发自己的语言 ,进一步往上做GUI框架;
2020年6月 ,想法成型,经调研分析后,我们创建Unilang仓库 ,提交了第一行代码;
2021年3月 ,脚踏实地, 基本实现2020年决定设计的主要特色内容 ,着手研究目标代码生成方案;
2022年9月 ,蓄势待发, 全新的通用目的编程语言Unilang问世 ,与所有开发者们见面!
--
从业界流行的一系列方案分析,到需求、大方向的确定与设计;
从快速产出和完善整体设计的冲突,到始终尝试不同解决方案的质量优先;
从一个初步萌芽的小小想法,到一群人为之努力,所以最终得以实现;
生而为创新,今天,Unilang与你相见!
自创,为何而创?
实际上,在我们决定自主设计Unilang之前,桌面应用开发方案便已经有了相当多较为成熟的选择。
Qt 代表的 C/C++ 本机应用开发方案,早已是许多 Linux 桌面系统应用的主流方案。它拥有成熟的语言标准和实现,丰富的开发资源,是最具有可移植性的工业语言的代表。不过,出了名的难以学习;冗长的项目开发周期;作为静态类型语言不具备非常“健壮”的类型系统,对开发体验改进有限等,大多数全局问题也是短时间内难以改善的。
Electron为代表的非本机和动态语言运行时为基础的开发方案,则是另一类较为主流的方案。使用这一流行的动态语言,能克服一些静态语言不够灵活的问题,但难以保障质量。由于大多数开发者难以有效优化运行时机制,也容易造成内存泄漏等问题,反而会极大影响 GUI 应用的质量和开发体验。
当然,Flutter代表的移动端解决方案正在向桌面移植,但它也具有部分其它动态语言运行时的方案类似的问题,实在称不上是一个完美的替代方案。
再从更高层的结构角度来看,不同类型的 GUI方案 繁多,却也各自存在不同的架构意义上的技术局限性。总而言之,没有任何一种现有方案能兼顾各种不同的问题,而成为没有疑义、众望所归的桌面开发首选方案。
因此,在综合分析大量方案后,我们迫切希望有这么一种语言:
它可以尽快解决以上方案中存在的痛点;
它能极大程度帮助到因语言二次开发遇到困难,而被迫放弃的开发者们;
它能够以更深刻的方式、真正地实现“通用性”;
——这就是我们选择创造Unilang的原因。
全新,何处是新?
我们将Unilang设计成为一门 现代的通用目的编程语言 ,使它以全新之姿出现,去适应更有效和灵活开发桌面环境应用,去统筹解决现有不足的新的方案中的语言部分。
那么和其他语言相比,它的新,究竟新在哪里?
值得一提的是,Unilang 在语言特性的层次上被设计为能支持不同的应用开发场景,但原则上对这些场景保持中立。
这意味着,它可以同时支持服务端和客户端应用的开发,不需要用户切换思维范式或者大幅更改对语言的使用习惯。
未来,邀你前来!
Unilang从今天起步,未来,也将迎接无数崭新的阶段 ——目前,我们计划将支持基于 Qt 的绑定的库,以便衔接过渡现有的一些桌面应用项目。日后也计划着在解释器的基础语言特性稳定实现后,提供带有优化的 JIT 代码生成的执行引擎。新的实现可直接替代现有解释器的部分核心,而无需改动已使用解释器的Unilang代码,获得“免费”的显著性能提升。
生而为创新! Unilang既是初生,便需要在时间的打磨下不断完善与发展。既是创新,便需要我们积极吸纳各种试验性扩展,以便利用程序语言社区的先进成果,方能快速成长为 万众期待的根技术之一 。
因此,不论是个人还是组织,不论是报告问题或者代码贡献,我们都真诚期待你能参与到Unilang建设当中,一起帮助Unilang变得更好!
集聚众人之力,不仅需要我们,也需要你!
项目地址: https://github.com/linuxdeepin/unilang