Estou desenvolvendo uma nova linguagem de programação com um compilador baseado em métodos e escrito em Lua (software livre - uma proposta de aprimoramento do HTML 5), suportando variáveis, laços de repetição, construção e chamada de métodos, subdivisão do software em módulos, criação e utilização de bibliotecas. Gostaria de receber qualquer feedback de coisas que vocês gostam ou não no HTML 5 e se alguém gostaria de se voluntariar para ser beta-tester da linguagem, que batizei de HTML++.
Fiz alguns testes da linguagem tanto em desenvolvimento web quanto em desktop e Android, parece que tudo está funcionando bem. Escrevi um livro e manual de referência sobre o funcionamento da linguagem, portabilidade e montagem de pacotes.
Quaisquer sugestões a respeito do código-fonte da linguagem e novas funcionalidades são bem-vindas.
PS: Sim – A linguagem é software livre registrado sob a licença BSD (de três cláusulas), possui um montador capaz de montar os “bytecodes” para todas as plataformas suportadas: Windows, macOS, GNU/Linux e Android.
Gabriel Margarido,
23 de abril de 2021 – lfilipe....@gmail.com
--
Você recebeu essa mensagem porque está inscrito em um tema no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse tema, acesse https://groups.google.com/d/topic/lua-br/ESKpjvUIAzI/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus temas, envie um e-mail para lua-br+un...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/f3cb29d3-ec35-429e-b2ab-bf484325bc4an%40googlegroups.com.
--
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 lua-br+un...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/06ca20d4-4f02-4f2a-9682-4982fc2bcd3cn%40googlegroups.com.
Olá Eduardo Gimenez,
Fico feliz que tenha se interessado pela linguagem Lua/HTML++. A documentação está disponível na página oficial da linguagem (http://htmlpp.gabrielmargarido.ga).
Caminho na página oficial:
Manual de referência & Contribuições > Manual de referência em Português (BETA)
De qualquer maneira envio por aqui, o link direto da documentação em Português:
Se puder dar um feedback dizendo o que achou, ficarei agradecido, visto que esta é uma versão beta.
Gabriel Margarido
Você recebeu essa mensagem porque está inscrito em um tema no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse tema, acesse https://groups.google.com/d/topic/lua-br/ESKpjvUIAzI/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus temas, envie um e-mail para lua-br+un...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/CAPGk7Ks2cFareY7mRoD6Fnh8WChcbgunjB_HJ2xOFUK2WPG2UQ%40mail.gmail.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/CAFpEko2UE6sbv4DtnktgCKLNWyCST_rP_LmLyOaPhfkzw%3D7tEA%40mail.gmail.com.
--
Olá, Estou aberto a este tipo de diálogo, com certeza, “duas cabeças pensam melhor do que uma”. Gostaria de ser beta tester ou desenvolver a linguagem em equipe?
Gabriel Margarido
Olá Eduardo, tudo bem?
Visualizei as perguntas que você me fez anteontem nos e-mails.
Vou respondê-las em uma lista para ficar mais organizado, Ok?
1. Sobre o desenvolvimento de páginas dinâmicas com Javascript e HTML++: Sim, é possível desenvolver páginas dinâmicas com muito mais integração entre ambas as linguagens a partir da versão 2.4 - Flevorant Fox, já que estou aumentando a integração entre HTML++ e Javascript (TypeScript e CoffeeScript também) nas versões mais recentes.
2. O código namespace (citado na documentação do HTML++) contém alguma forma de comunicação com o código Javascript da página?: Sim, existe uma ponte de comunicação entre funções Javascript escritas em scripts externos nos arquivos [.js] e o código namespace escrito em HTML++ [.lua - .name - .ns - .hcc].
As funções Javascript ou CSS devem estar em um arquivo [.js] ou [.css] separado, dentro do diretório “frameworks > js” ou “frameworks > css”, para ficar mais fácil e organizado de incluir as instruções basta editar o arquivo “javascript.js” ou “class.css”.
Para isso, inclua a biblioteca Collections e os arquivos Javascript ou CSS com as instruções:
--No cabeçalho do programa (antes de tudo):
local System = require(“Foundation/System”);
local Collections = require(“Foundation/Collections”);
--No programa principal:
System.namespace(“index.html”);
Collections.using(“javascript”, CAMINHO_DO_ARQUIVO);
Collections.using(“css”, CAMINHO_DO_ARQUIVO);
System.main();
--Seu programa principal aqui.
System.close();
*Observação: Não esqueça de incluir a biblioteca System no programa antes de tudo, o ponto e vírgula ao final das instruções é opcional.
PS: Pode-se dizer que dentro de um sistema web, por exemplo, é possível substituir os arquivos em HTML 5 [.html] por códigos equivalentes em HTML++ [.ns], necessitando de pequenas adaptações para funcionamento de todo o sistema. Os arquivos Javascript e CSS precisarão de pequenas refatorações (se precisarem).
3. Se eu desenvolver uma biblioteca Lua em C, ela será compatível com HTML++?: Eduardo, eu nunca testei, mas teoricamente é possível sim.
4. Se eu compilar minha própria versão do Lua (modificada para incluir operadores bitwise e corrigir o metamethod __len) ela seria compatível com HTML++?:
Boa pergunta! Não tinha pensado nisso até agora, eu acho que funciona sim, mas não posso te dar certeza. Vou testar se dá certo por aqui, se você quiser testar por aí, me conta o resultado. Ok?
Gabriel Margarido
--
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 lua-br+un...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/11231170-5576-4d72-b8b9-af01cc979a4bn%40googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/CAPGk7KtLOYF2sP0QTNfzr2pe8FGzwKaswR1c%2B4wOSYQumXi76w%40mail.gmail.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/CAC_0jov1YWFAyu_9%3DG77nJHvywn4gikdntEwDOdU%2BBxHWyzAFA%40mail.gmail.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/ROAP284MB01570696E48E17AB2A3C6FE9DB409%40ROAP284MB0157.BRAP284.PROD.OUTLOOK.COM.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/ROAP284MB01570696E48E17AB2A3C6FE9DB409%40ROAP284MB0157.BRAP284.PROD.OUTLOOK.COM.
Olá Wenderson,
Fico extremamente feliz que tenha se interessado pela linguagem de programação Lua/HTML++. Quanto ao erro da inexistência do arquivo “lua5.1.dll”, você pode tentar instalar a linguagem de programação Lua na versão 5.1 para Windows a partir de um arquivo [.exe] pré-compilado. Estou disponibilizando o link do meu repositório pessoal de binários do Lua (binários disponíveis para: Debian x64, Windows x86_X64 e MacOS Intel x64) para realizar a instalação.
*PS: Não modifique o caminho padrão de instalação dos binários no instalador, após isso, tente compilar com o HCC (“hcc-64-windows.exe” make.name) ou com o próprio Lua (lua make.name).
É normal ter vários arquivos dentro do caminho a seguir, não delete nenhum deles, os binários do Lua devem estar por padrão em:
C: > Arquivos de Programas (x86) > Lua > 5.1 > { lua.exe, luac.exe}
Link do meu repositório pessoal de binários do Lua para: Debian (x64), Windows (x86_x64) e macOS Intel (x64): https://drive.google.com/drive/folders/1_7n2mVlS09Q0S8dzuhQ-JXySyRoTl8ke?usp=sharing
Dando uma olhada nos seus testes, irei responder cada dúvida em uma lista:
1. Eu percebi que a linguagem me permite escrever trechos HTML com erros de sintaxe, existe um plano para o transcompilador fazer validação de sintaxe, ou isso realmente vai ficar por conta do programador? [Wenderson Cabral, Bruno Rocha]
Ainda não existe um plano para o transcompilador fazer a validação da sintaxe, isso ficará por conta do programador, pois muita coisa da sintaxe em HTML 5 já é feita automaticamente pelo transcompilador (HTML-PPC) no momento da transcompilação, assim dificultando muito por parte do programador que ele escreva código com erros, porque tudo será convertido automaticamente para HTML 5, a inserção de trechos HTML é disponibilizada para “pequenos ajustes” na parte gráfica do software.
2. Foi considerado escrever as funções preparando-as para receber tabelas como parâmetros? se essa opção foi descartada, por quê? Acredito que a utilização de tabelas como parâmetros deixa o código muito mais fácil de ler para quem não tem conhecimento da linguagem, além de gerar outros benefícios como possibilidade de polimorfismo e a não necessidade de 'decorar' a ordem dos parâmetros de cada função.
Gostei muito da sua sugestão Wenderson,
A ideia de passar os parâmetros em uma tabela nem foi pensada. Realmente ter de decorar ou consultar a ordem dos parâmetros na documentação era um problema até agora, ambas as opções estarão disponíveis na próxima atualização [passar os parâmetros em ordem – economizar memória; passar os parâmetros em tabela – maior facilidade e comodidade]. Como forma de agradecimento, seu nome estará na página oficial da linguagem assim que a próxima atualização sair e na segunda versão do manual de referência da documentação da linguagem (na seção de agradecimentos - BETA 1.1).
Fiz alguns testes aqui no meu ambiente de desenvolvimento (Windows 10 - 64-bits), o transcompilador HTML-PPC/HCC me retornou um erro quando passei os parâmetros em uma tabela para a função Serial.printf , como posso resolver isso? Segue dois prints da minha pergunta (um com o código e outro com o erro apontado pela IDE).
Gabriel Margarido
Olá Francisco Rabelo,
Agradeço pela sua contribuição, fique à vontade para conferir a documentação da linguagem, testar ou desenvolver com ela, com certeza colocarei o HTTPS no meu domínio.
Gabriel Margarido
--
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 lua-br+un...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/3d83af35-7d63-42a6-91ef-dee6ce9e3acfn%40googlegroups.com.
Olá Fábio,
Fico feliz que tenha se interessado pela linguagem de programação Lua/HTML++, gostaria de agradecer pelos elogios e por querer ser um beta-tester da linguagem, isto é motivo de grande felicidade. Quanto mais gente testando, melhor.
Qualquer dúvida, pergunta ou sugestão para o andamento do trabalho, estarei aqui. Gostaria, se você puder ao final da leitura, me desse um feedback. Críticas e sugestões são sempre bem-vindas.
Gabriel Margarido
--
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 lua-br+un...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/0c8cf825-d5d1-4cd7-b55c-202e1c49570dn%40googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/CAPGk7KvGaDWjK%3DEbRsWv3s8oV4QRzPRDM%2BonzkuNbOc3-9sJWw%40mail.gmail.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/CAC_0jov9FULmViHy5wPsmmf3i%3DcK46%3DbAyWCZ1CxYDSRVQkqzQ%40mail.gmail.com.
Olá a todos que programam em Lua,Estou desenvolvendo uma nova linguagem de programação com um compilador baseado em métodos e escrito em Lua (software livre - uma proposta de aprimoramento do HTML 5), suportando variáveis, laços de repetição, construção e chamada de métodos, subdivisão do software em módulos, criação e utilização de bibliotecas. Gostaria de receber qualquer feedback de coisas que vocês gostam ou não no HTML 5 e se alguém gostaria de se voluntariar para ser beta-tester da linguagem, que batizei de HTML++.
Fiz alguns testes da linguagem tanto em desenvolvimento web quanto em desktop e Android, parece que tudo está funcionando bem. Escrevi um livro e manual de referência sobre o funcionamento da linguagem, portabilidade e montagem de pacotes.
Quaisquer sugestões a respeito do código-fonte da linguagem e novas funcionalidades são bem-vindas.
PS: Sim – A linguagem é software livre registrado sob a licença BSD (de três cláusulas), possui um montador capaz de montar os “bytecodes” para todas as plataformas suportadas: Windows, macOS, GNU/Linux e Android.
Página oficial da linguagem: http://htmlpp.gabrielmargarido.ga/Meu repositório online de softwares: http://home.gabrielmargarido.ga/
Gabriel Margarido,
23 de abril de 2021 – lfilipe....@gmail.com
--
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 lua-br+un...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/lua-br/06ca20d4-4f02-4f2a-9682-4982fc2bcd3cn%40googlegroups.com.