Virgil 是一种编程语言,专为快速、无依赖的程序而设计。它的设计融合了功能性和面向对象的编程范式,以提高表现力和性能。Vir

Virgil是一种编程语言,专为快速、无依赖的程序而设计。它的设计融合了功能性和面向对象的编程范式,以提高表现力和性能。Virgil的编译器为JVM生成优化的独立本机可执行文件、WebAssembly模块或JAR。为了在测试和调试中快速周转,程序也可以直接在内置解释器上运行。它非常适合编写小而快的程序,这使得它非常适合构建某些类型的程序,如编译器和虚拟机。它目前被用于虚拟机和编程语言的研究,特别是下一代WebAssembly虚拟机Wizard的开发。该存储库包括Virgil各种编译目标的整个编译器、运行时系统、一些库、测试、文档和支持代码。Virgil专注于平衡静态类型语言中的这些主要特性:类-用于基本的面向对象编程功能-用于功能的小规模重用元组-用于多参数函数的有效聚合和统一处理类型参数-用于对类型进行强大而清晰的抽象代数数据类型——便于数据结构的构建和匹配

相关推荐

封面图片

Free Oberon 是一款跨平台的 Oberon 编程语言 IDE 工具,特点是其仿旧式的图形界面。

FreeOberon是一款跨平台的Oberon编程语言IDE工具,特点是其仿旧式的图形界面。此工具使用Ofront+Oberon翻译器进行编译,生成的控制台程序可独立运行,也可在其内置的跨平台虚拟终端中运行。FreeOberon使用的Oberon编程语言版本为最新的Oberon-07。在该版本中,CHAR类型的大小为2字节,而且支持Unicode。众多基础模块如In、Out、Files、Texts等都已进行更新以适应这种变化。此外,该语言还新加了对数组指针的扩展。FreeOberonIDG亦包含一个名为Graph的模块,用于进行图形编程,该模块基于Allegro5库构建。该工具的界面及编译器错误信息已被翻译成多种语言,且用户可通过编辑文本文件来添加新的语言。FreeOberon是开源的,并在符合GNUGeneralPublicLicenseversion3协议下发布。它支持在Windows、GNU/Linux及其他操作系统上编译。Windows版本中包含了预编译完成的Ofront+编译器,以及用于运行该工具所必要的简化版MinGW套件。编译生成的程序为纯粹的Windows应用,不需要额外的DLL文件。FreeOberon是一个更大项目的一部分,该项目的目标是通过编写一系列编程教科书、开发教育材料及开发Oberon编译器等软件,以推广信息学科的发展并将其普及于程序员和学生之中。https://free.oberon.org/en/

封面图片

Cheerp 是一种开放源代码的C/C++ 编译器,它允许将几乎任何 C/C++ 代码编译为 WebAssembly 和 Jav

是一种开放源代码的C/C++编译器,它允许将几乎任何C/C++代码编译为WebAssembly和JavaScript。与Emscripten、Cheerp等Web应用程序的替代C/C++编译器相比,有以下优势:1.生成更优化(更小)的WebAssembly代码,但也可以编译为具有动态内存(垃圾收集输出)、零开销DOM操作和对​​WebAPI的访问以及卓越的C++-JavaScript互操作性的JavaScript输出。2.[[cheerp::genericjs]]允许通过(可选地)用和标记部分代码,将单个代码库编译成WebAssembly和JavaScript的组合[[cheerp::wasm]]。Cheerp的主要组件,即Cheerp编译器,可以在Github上找到:,而其他存储库在,和最近该项目发布了3.0这个大版本。同时把许可证从gpl换成了Apache2.0/LLVM许可,对商业使用更加友好。

封面图片

Cheep C++ 到 Webassembly 编译器现已开源。

