- 博客(85)
- 收藏
- 关注
原创 仓颉单元测试框架:提升代码质量与开发效率的利器
本文将详细介绍仓颉单元测试框架的核心特性,包括参数化测试、Mock能力和性能测试功能,帮助开发者更好地理解和应用这一强大的测试工具。仓颉单元测试框架通过其强大的参数化测试、Mock能力和性能测试功能,为开发者提供了一站式的测试解决方案。简单的事情应该简单,复杂的事情也应该变得可能。参数化测试是仓颉框架的核心特性之一,它允许开发者通过一组参数运行相同的测试逻辑,从而减少重复代码并提高测试覆盖率。仓颉正在努力追赶其他语言中的性能测试框架,提供丰富的功能支持,包括多线程测试、分布式测试、实时监控等。
2025-03-25 19:54:42
861
原创 直播预约 | Cangjie Magic智能体开发框架架构师 & ICT大赛特等奖教师空降仓颉WORKSHOP直播间!!
仓颉编程语言社区致力于为仓颉编程语言开发者打造活跃、开放、高质量的社区环境,社区鼓励开发者知识分享、思想碰撞、技术互助和交流讨论,社区会定期开展Workshop、三方库招募和技术沙龙等开发者活动,鼓励开发者在更多场景使用仓颉编程语言展开应用。欢迎更多开发者加入仓颉编程语言社区!
2025-03-21 16:25:06
110
原创 正式开源, 仓颉智能体开发框架
仓颉社区今日正式推出革新性Agent开发框架Cangjie Magic。作为首个基于仓颉编程语言原生构建的LLM Agent开发平台,该框架通过三大核心技术突破重构智能体开发范式: 独创Agent DSL架构 - 基于仓颉语言特性设计的领域专用语言,实现智能体建模的声明式编程;原生支持MCP(Model Context Protocol)通信协议;智能调度引擎 - 集成模块化服务调用机制与动态任务规划算法。
2025-03-17 17:26:22
209
原创 仓颉语言开发者的100张面孔——第五期
终于,我找到了申请内测的方法,填写申请、签署保密协议,苦等半月后,成功加入了内测社区与微信群,拿到了仓颉的 SDK 与文档。在解析 MyBatis 源码的深夜,工厂模式与接口绑定的精妙设计让我惊叹,但仓颉缺失的反射机制如同锁死的保险柜,所有基于注解的 SQL 映射方案都成了纸上谈兵。然而,随着开发的深入,那份最初的喜悦逐渐被惆怅取代——实现的功能远未达到预期,甚至一度让我有了放弃的念头。如今社区的第三方库百花齐放,MySQL 驱动层出不穷,而我的驱动也像退潮后搁浅的旧船,锈迹斑斑地静静凝望着远去的海平面。
2025-03-11 19:26:14
751
原创 直播预告 |【仓颉社区】第30期WORKSHOP
仓颉编程语言社区致力于为仓颉编程语言开发者打造活跃、开放、高质量的社区环境,社区鼓励开发者知识分享、思想碰撞、技术互助和交流讨论,社区会定期开展Workshop、三方库招募和技术沙龙等开发者活动,鼓励开发者在更多场景使用仓颉编程语言展开应用。欢迎更多开发者加入仓颉编程语言社区!
2025-02-20 15:19:05
243
原创 第二批49个仓颉语言三方库正式开源,仓颉生态持续繁荣,欢迎广大开发者试用
— 高性能的视频压缩三方库,支持高、中、低三种质量压缩。目前三方库涵盖网络、数据库驱动、数据封装传递、数据解析、数据库框架、对象存储、分布式、任务调度、安全类、工具类、日志类、算法类、音视频、字符编码、图像处理、开发者类、动画类、基础设施、地理信息、UI类、科学计算、编程框架、数据监控、熔断降级、消息队列等分类,总计114个,欢迎广大仓颉开发者试用,欢迎提交PR和issue,支持注册发现、远程过程调用、http协议、json协议、零侵入业务代码,实现自动装配、手动装配、自定义网络库装配3种模式。
2025-02-10 20:17:46
1619
原创 Java转仓颉工具加速鸿蒙原生应用开发 | 90%代码可端到端转换
基于仓颉编程语言的多范式能力,以及部分语法与Java的兼容性设计,Java语言可实现高比例的Cangjie化转换,具体实现原理如下:整体J2CJ工具基于抽象语法树转换(AST transformation)的翻译技术实现,以保证代码转换的稳定性与准确性,并且J2CJ提供了灵活定制API映射的功能,提高了J2CJ在非通用场景代码转换的易用性。存量的Android应用转变为鸿蒙原生应用这一过程中,如何减少Java转换成Cangjie的巨大工作量,“复用” Java 的存量代码资产,仍是许多开发者的难题。
2025-01-27 16:15:56
1087
原创 直播预告 |【仓颉社区】第29期WORKSHOP,直播领取红包封面
仓颉编程语言社区致力于为仓颉编程语言开发者打造活跃、开放、高质量的社区环境,社区鼓励开发者知识分享、思想碰撞、技术互助和交流讨论,社区会定期开展Workshop、三方库招募和技术沙龙等开发者活动,鼓励开发者在更多场景使用仓颉编程语言展开应用。欢迎更多开发者加入仓颉编程语言社区!
2025-01-22 17:25:54
229
原创 云上贵州多彩宝荣获仓颉社区先锋应用奖 | 助力数字政务新突破
云上贵州多彩宝”融合了云上贵州移动服务平台和多彩宝“互联网+”益民服务平台的服务功能,致力于运用互联网、大数据促进保障和改善政务民生,集成全省政务、民生服务事项,包括个人办事、法人办事、生活缴费、到家服务及其他特色个性化服务等,为全省用户提供全天候、一站式服务,推动实现“一网通办”“服务到家”,实现全省“数字商务”“数字民生”“数字政务”一站解决。此次基于仓颉编程语言打造的云上贵州多彩宝应用的成功落地,体现了贵州多彩宝在技术创新和应用实践方面达到了新的高度,同时为其他企业和开发者提供了宝贵的经验和借鉴。
2025-01-16 17:31:01
503
原创 工行仓颉版短信业务系统荣获仓颉社区先锋应用奖,引领金融信创新征程
在仓颉版工行短信系统应用研发过程中,工行仓颉语言转型攻坚团队深入挖掘仓颉语言研发新模式,充分发挥仓颉语言的优秀特性,提升系统可用性。同时,基于仓颉语言包管理工具,完成了仓颉版工程的制品制作、发布、部署全链路工具研发及投产应用,有效提升了仓颉语言在短信业务中的DevOps能力,进一步优化了短信业务的开发和运维流程。在仓颉语言生态建设方面,工行积极参与仓颉语言生态共建,输出了仓颉版雪花算法构件、优化了仓颉版日志构件等,为整个仓颉语言生态在短信业务领域的繁荣发展贡献了重要力量。中国工商银行仓颉语言转型攻坚团队。
2025-01-15 17:43:26
802
原创 仓颉编程语言官网正式上线 !首个公测版本开放下载 !
丰富的教程资源和技术文档将帮助刚刚接触仓颉语言的开发者快速入门,而经验丰富的开发者也能从中获取深入的技术洞察。给开发者提供了快速体验仓颉语言的功能,开发者可以通过在线体验提供的预置代码,简单了解仓颉语言的程序结构,面向对象的开发范式、函数开发范式、多线程编程以及网络编程,快速了解仓颉编程的概貌。主要从仓颉语言的特征、仓颉语言的应用场景、仓颉语言的成功案例、如何参与仓颉语言社区、仓颉语言的最新动态以及合作伙伴为角度,让开发者迅速了解仓颉编程语言的发展概貌,并快速融入社区。目前,仓颉社区就已经收到了。
2024-10-30 10:31:11
1204
原创 北京理工大学开设仓颉实践课程,培养特色化软件人才
参与编写“十四五”规划教材2本,技术专著4本。以“30+30”两个特班为基础,深度协同校企资源,实现产业驱动的知识体系与产教融合的培养体系循环驱动,将校企协同科研最新成果融入专业课堂、引入专业教材和专业实践,构建课题方向、课程教学、实践实训合一的教学实践体系,培养关键基础软件领域高端拔尖人才。徐礼文老师还编写了《仓颉语言核心编程:入门、进阶与实战》一书,书中全面介绍了仓颉语言的语法和开发特性,通过大量应用案例帮助开发者快速掌握仓颉语言,所有章节都提供了源代码供读者下载学习,已于2024年6月出版发行。
2024-09-06 17:36:25
506
原创 仓颉编程语言亮相全国大学生计算机系统能力大赛
在仓颉编程语言展台,由专家给学生做了进一步介绍和答疑,并与竞赛学生做一对一的互动,让学生对仓颉语言有了更深入的了解,激发学习兴趣。此次仓颉编程语言亮相全国大学生计算机能力大赛,得到广大高校学生的关注,说明国内关于计算机系统相关研究及人才培养初具成效,越来越多的优秀高校学生愿意从事底层软件相关的研究和开发工作。,首次在大赛的现场通过展区向国内系统软件的专家、老师和同学们展出了仓颉和毕昇的技术优势和应用场景,吸引参赛人员在展区驻足观看并给予较高评价。
2024-08-28 18:08:38
306
原创 教育部-华为产学合作协同育人项目 | 仓颉编程语言专项
教育部产学合作协同育人项目是教育部高教司搭建的教改项目平台,企业通过发布此项目,可吸引高校教师参与企业的生态建设,将企业技术融入高校课程、培训等。为响应《教育部高等教育司关于调整产学合作协同育人项目运行模式及征集2024年产学合作协同育人项目的通知》号召,华为公司2024年第二批70个项目已发布,其中。结合相关学科做实践性课程,包括但不限于软件工程、人工智能、编译原理、计算机网络、科学计算与仿真等,课程中的示例程序及实践作业等,均采用仓颉编程语言。刘经理 (电话 199-7214-1357)
2024-08-22 21:20:00
395
原创 官方招募 | 仓颉语言三方库社区建设全速启航,全球开发者、技术大神只等您!
社区用于汇集基于仓颉编程语言开发的开源三方库的主干仓,帮助开发者方便、快捷、高质量构建仓颉程序,欢迎您与社区共同成长。参与Cangjie-TPC建设,您将有机会成为仓颉核心三方库贡献者,您开发的三方库也将在百万级开发者中规模推广使用,新的机遇等您来挑战!按照指引即可申请建立属于您的社区三方库;为您认为官方库尚未收录/非常想要的三方库投票 - 选择您感兴趣的三方库,让更多小伙伴看到大家的共同呼声!为您认为高频/高效/实用的三方库投票 - 每一票都是对开发者辛勤工作的认可,更是开发者持续发热的动力所在。
2024-08-20 20:10:12
502
原创 仓颉语言运行时轻量化实践
CJNative的回栈是基于帧指针(Frame Pointer, FP)实现的,即在运行中保持栈基址寄存器始终存储当前执行帧的栈基址,并在每次调用的起点将上一帧的栈基址写入本帧的起始位置,形成每个帧都记录着上一帧的链式结构。程序启动后,随着仓颉轻量化线程的创建,承载工作任务的执行线程依次进入各个处理器的本地队列中等待被调度和执行。仓颉运行时采用精简的对象布局,图2示例了64位平台上的对象布局,起始处存放对象的类型信息,最多占用一个指针宽度的内存,且在64位平台上,可以压缩到4字节。
2024-08-12 17:36:25
1165
原创 你们要的“轮子”来了!67 个仓颉语言三方库正式公开!
第一批三方库涵盖网络、数据库驱动、数据封装传递、数据解析、数据库框架、对象存储、分布式、任务调度、安全类、工具类、日志类、算法类、音视频、字符编码、图像处理、开发者类、动画类、基础设施等分类,总计60+个,欢迎广大仓颉开发者试用,欢迎提交PR和issue,—— 用于将汉字转为拼音,支持词、句转换成拼音,简体/繁体中文字符转换成拼音,多音字符转换成拼音,简体、繁体中文字符互转,支持添加自定义字典,支持 Unicode 格式的字符 ü、支持声调符号、支持首字母格式。——快速、零依赖的全文搜索库。
2024-08-01 18:03:30
1290
原创 仓颉并发机制的设计与实现
细粒度并发算法是相对于粗粒度算法而言的,粗粒度并发往往指使用并发度较低的方法实现对并发对象的访问,例如:使用一个锁对象控制所有线程对某一并发对象的操作,这种方式简单,但性能很差,任意时刻只允许一个线程操作并发并发,即:一个线程持有锁并操作并发对象时,其它线程会因为无法持有锁而被阻塞。例如,在示例代码 1 中,各线程最终将结果汇入并发哈希表 resultMap 中,注意到在插入结果时线程不需要通过额外的互斥锁保证正确性,因为并发哈希表内部已确保并发访问的正确性。而在它的视角中,仓颉线程被视为可执行任务。
2024-07-26 17:35:22
1019
原创 直播预告 |【仓颉社区】第23期Workshop
仓颉编程语言社区致力于为仓颉编程语言开发者打造活跃、开放、高质量的社区环境,社区鼓励开发者知识分享、思想碰撞、技术互助和交流讨论,社区会定期开展Workshop、三方库招募和技术沙龙等开发者活动,鼓励开发者在更多场景使用仓颉编程语言展开应用。欢迎更多开发者加入仓颉编程语言社区!
2024-07-24 15:35:04
211
原创 ACM中国图灵大会专题 | 图灵奖得主Manuel Blum教授与仓颉团队交流 | 华为论坛:面向全场景应用编程语言精彩回顾
7月7日下午13点30,华为论坛《面向全场景应用编程语言-仓颉》顺利举行,华为编程语言首席专家、仓颉编程语言首席架构师、南京大学教授冯新宇发表开场致辞,冯老师表示,自2019年立项研发以来,经过5年的研发沉淀,终于在华为HDC大会和广大开发者正式亮相,发布后得到了广大开发者的关注和讨论。随后华为中央软件院项目群总监 董鑫,华为编程语言实验室架构师 徐潇,华为编程语言实验室架构师 范长春,华为语言虚拟机实验室架构师 杨勇勇,华为软件IDE实验室智慧化专家 郭圆平 分享主题报告。在仓颉编程语言展台,
2024-07-19 18:22:16
1108
原创 仓颉 High-Level IR 设计与实现
博士毕业于中山大学,2018年加入华为编程语言实验室,先后参与AI领域算子编程语言和仓颉编程语言项目。目前主要负责仓颉语言的编译前端实现,主要涉及的技术方向包括:多层级IR、程序分析、编译优化、元编程等。
2024-07-18 20:31:07
870
原创 如何获取仓颉编程语言通用版本SDK?一篇文章让带您了解清楚
仓颉编程语言SDK及开发工具存储在GitCode Cangjie社区上,Cangjie社区会根据您的手机号通过审核,请您填写问卷时手机号与GitCode注册手机号保持一致,否则社区无法通过审核。CangjieVScodePlugin 项目:仓颉VScode插件,为用户提供了语言服务、工程管理、编译构建、调试服务、格式化、静态检查、覆盖率统计的功能。UserForm:仓颉社区用户论坛,如果您对仓颉编程语言或社区有什么建议或想法,可以在发起issue,我们会及时处理。仓颉编程语言官方邮箱回复邮件。
2024-07-17 16:34:01
514
原创 基于智能状态和源代码插桩的 C 程序内存安全性动态分析
陈哲老师分享了 C 程序内存安全性动态分析的相关工作,包含两个创新点,一个是智能状态,一个是源代码插桩,并介绍了一款依此实现的动态分析工具 Movec。
2023-07-28 16:38:25
473
原创 基于符号抽象的程序分析
假设我们用逻辑约束φφφ来编码一个程序的具体状态,并且把抽象域AAA看作一个比较受限的逻辑片段(比如 “区间逻辑”)。符号抽象的目标就是找到约束φφφ在抽象域AAA上的、最精确的上近似2。我们也可以从逻辑的角度来理解3。给定一个约束φφφ和一个逻辑片段LL’L(对应于抽象域), 找到约束φφφ在LL’L中的最强逻辑后承(strongest logical consequence)。下面是一个具体的例子:考虑约束φ≡x≥0∧x2≤10φ≡x。
2023-07-14 12:11:19
789
原创 类型检查:时常被忽略的编译器组件
本文作者为大家带来类型检查和推导的简单分享,从日常的编码场景说明类型检查和类型推导的作用,带领大家了解如何实现一个简单的类型检查与推导器。
2023-06-09 17:17:06
992
原创 基于轨迹的调试技术:从传统软件到 AI 模型开发
本文基于林云老师的分享进行整理,为大家介绍了在传统软件和 AI 模型上的(半)自动化调试工作。视频已发布在 B 站,欢迎大家学习!
2023-05-04 19:48:01
1119
原创 JAX-FLUIDS:可压缩两相流的完全可微高阶计算流体动力学求解器
本文介绍了JAX-FLUIDS —— 一种通过ML-CFD构建可微ML模型的框架,相比传统CFD数值微分求解,可以得到更优的计算结果。通过融合求解过程和ML过程,可以更有效地学习到符合PDE动力学特征的模型,ML-CFD模型开发更加地便捷。
2023-04-11 20:07:51
1459
原创 机器学习在编译器中的应用
近些年来,越来越多的学者和研究人员将目光对准了机器学习技术在编译器领域的应用。在本文里,我们将阐述机器学习和编译器优化之间的关系,并介绍其中的一些典型应用。
2023-03-24 14:57:57
1041
原创 沙龙预告 | 自托管依赖类型语言的设计与实现
本次技术沙龙联合贝叶斯茶思屋@Edinburgh,邀请了圣安德鲁斯大学计算机科学专业的准教授 Edwin Brady 为大家介绍 Idris,一种具有依赖类型的函数式编程语言。
2023-03-21 19:59:39
834
原创 语言运行时的混合内存支持
本文基于吴明瑜老师的分享进行整理,为大家介绍了如何为语言运行时提供混合内存这样一个新硬件架构的支持。视频已发布在 B 站,欢迎大家学习!
2023-03-17 15:04:48
1212
原创 基于上下文分析的 Python 实时 API 推荐
本次活动邀请到了南京大学计算机系软件质量研究所博士生何欣程为我们分享一种基于上下文分析的 Python 实时 API 推荐方法。
2023-03-03 15:22:42
1297
原创 CPython解释器性能分析与优化
CPython 是由 C 语言编写的 Python 纯解释器,采样分析(sampling profiling)可以更为精确地对其性能进行研究。本报告从不同视角探讨其中的开销构成,并讨论可行的优化方案。
2023-02-25 16:46:03
2091
原创 程序分析与神经网络后门
本次分享,孙军老师介绍了将程序分析与神经网络相结合从而提高神经网络质量的研究工作,并以两个后门攻击问题为例,详细介绍了团队的具体解决方法。文中介绍的研究方法可以在神经网络验证平台 Socrates 上获取。
2023-02-16 19:12:26
1412
原创 学习驱动的复杂软件符号执行
本文基于卜磊老师在 SIG-程序分析技术沙龙的分享进行整理,介绍了学习驱动的复杂软件符号执行,视频也已经发布在 B 站,欢迎学习。
2023-02-02 20:10:06
1435
1
原创 基于语义的编译器测试
原文来自微信公众号:编程语言Lab-基于语义的编译器测试搜索关注编程语言Lab 公众号:HW-PLLab获取编程语言更多技术内容如果读者想了解更多有关类型系统相关的技术内容,欢迎加入编程语言社区 SIG-程序分析。加入方式:文末有小助手微信,添加并备注加入 SIG-程序分析。视频回顾:SIG-程序分析技术沙龙回顾|Semantic-based Compiler Testinghttps://www.bilibili.com/video/BV1zY411b7uG?# 研究背景及意义 #今
2022-02-23 15:55:01
1638
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人