[en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME

Detalhes bibliográficos
Autor(a) principal: FABIO MASCARENHAS DE QUEIROZ
Data de Publicação: 2004
Tipo de documento: Outros
Idioma: por
Título da fonte: Repositório Institucional da PUC-RIO (Projeto Maxwell)
Texto Completo: https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=4937@1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=4937@2
http://doi.org/10.17771/PUCRio.acad.4937
Resumo: [pt] O Common Language Runtime (CLR) é uma plataforma criada com o objetivo de facilitar a interoperabilidade entre diferentes linguagens de programação, através de uma linguagem intermediária (a Common Intermediate Language, ou CIL) e um sistema de tipos comum (o Common Type System, ou CTS). Lua é uma linguagem de script flexível e de sintaxe simples; linguagens de script são frequentemente usadas para juntar componentes escritos em outras linguagens, para construir protótipos de aplicações, e em arquivos de configuração. Este trabalho apresenta duas abordagens de integração entre a linguagem Lua e o CLR, com o objetivo de permitir que scripts Lua instanciem e usem componentes escritos para o CLR. A primeira abordagem é a de criar uma ponte entre o interpretador Lua e o CLR, sem modificar o interpretador. Os recursos e a implementação desta ponte são mostrados, e ela é comparada com trabalhos que seguem a mesma abordagem. A segunda abordagem é a de compilar as instruções da máquina virtual do interpretador Lua para instruções da Common Intermediate Language Do CLR, sem introduzir mudanças na linguagem Lua. A implementação de um compilador de instruções Lua para CIL é mostrada, e o desempenho de scripts compilados por ele é comparado com o desempenho dos mesmos scripts executados pelo interpretador Lua e com o de scripts equivalentes compilados por outros compiladores de linguagens de script para o CLR.
id PUC_RIO-1_a55930f052a07282d9fee7b272db2189
oai_identifier_str oai:MAXWELL.puc-rio.br:4937
network_acronym_str PUC_RIO-1
network_name_str Repositório Institucional da PUC-RIO (Projeto Maxwell)
repository_id_str 534
spelling [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME [pt] INTEGRAÇÃO ENTRE A LINGUAGEM LUA E O COMMON LANGUAGE RUNTIME [pt] LINGUAGEM LUA[pt] MAQUINAS VIRTUAIS[pt] COMPILADORES[en] LUA PROGRAMMING LANGUAGE[en] VIRTUAL MACHINES[en] COMPILERS[pt] O Common Language Runtime (CLR) é uma plataforma criada com o objetivo de facilitar a interoperabilidade entre diferentes linguagens de programação, através de uma linguagem intermediária (a Common Intermediate Language, ou CIL) e um sistema de tipos comum (o Common Type System, ou CTS). Lua é uma linguagem de script flexível e de sintaxe simples; linguagens de script são frequentemente usadas para juntar componentes escritos em outras linguagens, para construir protótipos de aplicações, e em arquivos de configuração. Este trabalho apresenta duas abordagens de integração entre a linguagem Lua e o CLR, com o objetivo de permitir que scripts Lua instanciem e usem componentes escritos para o CLR. A primeira abordagem é a de criar uma ponte entre o interpretador Lua e o CLR, sem modificar o interpretador. Os recursos e a implementação desta ponte são mostrados, e ela é comparada com trabalhos que seguem a mesma abordagem. A segunda abordagem é a de compilar as instruções da máquina virtual do interpretador Lua para instruções da Common Intermediate Language Do CLR, sem introduzir mudanças na linguagem Lua. A implementação de um compilador de instruções Lua para CIL é mostrada, e o desempenho de scripts compilados por ele é comparado com o desempenho dos mesmos scripts executados pelo interpretador Lua e com o de scripts equivalentes compilados por outros compiladores de linguagens de script para o CLR.[en] The Common Language Runtime (CLR) is a platform that aims to make the interoperability among different programming languages easier, by using a common language (the Common Intermediate Language, or CIL) and a common type system (the Common Type System, or CTS). Lua is a flexible scripting language with a simple syntax; scripting languages are frequently used to join components written in other languages, to build application prototypes, and in configuration files. This work presents two approachs for integratiion between the Lua language and the CLR, with the objective of allowing Lua scripts to instantiate and use components written for the CLR. The first approach is to create a bridge between the Lua interpreter and the CLR, without changing the interpreter. The features and implementation of this bridge are shown, and it is compared with other work following the same approach. The second approach is to compile the virtual-machine instructions of the Lua interpreter to instructions of the CLR s Common Intermediate Language, without introducing changes to the Lua language. The implementation of a Lua instructions to CIL compiler is shown, and the performance of scripts compiled by it is compared with the performance of the same scripts run by the Lua interpreter and with the performance of equivalent scripts compiled by compilers of other scripting language to the CLR.MAXWELLROBERTO IERUSALIMSCHYFABIO MASCARENHAS DE QUEIROZ2004-05-27info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/otherhttps://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=4937@1https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=4937@2http://doi.org/10.17771/PUCRio.acad.4937porreponame:Repositório Institucional da PUC-RIO (Projeto Maxwell)instname:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)instacron:PUC_RIOinfo:eu-repo/semantics/openAccess2019-05-30T00:00:00Zoai:MAXWELL.puc-rio.br:4937Repositório InstitucionalPRIhttps://www.maxwell.vrac.puc-rio.br/ibict.phpopendoar:5342019-05-30T00:00Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)false
dc.title.none.fl_str_mv [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME
[pt] INTEGRAÇÃO ENTRE A LINGUAGEM LUA E O COMMON LANGUAGE RUNTIME
title [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME
spellingShingle [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME
FABIO MASCARENHAS DE QUEIROZ
[pt] LINGUAGEM LUA
[pt] MAQUINAS VIRTUAIS
[pt] COMPILADORES
[en] LUA PROGRAMMING LANGUAGE
[en] VIRTUAL MACHINES
[en] COMPILERS
title_short [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME
title_full [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME
title_fullStr [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME
title_full_unstemmed [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME
title_sort [en] INTEGRATING THE LUA LANGUAGE AND THE COMMON LANGUAGE RUNTIME
author FABIO MASCARENHAS DE QUEIROZ
author_facet FABIO MASCARENHAS DE QUEIROZ
author_role author
dc.contributor.none.fl_str_mv ROBERTO IERUSALIMSCHY
dc.contributor.author.fl_str_mv FABIO MASCARENHAS DE QUEIROZ
dc.subject.por.fl_str_mv [pt] LINGUAGEM LUA
[pt] MAQUINAS VIRTUAIS
[pt] COMPILADORES
[en] LUA PROGRAMMING LANGUAGE
[en] VIRTUAL MACHINES
[en] COMPILERS
topic [pt] LINGUAGEM LUA
[pt] MAQUINAS VIRTUAIS
[pt] COMPILADORES
[en] LUA PROGRAMMING LANGUAGE
[en] VIRTUAL MACHINES
[en] COMPILERS
description [pt] O Common Language Runtime (CLR) é uma plataforma criada com o objetivo de facilitar a interoperabilidade entre diferentes linguagens de programação, através de uma linguagem intermediária (a Common Intermediate Language, ou CIL) e um sistema de tipos comum (o Common Type System, ou CTS). Lua é uma linguagem de script flexível e de sintaxe simples; linguagens de script são frequentemente usadas para juntar componentes escritos em outras linguagens, para construir protótipos de aplicações, e em arquivos de configuração. Este trabalho apresenta duas abordagens de integração entre a linguagem Lua e o CLR, com o objetivo de permitir que scripts Lua instanciem e usem componentes escritos para o CLR. A primeira abordagem é a de criar uma ponte entre o interpretador Lua e o CLR, sem modificar o interpretador. Os recursos e a implementação desta ponte são mostrados, e ela é comparada com trabalhos que seguem a mesma abordagem. A segunda abordagem é a de compilar as instruções da máquina virtual do interpretador Lua para instruções da Common Intermediate Language Do CLR, sem introduzir mudanças na linguagem Lua. A implementação de um compilador de instruções Lua para CIL é mostrada, e o desempenho de scripts compilados por ele é comparado com o desempenho dos mesmos scripts executados pelo interpretador Lua e com o de scripts equivalentes compilados por outros compiladores de linguagens de script para o CLR.
publishDate 2004
dc.date.none.fl_str_mv 2004-05-27
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/other
format other
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=4937@1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=4937@2
http://doi.org/10.17771/PUCRio.acad.4937
url https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=4937@1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=4937@2
http://doi.org/10.17771/PUCRio.acad.4937
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv MAXWELL
publisher.none.fl_str_mv MAXWELL
dc.source.none.fl_str_mv reponame:Repositório Institucional da PUC-RIO (Projeto Maxwell)
instname:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
instacron:PUC_RIO
instname_str Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
instacron_str PUC_RIO
institution PUC_RIO
reponame_str Repositório Institucional da PUC-RIO (Projeto Maxwell)
collection Repositório Institucional da PUC-RIO (Projeto Maxwell)
repository.name.fl_str_mv Repositório Institucional da PUC-RIO (Projeto Maxwell) - Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
repository.mail.fl_str_mv
_version_ 1814822549119303680