Lua: Linguagem de Programação

Autor Mensagem
Sam
Moderador
# abr/10
· votar


Li sobre ela há um tempo atrás e vi que foram brasileiros que criaram. Dei moral demais =)

http://pt.wikipedia.org/wiki/Lua_%28linguagem_de_programa%C3%A7%C3%A3o %29

Guilherme 90
Veterano
# abr/10
· votar


Bog
Não existe só um Assembler. Por ser apenas um conjunto de apelidos para instruções de máquina, é quase que um Assembler para cada processador ou família de processadores.

No meu caso, eram DSPs da Motorola!


Uai, como assim não existe só um Assembler ? Porque já li que ele mexe direto no processador, essas coisas, algo assim.

De torrents, você diz? Não faço a menor idéia! =P

Sim, de torrents.

Bog
Veterano
# abr/10 · Editado por: Bog
· votar


guilherme_90
Uai, como assim não existe só um Assembler ? Porque já li que ele mexe direto no processador

Então! Assembler não é exatamente uma linguagem, são apenas apelidos para as instruções do processador. Existem N modelos de processador, não existem? Eles podem ter instruções diferentes. Instruções diferentes = assembler diferente.

Exemplo:
O teu PC usa um conjunto de instruções, representações em código de máquina e arquitetura diferente do microcontrolador que está no forno de microondas. Provavelmente, o assembler do processador do microondas é diferente do do teu PC.

Mr. Joe
Veterano
# abr/10
· votar


guilherme_90

Como o Bog falou anteriormente, Assembly (é AssemBLY, Assembler é quem programa em alguma instrução de certo "processador") é uma linguagem variável.

Eu só "programo" no Assembly x86 (a famosa linha Dual Core da Intel).
Existe o x85, o do PCI, da AMD, todos códigos diferentes.

(programo entre aspas, pois eu suo quando faço algo em Assembly 8086, heuaheuea)


Sam
Sam no meu tópico!
Tenho de registrar este momento com inúmeras ScreenShots!


Dei moral demais =)

Quando eu soube que era de Brasileiros (antes de baixar o compilador) pensei: "pqp, mais uma merda por Brasileiros... só podia ser uma cópia mal-feita de C mesmo", mas quando comecei a programar, Lua virou minha linguagem de programação favorita, até mesmo em CGI (na web)

Guilherme 90
Veterano
# abr/10
· votar


Bog

Ahh sim, agora eu entendi como que é isso aí. Mas entao Bog, como que uma pessoa cria um processador mais ou menos ?

Mr. Joe

Eu só "programo" no Assembly x86 (a famosa linha Dual Core da Intel).
Existe o x85, o do PCI, da AMD, todos códigos diferentes.

(programo entre aspas, pois eu suo quando faço algo em Assembly 8086, heuaheuea)


Caramba, esses trem é meio confuso. É muito complicado programar no Assembly ?

Mr. Joe
Veterano
# abr/10 · Editado por: Mr. Joe
· votar


guilherme_90
Ahh sim, agora eu entendi como que é isso aí. Mas entao Bog, como que uma pessoa cria um processador mais ou menos ?

Eu não sou o Bog, mas...
Você vai estudar uns 5 anos de Engenharia Elétrica, três anos só de matemática com cálculos avançados e logarítmos complexos, e então você fará um processador micro-chip. (de um laser de mouse) aehueahauehae

Cara, isso não é uma coisa que uma pessoa sozinha faz do zero.
É complicado e exige anos de experiência/faculdade/curso.


Caramba, esses trem é meio confuso. É muito complicado programar no Assembly ?

Nem. No geral, cada Assembly é como qualquer linguagem de auto-nível, só que você mexe diretamente com o hardware.

O problema é que cada coisinha exige muitas linhas de código, e isso assusta a nerdaiada.

aeheuaheauaeae

Guilherme 90
Veterano
# abr/10
· votar


Mr. Joe

Eu não sou o Bog, mas...
Você vai estudar uns 5 anos de Engenharia Elétrica, três anos só de matemática com cálculos avançados e logarítmos complexos, e então você fará um processador micro-chip. (de um laser de mouse) aehueahauehae

Cara, isso não é uma coisa que uma pessoa sozinha faz do zero.
É complicado e exige anos de experiência/faculdade/curso.


Engenharia Eletrica como também computação é calculo pra caramba, esses cursos nao são pra mim até porque nunca fui fã de cálculos.

Ahh, esse negocio de programar diretamente em Hardware é coisa de doido
kkkkkkkkkkkkkkkkkkkkkkkkkkkk

Ou parece, tem que ser no mínimo nerdão mesmo.
kkkkkkkkkkkkkk

