Implementation of Dynamic Programming Languages
动态编程语言的实现
基本信息
- 批准号:RGPIN-2016-05682
- 负责人:
- 金额:$ 2.77万
- 依托单位:
- 依托单位国家:加拿大
- 项目类别:Discovery Grants Program - Individual
- 财政年份:2018
- 资助国家:加拿大
- 起止时间:2018-01-01 至 2019-12-31
- 项目状态:已结题
- 来源:
- 关键词:
项目摘要
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).**
像JavaScript、Python和Ruby这样的动态编程语言越来越受欢迎。这些语言提供了许多简化复杂应用程序开发的特性:快速开发周期、自省、语言可扩展性、高度抽象、代码迁移等。这些语言的当前实现使用高度复杂的多层设计,但与静态编程语言(C、Java等)相比,在性能方面仍然落后。所提出的研究计划的长期目标是降低动态编程语言的虚拟机的开发成本并提高其性能。******该研究项目将继续研究即时编译领域的最新进展。惰性基本块版本控制技术在消除动态类型程序的运行时类型检查方面已被证明是有效的。这种方法将首先进行扩展,使其在源程序使用高阶函数和不使用高阶函数时都能在程序间操作。然后,我们将通过将该方法应用于其他编译问题,包括寄存器分配、内存管理、函数内联和自动程序并行化,来激发该方法的强大功能。*******我们还将研究自托管JIT编译器的设计,该编译器可以从以前运行的程序(可能由其他位置的其他用户运行)中获益,以减少重新编译程序的成本。我们还计划研究在动态语言环境下并行性的实现。我们对函数式编程语言Clojure(基于事务和代理)、Erlang(基于actor)和Termite(通过连续序列化提供任务迁移)的并行模型很感兴趣
项目成果
期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
数据更新时间:{{ journalArticles.updateTime }}
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
数据更新时间:{{ journalArticles.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ monograph.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ sciAawards.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ conferencePapers.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ patent.updateTime }}
Feeley, Marc其他文献
Feeley, Marc的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Feeley, Marc', 18)}}的其他基金
High-Performance Dynamic Language Implementation
高性能动态语言实现
- 批准号:
RGPIN-2022-04318 - 财政年份:2022
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
RGPIN-2016-05682 - 财政年份:2021
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
RGPIN-2016-05682 - 财政年份:2020
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
RGPIN-2016-05682 - 财政年份:2019
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
492964-2016 - 财政年份:2018
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Accelerator Supplements
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
492964-2016 - 财政年份:2017
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Accelerator Supplements
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
RGPIN-2016-05682 - 财政年份:2017
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
492964-2016 - 财政年份:2016
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Accelerator Supplements
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
RGPIN-2016-05682 - 财政年份:2016
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Dynamic languages: design, implementation and evaluation
动态语言:设计、实现和评估
- 批准号:
107902-2010 - 财政年份:2014
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
相似国自然基金
Dynamic Credit Rating with Feedback Effects
- 批准号:
- 批准年份:2024
- 资助金额:万元
- 项目类别:外国学者研究基金项目
相似海外基金
Rubber DUQ: Flexible Dynamic Universal Quantum programming
Rubber DUQ:灵活动态通用量子编程
- 批准号:
EP/X025551/1 - 财政年份:2024
- 资助金额:
$ 2.77万 - 项目类别:
Research Grant
Stochasticity in Approximate Dynamic Programming
近似动态规划中的随机性
- 批准号:
RGPIN-2020-04301 - 财政年份:2022
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Development of a dynamic and friendly program visualization for learning materials of functional programming
开发动态且友好的程序可视化,用于函数式编程的学习材料
- 批准号:
22K12320 - 财政年份:2022
- 资助金额:
$ 2.77万 - 项目类别:
Grant-in-Aid for Scientific Research (C)
Approximate Dynamic Programming for Service Systems
服务系统的近似动态规划
- 批准号:
RGPIN-2020-04229 - 财政年份:2022
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Stochastic dynamic programming for modelling and solving extended multivariate structural models
用于建模和求解扩展多元结构模型的随机动态规划
- 批准号:
RGPIN-2018-04432 - 财政年份:2022
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Approximate Dynamic Programming Methods for Dynamic Resource Allocation Problems in Health Care
医疗保健中动态资源分配问题的近似动态规划方法
- 批准号:
RGPIN-2018-05225 - 财政年份:2022
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Data-driven stochastic dynamic programming approaches for optimal planning of disease screening and chronic disorder management
数据驱动的随机动态规划方法,用于疾病筛查和慢性疾病管理的优化规划
- 批准号:
RGPIN-2018-06596 - 财政年份:2022
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Implementation of Dynamic Programming Languages
动态编程语言的实现
- 批准号:
RGPIN-2016-05682 - 财政年份:2021
- 资助金额:
$ 2.77万 - 项目类别:
Discovery Grants Program - Individual
Overcoming the curse of dimensionality in dynamic programming by tensor decompositions
通过张量分解克服动态规划中的维数灾难
- 批准号:
EP/V04771X/1 - 财政年份:2021
- 资助金额:
$ 2.77万 - 项目类别:
Research Grant
Error Inclusive Programming and Common-Sense Oriented Feature Extraction for Dynamic Acquisition and Correction of Robotic Actions
错误包容编程和面向常识的特征提取,用于机器人动作的动态获取和校正
- 批准号:
21J10800 - 财政年份:2021
- 资助金额:
$ 2.77万 - 项目类别:
Grant-in-Aid for JSPS Fellows