CheepC++到Webassembly编译器现已开源。Cheerp是一个用于Web应用程序的C/C++编译器,可让你将几乎所有C/C++代码编译为WebAssembly和JavaScript。其最新的3.0版本已经开源。​​​Cheerp是一个用于Web应用程序的C/C++编译器,可让您将几乎所有C/C++代码编译为WebAssembly和JavaScript。其最新的3.0版本已经开源。Cheerp主要用于将现有的C/C++库和应用程序移植到HTML5,但也可用于从头开始编写高性能Web应用程序和WebAssembly组件。使用Cheerp,C/C++代码被编译成JavaScript/WebAssembly,并通过公开正确的JavaScript接口进行优化,可以轻松集成到Web应用程序中。Cheerp是Webassembly编译工具系列的一部分,与CheerpJ、CheerpXforFlash和WebVM并列。可用于以下场景:1.将遗留Java应用程序和JavaApplets转换为HTML5,只需很少的努力或无需任何努力,以延长它们的生命,直到弃用,或直到开发出替代的本机HTML应用程序。2.将现有的Java客户端迁移到基于浏览器的Web应用程序,通常通过使用CheerpJ将业务逻辑从Java转换为WebAssembly/JavaScript,并用原生HTML重写UI。3.使用(转换后的)Java库作为本机Web应用程序的一部分。在幕后,CheerpJ需要WebAssembly中的完整JavaSE运行时和存在于浏览器中的JavaScript,以及支持从Java访问和操作DOM的JavaScript/DOM互操作性API。相比之下,C++的Cheerp不需要这样的运行时,而是直接使用LLVM字节码格式作为目标文件和库的中间表示。它的特性如下:解析代码,发出最终的警告和错误,然后生成对输入程序进行编码的等效IR(=内部表示)。IR通过一系列转换优化为更紧凑和更高性能的IR。优化后的IR最终由代码生成为JavaScript和WebAssembly函数和变量的组合。或者简单地说:C++代码库->Cheerp(使用LLVM的优化)->JS+Wasm一旦生成了.js和.wasm文件,接下来就是为这两个静态文件提供服务,将它们嵌入到相关的HTML页面中,在库的API之上构建功能,并测试是否一切正常。主文件到被调用的仍然是一个.js文件,但是一个.wasm文件也被加载并从.js文件运行。虽然CheerpJ不是开源产品,但Cheerp现在是。在这一点上,重要的是要注意,从languageX到WebAssembly的工具现在可以证明更有用,因为WebAssembly最近摆脱了浏览器的限制,现在可以用于运行微服务和无服务函数,甚至可以运行Wasm二进制文件在命令行上,这样甚至可以开发跨平台的CLI应用程序。

封面图片

微软推出.NET 8开发者平台和面向云应用的.NET Aspire

微软推出.NET8开发者平台和面向云应用的.NETAspire微软在一篇博客文章中指出:现在支持的AVX-512指令集使您可以对512位数据向量执行并行操作,这意味着您可以在更短的时间内处理更多的数据。基元类型(数值型及以上)现在实现了新的可格式化和可解析接口,使它们能够直接格式化并解析为UTF-8,而无需任何转码开销。微软表示,TechEmpower基准测试表明,在JSONAPI场景中,.NET8的性能比.NET7提高了18%,而在Fortunes场景中,.NET8的性能比.NET7提高了24%。由于这是微软开发的平台,因此微软也在推动将.NET8用于基于人工智能的应用程序。它指出::随着人工智能应用程序的兴起,出现了新的工具和SDK。我们与众多内部和外部合作伙伴(如AzureOpenAI、AzureCognitiveSearch、Milvus、Qdrant和MicrosoftTeams)合作,确保.NET开发人员能够通过各自的SDK轻松访问各种人工智能模型、服务和平台。此外,开源的语义内核SDK简化了将这些人工智能组件集成到新的和现有应用程序中的过程,从而帮助您提供创新的用户体验。使用.NET8开发的AOT(超前)应用程序在Linux和Windows平台上使用时,性能也会得到提升,这意味着开发人员不必使用JIT(即时)编译器在运行时对应用程序进行编译。除了发布.NET8,微软还发布了.NETAspire的第一个版本,用于制作基于云的应用程序。微软表示,它默认使用遥测、弹性、配置和健康检查等多种组件。微软还表示,它使用简单易用的本地开发者体验,同时也足够成熟,可以创建基于云的应用程序。开发人员可以在这篇单独的博文中了解更多关于.NETAspire的信息:https://devblogs.microsoft.com/dotnet/introducing-dotnet-aspire-simplifying-cloud-native-development-with-dotnet-8/他们还可以在GitHub上提交对该预览版的反馈意见。新版本将在年度.NET大会的第一天发布。这次虚拟活动将从现在开始持续到11月16日。...PC版:https://www.cnbeta.com.tw/articles/soft/1396957.htm手机版:https://m.cnbeta.com.tw/view/1396957.htm

封面图片

Twitter上有人分享的跟编译相关的文章。了解编译器对增长你的工程知识很有帮助。

上有人分享的跟编译相关的文章。了解编译器对增长你的工程知识很有帮助。1.2.3.4.5.编译器开发的经典之作,也是我读过的关于编程语言的最佳书籍之一《》6.《》--从更多的数学角度看类型理论,是一本更密集的书。很多令人兴奋的话题,如lambda计算和程序的完整性

封面图片

BPF是一个运行从用户空间传递的程序的内核虚拟机。目前Linux中的BPF基础架构已经完全重新设计,升级为eBPF(扩展的 BP

BPF是一个运行从用户空间传递的程序的内核虚拟机。目前Linux中的BPF基础架构已经完全重新设计,升级为eBPF(扩展的BPF),并有了很多新特性,如安全和终止检查、程序的JIT编译、持久映射、标准库、硬件卸载支持等,现在用于许多任务。在非常低的级别(XDP)处理数据包、跟踪和监视系统上的事件、对cgroup实施访问控制,这些只是eBPF带来性能、可编程性和灵活性的几个例子。像github所有awesome系列一下,awesomeeBPF这个repo整理了很多关于eBPF的资源。#虚拟机#eBPF

🔍 发送关键词来寻找群组、频道或视频。

启动SOSO机器人