Mr. Joe
Veterano
# abr/10 · Editado por: Mr. Joe
· votar


guilherme_90
Engenharia Eletrica como também computação é calculo pra caramba, esses cursos nao são pra mim até porque nunca fui fã de cálculos.

Ahh, esse negocio de programar diretamente em Hardware é coisa de doido
kkkkkkkkkkkkkkkkkkkkkkkkkkkk

Ou parece, tem que ser no mínimo nerdão mesmo.
kkkkkkkkkkkkkk


aehueahuaeu
Mas tipo, você não programa "diretamente" *NO* hardware.
Você programa diretamente COM o hardware.

Mas com Assembly você pode gerenciar a memória e bla bla bla.

Tipo, um "hello world" em Assembly dos processadores da série Dual Core da Intel:

section .data
str: db 'Hello world!', 0Ah
strLen: equ $-str
section .text
global _start
_start:
mov eax,4
mov ebx,1
mov ecx,str
mov edx,strLen
int 80h
mov eax,1
mov ebx,0
int 80h


E eu acho que deletei algo sem querer.
Então são mais algumas linhas.

Tudo isso vai printar "Hello World!" na tela.
Sendo que em Python é só fazer um print "Hello world!"
aehueaheuhae

Já falei, Assembly só assusta a nerdaiada pelo tamanho dos códigos.
No geral, é fácil.

GProtti
Veterano
# abr/10
· votar


Você vai estudar uns 5 anos de Engenharia Elétrica, três anos só de matemática com cálculos avançados e logarítmos complexos, e então você fará um processador micro-chip. (de um laser de mouse)
O projeto de microprocessadores está dentro da Ciência da Computação, na área de Arquitetura de Computadores.

Bog
Veterano
# abr/10
· votar


GProtti
O projeto de microprocessadores está dentro da Ciência da Computação, na área de Arquitetura de Computadores.

Mas dependendo do curso, não é o suficiente para CRIAR um processador. Quando eu fiz essa disciplina (UFPR), aprendi muito bem a parte lógica do negócio, mas nem esbarramos na parte física. Na faculdade, até projetamos um processador completinho, mas é impossível criar um processador de verdade sem se preocupar com a organização física, distâncias, pinos, onde cada componente vai, e um imenso etc.

Claro, talvez na UNI-A ou UNI-B, se ensine toda a eletrônica/física necessária para realmente CRIAR um processador. Mas não é necessariamente algo que se aplique a todos os cursos de Ciência da Computação.

GProtti
Veterano
# abr/10
· votar


mas é impossível criar um processador de verdade sem se preocupar com a organização física, distâncias, pinos, onde cada componente vai, e um imenso etc.
Com as ferramentas disponíveis hoje em dia, projetar um processador é quase que uma tarefa só de lógica. A eletrônica mesmo fica meio transparente.

É claro que sem conhecimento nenhum de eletrônica bons resultados não sairão.

Mr. Joe
Veterano
# abr/10
· votar


Não deixem o tópico morrer!
Eu estava gostando tanto dos posts :( aehueahuae

Guilherme 90
Veterano
# abr/10
· votar


Mr. Joe

[2]

O Bog, continua com a aula ae, tá todo mundo gostando
^^

Brincadeira man..

The Blue Special Guitar
Veterano
# abr/10
· votar


Faz tempo que não posto nos tópicos nerds daqui.
Mas sei lá, acho que não precisamos de novas linguagens de programação, já temos ótimas linguagens para os computadores que temos atualmente. Precisamos mesmo é de recursos (entenda-se por recurso: paradigmas, frameworks, ferramentas, etc) que ofereçam vantagens em cima da utilização destas linguagens que aí já estão no mercado, desde a otimização da produtividade do desenvolvedor (isso que eu considero mais relevante atualmente, na área comercial) até a otimização do código de máquina gerado.

GProtti
Veterano
# abr/10
· votar


The Blue Special Guitar
Eu trabalho em um projeto que, entre outras coisas, envolve a criação de uma linguagem. Acredito que seja um equívoco pensar que devemos nos virar com as linguagens que temos, já que os desafios pra computação hoje são um tanto diferentes dos de umas décadas atrás.

Querer resolver tudo num nível acima, adicionando coisas a linguagens existentes seja por anotações ou bibliotecas, nem sempre é o ideal.

Mr. Joe
Veterano
# mai/10 · Editado por: Mr. Joe
· votar


GProtti
Cara, eu penso assim:
Nós, programadores, devemos nos preocupar em programar com as linguagens já existentes, mas, criando novas bibliotecas e etc.

Talvez algum "banco de funções", melhorando o uso de alguma linguagem seria interessante.

O ser-humano é muito egoísta: "só irei programar em minha própria linguagem!".
Devemos melhorar as já existentes, isso sim!

Claro que criar uma linguagem para fins acadêmicos, eu apoio, para o(a) aluno(a) observar como é o "núcleo" da linguagem, e etc.

</up>

Mr. Joe
Veterano
# jul/10
· votar


Voltei!

No Linux consegui instalar o Lua com o Synaptic. Aí é só usar o GCC normalmente.

Mó legalzinha a linguagem. Para chamar ela via C é super fácil e ela é bem rápida. :)

