课题基金 / 基金详情

Implementation of Dynamic Programming Languages

Implementation of Dynamic Programming Languages
动态编程语言的实现
批准号:
RGPIN-2016-05682
负责人:
Feeley, Marc
金额:
$2.77万
依托单位:
依托单位国家:
加拿大
项目类别:
Discovery Grants Program - Individual
财政年份:
2020
资助国家:
加拿大
项目状态:
已结题
起止时间:
2020-01-01 至 2021-12-31

项目摘要

项目成果

Feeley, Marc的其他基金

相似基金

相关文献

中文摘要
翻译
动态编程语言如JavaScript、Python和Ruby越来越受欢迎。 这些语言提供了许多功能,简化了发展的复杂的应用程序:一个快速的开发周期,内省,语言的可扩展性,高层次的抽象,代码迁移等,这些语言的当前实现使用高度复杂的多层设计,但仍然落后于静态编程语言(C,Java等)的性能相比。 建议的研究计划的长期目标是降低动态编程语言的虚拟机的开发成本,并提高其性能。 该研究计划将继续研究Just-In-Time编译领域的最新进展。 懒惰的基本块版本控制技术已经被证明在消除动态类型程序的运行时类型检查方面是有效的。 这种方法将首先被扩展,使其在源程序使用高阶函数时和不使用高阶函数时都能进行过程间操作。 然后,我们将煽动的权力的方法,将其应用到其他编译问题,包括寄存器分配,内存管理,函数内联和自动程序并行化。 我们还将研究一个自托管的JIT编译器的设计,它可以从以前运行的程序中受益,可能是由其他用户在其他位置,以减少重新编译程序的成本。 我们还计划研究在动态语言的上下文中的并行性的实现。 我们感兴趣的是函数式编程语言Clojure(基于事务,代理),Erlang(基于Actors)和Termite(通过连续序列化提供任务迁移)的并行模型。
英文摘要
Dynamic programming languages such as JavaScript, Python and Ruby are gaining in popularity. These languages offer many features which ease the development of evolvable complex applications: a rapid development cycle, introspection, language extensibility, high level of abstraction, code migration, etc. Current implementations of these languages use highly complex multi-tier designs which nevertheless still lag in terms of performance when compared to static programming languages (C, Java, etc). The long term objectives of the proposed research program are to lower the development cost of VMs for dynamic programming languages and improve their performance. The research program will continue work on recent advancements in the field of Just-In-Time compilation. The technique of lazy Basic Block Versioning has been shown to be effective at eliminating run-time type checks from dynamically typed programs. This approach will first be extended to make it operate interprocedurally, both when the source program uses higher order functions and not. Then we will instigate the power of the approach by applying it to other compilation problems, including register allocation, memory management, function inlining and automatic program parallelization. We will also investigate the design of a self-hosted JIT compiler which can benefit from previous runs of the programs, possibly by other users at other locations, to reduce the cost of recompiling the program. We also plan to study the implementation of parallelism in the context of dynamic languages. We are interested in the parallelism model of the functional programming languages Clojure (based on transactions, agents), Erlang (based on Actors) and Termite (that offers task migration through continuation serialization).
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
High-Performance Dynamic Language Implementation
  • 批准号:
    RGPIN-2022-04318
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $2.11万
  • 财政年份:
    2022
  • 负责人:
    Feeley, Marc
  • 依托单位:
Implementation of Dynamic Programming Languages
  • 批准号:
    RGPIN-2016-05682
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $2.77万
  • 财政年份:
    2021
  • 负责人:
    Feeley, Marc
  • 依托单位:
Implementation of Dynamic Programming Languages
  • 批准号:
    RGPIN-2016-05682
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $2.77万
  • 财政年份:
    2019
  • 负责人:
    Feeley, Marc
  • 依托单位:
Implementation of Dynamic Programming Languages
  • 批准号:
    RGPIN-2016-05682
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $2.77万
  • 财政年份:
    2018
  • 负责人:
    Feeley, Marc
  • 依托单位:
国内基金
海外基金
Dynamic Credit Rating with Feedback Effects
  • 批准号:
    --
  • 项目类别:
    外国学者研究基金项目
  • 资助金额:
    --
  • 批准年份:
    2024
  • 负责人:
    Christian Martin Hilpert
  • 依托单位: