开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1963|回复: 28
收起左侧

[大家谈谈] 【LLVM助力易X64】易语言X64并不是魔法

[复制链接]
发表于 2025-12-1 01:39:37 | 显示全部楼层 |阅读模式   上海市上海市

为什么是 LLVM?

熟悉 LLVM 的朋友知道,它是 Apple / Microsoft / Google 等巨头的底层工具链基座。
其 IR、中间优化与跨平台后端的能力,使得:

  • 常量折叠  
  • 循环优化  
  • 自动向量化  
  • 高效代码生成  

这些“现代编译器必备能力”都能直接复用。

如果易语言也能借助这一套流程,那么传统解释/半编译带来的性能短板,理论上都能补齐。

易语言搭上LLVM的原理性解释

其实论坛有很多易x64的尝试,但是基本上都没有完成最终的革命,但是他们的探索都是充满乐趣的,至少在某一个方面也算完成x64的创举,比如将易语言代码转换为C++,然后在C++端实现x64的编译,还比如对易语言的原生窗口进行转换,转换到其他语言用到的UI库,再继续使用其他语言本身就支持x64的特性进行编译,等等...

很多易友其实对易X64以及支持Unicode编码产生很多疑惑,我觉得在现在AI盛行的时代,这些困惑都能得到消除,那我也就不大谈特谈其中涉及的理论了。

我想告诉各位易友,所有的代码转换从来都不是什么魔法

首先一句话概述这种转换的原理: 这种从一种语言转换到另一种语言的过程在语言工程学上被称作是转译,因此凡是基于转译原理开发的工具,一般称为"转译器"

我知道很多写过代码转换,甚至写过其他中文编程语言的朋友会认为这其实就是"翻译"。但是我想说明的一点就是:"转译"与"翻译"是本质完全不同的两件事

先说"翻译",有一些所谓的中文语言利用的就是"宏孩儿"实现的中文翻译,说白了就是利用宏声明来实现的
再说"转译",论坛应该有不少用户使用过炫语言,大家觉得是简单的"翻译"就能够做到的嘛,很显然是不可能办到的,炫语言是有自定义语法的,使用过的都应该知道

所以转译的原理显而易见,就是将一种编程语言(比如这里说到的炫语言)转换为另一种编程语言(比如炫语言的目标语言就是C++)的过程

所以实现真正的易语言X64的方向很明确

只要实现从易语言到另一种支持x64编译的语言的转译器就可以真正做到易语言的X64

显而易见,C++明显支持x64的编译,Unicode肯定不在话下,Rust呢??当然是可以的啦

那么转换到C++之后呢,是不是要将C++代码编译为exe/dll等产物,而这里就涉及到编译器

炫语言选择的其实就是MSVC编译器工具链,使用过的都知道是需要下载VC环境的

而另一种选择就是使用LLVM-Clang来作为编译器工具链对C++代码进行编译

易语言X64的完整流程(仅供感兴趣的朋友参考)

  1. 首先是开发一个转译器: 负责将易语言转换到C++
  2. 接着使用LLVM-Clang将转换后的C++编译为exe(这里就只说exe吧,易用户基本都是这种需求)
    • 编译时肯定会报错的,这方面熟悉编译器工具链的朋友肯定都知道
    • 最典型的就是未定义: krnln.lib(krnln.obj):error LNK2019: unresolved external symbol

所以别看只有两步,第一步就能卡住很多开发者,因为将易语言的代码风格,库引用,模块解析等等特性,不说完美复刻,就是复刻大部分都很不容易了

更何况即使这两步走完,还需要复刻易语言的官方库甚至是第三方作者编写的支持库,这条路并不是想象的那么简单

现在已经有一个转译器实现刚才说的一切功能(易如云)

最重要的是作者目前已经完成易语言官方支持库的大部分,而且非常活跃

摘自易如云官方论坛描述

  1. 全面覆盖易语言常用的13个易兼容库(krnln,console,spec,sock,shell,RegEx,internet,iconv,EThread,eAPI,commobj,cncnv,eCompress)
  2. 还新增 encod,pointer 两个专属库,进一步拓展开发边界

官方论坛描述来一大堆,反正一句话概括就是我上面说的流程,并且选择与炫语言完全不同的后端编译器LLVM-Clang为易语言X64保驾护航

我希望炫语言的使用者也不要来喷我,我从始至终都没有说MSVC不如LLVM-Clang的话,只是两种不同的编译器后端而已,不要过度解读

最后,任何新工具的成长都离不开开发者的支持与反馈

我希望广大的易友可以去尝试易如云,起码奔着原理去了解它也行,对于那些希望开发一款属于自己的转译器的朋友更应该尝试,因为它走的路基本都是你未来需要走的

我其实比较佩服这个作者的执行力的,因为易如云编译器从0到1,我是见证者

我从一开始就觉得这件事一定能成,但是没想到的是进度会这么快,坦白说作者的编译器功底真的不弱,写过转译器,写过AST转换,写过解释器的朋友都应该知道,底层工具链的构建是非常乏味的,这点我深有体会