Só não achei muita utilidade nela com desktops. Bem melhor na web...

Zandor
Veterano
# jul/10
· votar


Só não achei muita utilidade nela com desktops

Que? Rs

Mr. Joe
Veterano
# jul/10
· votar


Zandor
eu quis "dizer" que ela não tem muita utilidade para qualquer programa simples.

:)

Bog
Veterano
# jul/10
· votar


Mr. Joe
eu quis "dizer" que ela não tem muita utilidade para qualquer programa simples.

Nossa cara, eu sempre achei Lua ótima para programação quick and dirty...

Mr. Joe
Veterano
# jul/10
· votar


Bog
Nossa cara, eu sempre achei Lua ótima para programação quick and dirty...

Na minha opinião ela ajuda bem mais em programas maiores. ;)

Bog
Veterano
# jul/10
· votar


Mr. Joe
Na minha opinião ela ajuda bem mais em programas maiores. ;)

Er... eu discordo, mas mesmo assim, o que tem a ver "maiores" com "web"? Digo, em desktop existem programas enormes e complexos.

Guilherme 90
Veterano
# jul/10
· votar


É só aparecer um tópico sobre TI que o Bog logo aparece..

hauEAHUEAeaueaUeAUheAUAEUEAHUae
Zuera..

Guilherme 90
Veterano
# jul/10
· votar


Bog

Me explica uma coisa por favor, o que seria "quick and dirty..." ?

Mr. Joe
Veterano
# jul/10 · Editado por: Mr. Joe
· votar


Bog
Er... eu discordo, mas mesmo assim, o que tem a ver "maiores" com "web"? Digo, em desktop existem programas enormes e complexos.

Na web nem é questão dela ajudar com "tamanho", mas como linguagem de script ela faz seu trabalho mais facilmente. Vai dizer:

function chega_usuario()
if usuario == "Mr. Joe" then
return true else return false
end
end -- function.

if(chega_usuario()) then redireciona_pagina("ola_mrjoe.html")
else redireciona_pagina("errado.html")
end

é bem mais fácil de entender do quê:

function chega_usuario(){
if($_GET['usuario'] == "Mr. Joe"){
return(true);
} else { return(false);
}
if(chega_usuario()){
redireciona_pagina(...);
} else { redireciona_pagina(...); }

Depende muito do objetivo do projeto. :)
Na web ela fica idêntica a um algorítmo escrito em papel, e isso torna tudo bem mais fácil.

Guilherme 90
Veterano
# jul/10
· votar


Mr. Joe

E eu entendi todo seu código.

\o

Mr. Joe
Veterano
# jul/10
· votar


Guilherme 90
E eu entendi todo seu código.

\o


o/
/|
/\

Me explica uma coisa por favor, o que seria "quick and dirty..." ?
Acredito que sejam aqueles programas que se faz rápido e de "qualquer jeito".

Guilherme 90
Veterano
# jul/10
· votar


Mr. Joe

Mas eu falei sério, eu entendo o código mesmo.
\o

Eu só não consigo fazer sozinho, desenvolver, que é a parte foda.

Acredito que sejam aqueles programas que se faz rápido e de "qualquer jeito".

Ah sim..

=)

Bog
Veterano
# jul/10
· votar


Guilherme 90
o que seria "quick and dirty..."

Programinhas que você faz para usar uma ou duas vezes e jogar fora.

Mr. Joe
Na web ela fica idêntica a um algorítmo escrito em papel, e isso torna tudo bem mais fácil.

Er... na web ou em qualquer outro cenário, né? =P

Lembre-se que Lua ficou popular depois de ser usada para programar scripts de ações em jogos que rodavam exclusivamente offline. Eu lembro que até o comportamento dos inimigos no Baldur's Gate era descrito com uma variante de Lua!

Mr. Joe
Veterano
# jul/10
· votar


Bog
Lembre-se que Lua ficou popular depois de ser usada para programar scripts de ações em jogos que rodavam exclusivamente offline

Por isso eu disse que ela é mais usada em programas maiores.

WoW usa Lua. :)

Enviar sua resposta para este assunto
        Tablatura   
Responder tópico na versão original
 

Tópicos relacionados a Lua: Linguagem de Programação