Quais são as formas mais eficazes de usar Lua com C #?

votos
3

No meu entendimento, Lua é uma linguagem de script embutido que pode executar métodos em objetos. Quais são as armadilhas a evitar? Será que é viável usar Lua como intérprete e executar métodos em um ambiente web ou como um mecanismo de regras?

Publicado 25/12/2008 em 18:15
fonte usuário
Em outras línguas...                            


4 respostas

votos
6

Lua scripting é no caminho certo para se tornar um módulo central para o servidor web Apache.

Existem ferramentas de casal para ligação Lua e C # /. NET código aqui . LuaInterface é o mais atualizado.

Respondeu 25/12/2008 em 18:43
fonte usuário

votos
5

Lua é muito rápido - scripts podem ser pré-compilados para bytecodes e funções executar perto de chamadas de método virtual C ++. Essa é a razão pela qual ele é usado na indústria de jogos para execução de scripts AI, plugins, e outras coisas de nível oi em jogos.

Mas você colocar C # e servidor web na sua pergunta tags.

Se você não está pensando em servidores web incorporados - que Lua não é muito forte. Lua é ANSI C - ele compila para código nativo, e como tal não é muito bem-vindo ao seu servidor asp.net, nem ao seu código C #. Pense em "confiança média" ou "ligação" ou "64 bits".

Chega de armadilhas. Se você estiver allready usando C #, não há nenhuma razão para evitá-lo no servidor web. Ele é compilado e armazenado em cache. Ele servidores grandes sites como este.

Respondeu 25/12/2008 em 19:42
fonte usuário

votos
1

Por que eu gosto Lua é que ele se destaca como uma linguagem, especialmente quando usado em conjunto com C / C ++, como é suposto ser. Para mim, é a fusão destes dois que "faz" o idioma.

Armadilhas .. A falta de módulos de extensão poderia ser visto como um. Como nenhum CPAN, mas não há LuaRocks. Depende se você tem ligações suficientes para ir para o seu problema. Se não, você pode precisar ser tornando-os.

armadilhas de linguagem .. Existem alguns desejos no wiki Lua, que podem ser vistas como "armadilhas". Nenhuma afirmação "switch". Sem adequada "cond a:? B" formato. Se você não quer esticar sua mente acima dessas coisas sintaxe bastante superficial, então talvez JavaScript é para você?

Como um todo, é uma linguagem que me faz 10-100 vezes mais produtiva do que a programação sem ele.

Respondeu 25/12/2008 em 20:07
fonte usuário

votos
2

Nós costumávamos usar Lua como nossa linguagem de script em um aplicativo de controle de instrumentos biomédicos de tamanho médio C #. Foi uma ótima maneira de ensinar os caras hardware como escrever seus próprios pequenos pedaços de código de teste.

Uma vez IronPython atingiu a maturidade, decidimos que desde Python é um pouco mais completo e bem integrado com VS (bem como ter mais pessoas que o utilizam), que iria substituir toda a nossa Lua com Python. Até o momento que está funcionando muito bem. Lua é uma linguagem pouco bem, eu não tenho certeza que eu posso pensar de quaisquer vantagens de Lua sobre Python neste momento.

Lua pode ser um pouco mais rápido, mas se você já está dividindo seus domínios no roteiro-y e não-script-y, presumivelmente isso não é um grande fator.

Respondeu 29/12/2008 em 06:46
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more