摘自易如云官方的邀请: 共建易语言新生态

  1. 任何新工具的成长都离不开开发者的支持与反馈。虽然易如云的生态尚在建设中,但凭借LLVM带来的性能优势和全面的功能支持,我们有信心与大家共同打造更强大的易语言开发环境。

  2. 现在就通过以下渠道获取工具并加入我们的交流社群:

    • 工具下载:https://share.weiyun.com/3zF8HVQg(提取密码:eryecl
    • 官方论坛:eruyun.bbscloud.com(问题反馈、资源共享专属平台)
    • 官方QQ群1:563803057
    • 官方QQ群2:964283733
    • 官方QQ群3:979337437(技术大佬在线答疑,同行交流更便捷)
  3. 本产品在封装完易官方库之前会一直免费。

点评

不是收不收费的问题,是骗钱啊,骗钱跟收费不是一个概念,那个作者是每次明目张胆的收钱后不办事了,懂吗?   英国  发表于 2025-12-2 01:02
我只想问问是不是(易之卫,鸿程易)其中一个,或者过两个月易如云也成为他们一员!   美国  发表于 2025-12-1 19:50
易如云 群主的论坛账号怎么被论坛封禁了qaq   广东省惠州市  发表于 2025-12-1 18:29
关于收费,我肯定劝说不了对方纯公益 关于防骗,我的建议是物有所值你就买,反之不要买 目前是免费的,试玩摸摸原理也不错,毕竟从0到1的全流程不多见   上海市上海市  发表于 2025-12-1 14:11
感觉就是那个之前骗钱的熔岩、易鸿程的那个作者,又搞个新概念来继续骗钱来了。   英国  发表于 2025-12-1 13:42
感谢分享,这玩意儿不会是之前骗钱的,易之卫和鸿程易的同一人搞的吧?   四川省绵阳市  发表于 2025-12-1 12:08
下载不了,好像是链接带上***码了,手动复制吧:https://share.weiyun.com/3zF8HVQg(***密码:eryecl)   上海市上海市  发表于 2025-12-1 10:11

评分

参与人数 1好评 +1 收起 理由
steve + 1 YYDS~!

查看全部评分

结帖率:17% (2/12)

签到天数: 2 天

发表于 2026-2-7 14:05:19 | 显示全部楼层   河北省邢台市
lchhjx 发表于 2025-12-1 12:11
定价: 半年 ?99; 一年 ??99; 长期 ??99;
看到这玩意儿,就想起之前易之卫和鸿程易,也是搞一点点就开始这 ...

易之卫   是那个  被开盒的吗
回复 支持 反对

使用道具 举报

结帖率:50% (3/6)

签到天数: 1 天

发表于 2025-12-1 17:26:00 | 显示全部楼层   山东省威海市
steve 发表于 2025-12-1 08:41
定价: 半年 ?99; 一年 ??99; 长期 ??99
首先支持!感谢为易语言做出的努力!个人一点建议啊
易语言都用的 ...

你要只有这么一个项目,而且想靠这个项目盈利,直接放弃就好了
手里没有3-5个可以盈利的或者可以维持生活的项目,想开发一个新的
不是'颠覆性'根本不可能
说个实在的,
你就是免费都不一定有人用
回复 支持 反对

使用道具 举报

签到天数: 2 天

发表于 2025-12-1 12:48:19 | 显示全部楼层   广东省东莞市
这个要支持
回复 支持 反对

使用道具 举报

结帖率:38% (9/24)
发表于 2025-12-1 12:11:11 | 显示全部楼层   四川省绵阳市
定价: 半年 ?99; 一年 ??99; 长期 ??99;
看到这玩意儿,就想起之前易之卫和鸿程易,也是搞一点点就开始这样定价的模式了。希望这次能成功吧
回复 支持 反对

使用道具 举报

结帖率:86% (44/51)

签到天数: 2 天

发表于 2025-12-1 11:28:15 | 显示全部楼层   湖南省长沙市
我也在折腾
回复 支持 反对

使用道具 举报

发表于 2025-12-1 10:56:11 | 显示全部楼层   广东省*
回复 支持 反对

使用道具 举报

签到天数: 2 天

发表于 2025-12-1 10:50:42 | 显示全部楼层   重庆市重庆市
支持一下,非常好
回复 支持 反对

使用道具 举报

发表于 2025-12-1 10:10:26 | 显示全部楼层   湖北省武汉市
支持一下,非常好
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-12-1 10:07:28 | 显示全部楼层   上海市上海市
8657 发表于 2025-12-1 09:41
没有使用手册啊,相关语法一模一样吗

不是一模一样,是你用易语言IDE写的源码直接可以使用elang编译,对使用者来说是无感的
回复 支持 反对

使用道具 举报

结帖率:100% (12/12)
发表于 2025-12-1 10:00:20 | 显示全部楼层   山东省济宁市
支持一下,非常好
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备2025452707号) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表