Dicionário associativo em Lua

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Dicionário associativo em Lua

christian vieira
Saudações pessoal!

Agradeço ao(s) moderador(es) por permitirem minha participação aqui na lista. Estou exercitando um pouco a resolução de pequenos problemas em Lua e fiquei com muitas dúvidas quanto à implementação de dicionários associativos, estilo ao que temos em C++ tais como map e unordered_map. Alguma dica de como implementar de forma resumida sem a necessidade de bibliotecas? Tentei executar o código fonte do penúltimo livro: Programming in Lua (3rd ed) o qual contém o código fonte de um contador de palavras, mas a execução não retornou dados coerentes. Alguma dica/errata?

Att.
Christian Vieira

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dicionário associativo em Lua

Eric Chiesse
Lua provê isso através de tabelas: https://www.lua.org/manual/5.1/manual.html#2.2

Se for algo mais específico que vc procura então seria uma boa postar algum código pra orientar melhor a resposta.

---
Eric

2017-04-07 13:52 GMT-03:00 christian vieira <[hidden email]>:
Saudações pessoal!

Agradeço ao(s) moderador(es) por permitirem minha participação aqui na lista. Estou exercitando um pouco a resolução de pequenos problemas em Lua e fiquei com muitas dúvidas quanto à implementação de dicionários associativos, estilo ao que temos em C++ tais como map e unordered_map. Alguma dica de como implementar de forma resumida sem a necessidade de bibliotecas? Tentei executar o código fonte do penúltimo livro: Programming in Lua (3rd ed) o qual contém o código fonte de um contador de palavras, mas a execução não retornou dados coerentes. Alguma dica/errata?

Att.
Christian Vieira

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dicionário associativo em Lua

Denis Dos Santos Silva
In reply to this post by christian vieira
Christian a terceira edição usa a versão 5.2 do Lua.

tem como você postar o código, o resultado e a versão do Lua que está usando ?

eu não uso C++ então nem saberia comparar/falar sobre "map/unordered_map", porém, como o Eric comentou o uso do tipo de dados "table" deve resolver.

exemplos:
https://www.tutorialspoint.com/lua/lua_tables.htm
http://lua-users.org/wiki/TablesTutorial


Em sexta-feira, 7 de abril de 2017 13:57:01 UTC-3, christian vieira escreveu:
Saudações pessoal!

Agradeço ao(s) moderador(es) por permitirem minha participação aqui na lista. Estou exercitando um pouco a resolução de pequenos problemas em Lua e fiquei com muitas dúvidas quanto à implementação de dicionários associativos, estilo ao que temos em C++ tais como map e unordered_map. Alguma dica de como implementar de forma resumida sem a necessidade de bibliotecas? Tentei executar o código fonte do penúltimo livro: Programming in Lua (3rd ed) o qual contém o código fonte de um contador de palavras, mas a execução não retornou dados coerentes. Alguma dica/errata?

Att.
Christian Vieira

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dicionário associativo em Lua

Eric Chiesse
Denis,

std::map<T, U>, beeeeeeem resumidamente faz o que uma table em lua faz, mas é estaticamente tipado.

Ex:
#include <map>
std::map<string, string> authors;
authors["The Hobbit"]  = "J.R.Tolkien";
authors["The Prince"] = "N. Machiavelli";
...


Que em lua naturalmente seria:
authors = []
authors["The Hobbit"]  = "J.R.Tolkien"
authors["The Prince"] = "N. Machiavelli"
...



---
Eric

2017-04-07 14:57 GMT-03:00 Denis Dos Santos Silva <[hidden email]>:
Christian a terceira edição usa a versão 5.2 do Lua.

tem como você postar o código, o resultado e a versão do Lua que está usando ?

eu não uso C++ então nem saberia comparar/falar sobre "map/unordered_map", porém, como o Eric comentou o uso do tipo de dados "table" deve resolver.

exemplos:
https://www.tutorialspoint.com/lua/lua_tables.htm
http://lua-users.org/wiki/TablesTutorial


Em sexta-feira, 7 de abril de 2017 13:57:01 UTC-3, christian vieira escreveu:
Saudações pessoal!

Agradeço ao(s) moderador(es) por permitirem minha participação aqui na lista. Estou exercitando um pouco a resolução de pequenos problemas em Lua e fiquei com muitas dúvidas quanto à implementação de dicionários associativos, estilo ao que temos em C++ tais como map e unordered_map. Alguma dica de como implementar de forma resumida sem a necessidade de bibliotecas? Tentei executar o código fonte do penúltimo livro: Programming in Lua (3rd ed) o qual contém o código fonte de um contador de palavras, mas a execução não retornou dados coerentes. Alguma dica/errata?

Att.
Christian Vieira

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Dicionário associativo em Lua

Eric Chiesse
Errata (inline)
---
Eric

2017-04-07 15:26 GMT-03:00 Eric Chiesse <[hidden email]>:
Denis,

std::map<T, U>, beeeeeeem resumidamente faz o que uma table em lua faz, mas é estaticamente tipado.

Ex:
#include <map>
std::map<string, string> authors;
authors["The Hobbit"]  = "J.R.Tolkien";
authors["The Prince"] = "N. Machiavelli";
...


Que em lua naturalmente seria:
authors = []
 
--oops !!
authors = {}

authors["The Hobbit"]  = "J.R.Tolkien"
authors["The Prince"] = "N. Machiavelli"
...



---
Eric

2017-04-07 14:57 GMT-03:00 Denis Dos Santos Silva <[hidden email]>:
Christian a terceira edição usa a versão 5.2 do Lua.

tem como você postar o código, o resultado e a versão do Lua que está usando ?

eu não uso C++ então nem saberia comparar/falar sobre "map/unordered_map", porém, como o Eric comentou o uso do tipo de dados "table" deve resolver.

exemplos:
https://www.tutorialspoint.com/lua/lua_tables.htm
http://lua-users.org/wiki/TablesTutorial


Em sexta-feira, 7 de abril de 2017 13:57:01 UTC-3, christian vieira escreveu:
Saudações pessoal!

Agradeço ao(s) moderador(es) por permitirem minha participação aqui na lista. Estou exercitando um pouco a resolução de pequenos problemas em Lua e fiquei com muitas dúvidas quanto à implementação de dicionários associativos, estilo ao que temos em C++ tais como map e unordered_map. Alguma dica de como implementar de forma resumida sem a necessidade de bibliotecas? Tentei executar o código fonte do penúltimo livro: Programming in Lua (3rd ed) o qual contém o código fonte de um contador de palavras, mas a execução não retornou dados coerentes. Alguma dica/errata?

Att.
Christian Vieira

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.


--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.