Algumas novas linguagens de programação

Aqui é o lugar para bater papo e trocar idéias sobre os mais variados assuntos

Moderador: Moderadores

Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Algumas novas linguagens de programação

Mensagem por bencz »

Boa noite amigos, espero que todos estejam bem!!!!

Bom, minha experiencia de programador, é ampla, felizmente comecei com os códigos aos meus 9 ( nove ) anos de idade, em um CP-200, isso, quando comecei, o computador já deveria ter aproximadamente 20 anos de idade, e para piorar, comecei com Assembly, em 2002, ou seja, tenho apenas 20 anos de idade, mas, sou um extremo apaixonado pela programação, e amo estudar os mais diversos e variados tipos de linguagens de programação e seus devidos tipos, digo, paradigmas, lógico, que tenho as minhas linguagens preferidas, as preferidas para trabalhar e as preferidas para estudar e passar tempo.

Nao sou da época do PDP-11, nem dos IBM /360, mas, cheguei a utilizar eles na UFPR, e amei <3 haha, mas vou parar de falar um pouco sobre minha vida para comentar sobre oque realmente vem a interessar, que são as linguagens de programação, sei, que todos tem suas preferencias e já tenho dito que não tenho que por interesse mudar a opinião de alguém aqui.

Temos hoje uma grande gama de linguagens de programação de tudo quanto é tipo, tamanho, formato ( mais parece q estamos falando de roupa ou de outras coisas... ), linguagens funcionais, orientada-objetos, estruturadas, procedurais e o mix de paradigmas.

Eu, Alexandre Savelli Bencz, por ser muito curioso e buscar por novas linguagens de programação e tentar, ao menos aprender um pouco sobre ela e seu devido funcionamento, e tentar desenvolver linguagens de programação, algumas eu consigo alcançar meu devido objetivo, como por exemplo, apenas gerar um executável simples, MZ PE Windows ou mesmo um simples arquivo binário com as informações e opcodes corretos...

Hoje temos uma gama de linguagens de programação absurdas, para os mais variados tipos e gostos, des de linguagens exotéricas, até linguagens de hiper alto nivel, linguagens quanticas e etc.

Enquanto a minha busca por linguagens de programação mais interessantes, isso em 2009 aproximadamente, quando eu estava desenvolvendo um sistema operacional, me surgiu a duvida de como funcionava e trabalhava um compilador, des de então, venho a desenvolver e a estudar compiladores e linguagens de programação, claro, que o Harbour não escapou desta minha pesquisa, fiz modificações no gerador de código dele, fiz alterações em varias partes do compilador para questão de testes, mas, apenas pesquisa, como adicionar um CG no compilador mais recente ( na época ) do harbour.

Bom, mas enfim, vou aqui comentar sobre algumas linguagens de programação muito interessantes e extremamente poderosas, mas que poucas pessoas conhecem, e, que acredito eu, poderiam ser utilizadas para fins comerciais, digo, desenvolvimento de aplicações para empresas.

Em lista, segue em primeiro lugar uma linguagem de programação chamada D, estou estudando está linguagem de programação e estou achando ela maravilhosa, realmente muito poderosa, fiz algumas perguntas no forum da pagina da linguagem D ( forum.dlang.org ), onde pedi ( na cara de pau mesmo ) para alguem converter um código em C# para D, para que eu tivesse uma idéia, alem de estudar alguns códigos existentes do GITHUB, escritos em D ( http://forum.dlang.org/thread/ilxipdanh ... .dlang.org )

Existem algumas empresas que já estão utilizando a linguagem D em suas aplicações, e pelo que foi possível notar, os aplicativos funcionam PERFEITAMENTE, estou desenvolvendo uma simples linguagem de programação utilizando D, com uma sintaxe parecida com C# ( java ) onde é gerado um executável no formato EXE, onde tenho aqui em um repositório no GITHUB com um exemplo da LIB que estou criando para gerar o EXE, mas, escrito em C++, https://github.com/bencz/Pythonish-Compiler.

Existe também uma linguagem de programação denominada Elena ( http://sourceforge.net/projects/elenalang/ ), é uma linguagem de programação puramente orientada a objetos, onde você tem o majestoso poder de uma linguagem, basicamente simples de se ler, baseada em SmallTalk e por consequência em SIMULA... e por ai em diante, e, se alguem aqui do fórum, chegou a programar nesta histórica linguagem, SIMULA, e quer dar uma re-lembrada, segue o link de um compilador de simula para .net ( https://github.com/bencz/Simula-programming-language ).

A linguagem Elena, por sua vez, por ser praticamente e puramente orientada a objetos, tem suas grandes e devidas vantagens, e o mais, digamos assim, agradavel do compilador, é que você consegue escrever um código 'altamente' complexo e o compilador por sua vez gera um executável razoavelmente pequeno.

Por quesitos de comparação entre xHB-OO e Elena, ( não levem ao pé da letra ) vou mostrar apenas alguns pequenos exemplos da linguagem Elena
PS. ( LEMBRANDO QUE A LINGUAGEM ELENA ESTÁ EM DESENVOLVIMENTO E EM COMPLETO ESTADO DE MUDANÇAS, ELA PODE ACABAR POR SOFRER MUDANÇAS NA SINTAXE, MAS, PEQUENAS COISAS, OU SEJA, ELA TEM VERSÃO ESTAVEL, MAS ESTÁ EM DESENVOLVIMENTO AINDA. ).

Um simples Olá mundo.

Código: Selecionar todos

#symbol Program = 
[
    system'console writeLine:"Hello World!!" readChar. // wait for any key
].
Um simples programa, onde você entra com um 'texto' e depois uma frase ou letra ou oque seja que você deseja alterar, e depois, o programa mostra o resultado.

Código: Selecionar todos

// replace.l

#define system.
#define system'text.
#define extensions'io.

// --- Program ---

#symbol Program =
[
    #var aText := consoleEx write:"Enter the text:" readLine:(String new).
    #var aSearchText := consoleEx write:"Enter the phrase to be found:" readLine.  
    #var aReplaceText := consoleEx write:"Enter the phrase to replace with:" readLine.

    #var aBM := Bookmark new::aText.

    control while:[ aBM find::aSearchText ] &do:
    [
        aBM delete &type'length::aSearchText insert::aReplaceText.
    ].

    console write:"The resulting text:" writeLine:(aBM Literal).

    console readChar. // wait for any key
].
Este código compilado, para x86, gera um executável de apenas 49kb, algo realmente bem pequeno, comparado com um executável gerado pelo gcc, após ser compilado o código pelo harbour.

Neste outro exemplo, você entra como argumento do executavel, um arquivo de texto, e o programa vai ler linha por linha

Código: Selecionar todos

#define system.
#define extensions'text.

#symbol program =
[
    ('program'arguments Count == 1)?
        [  console << "Please provide the path to the file to view". #throw BreakException new. ].

    #var aFileName := 'program'arguments@1.
    
    textFileControl forEachLine:aFileName &do:printingLn.

    console readChar. // wait for any key
].
Verificando pelo ponto de vista, de programação, e leitura de código, é possivel ver que é um código MUITO E RELATIVAMENTE simples de se ler, até mesmo se conhecer um pouco de .net.

Venho a dizer, que a linguagem Elena está entre as minhas preferidas linguagens, ela tem IDE, debugger, da para compilar por linha de comando e etc.... muito boa, tenho em mente, de ainda desenvolver um compilador em Elena, mas, ainda é muito avançado para mim, mas logo chego la.

Até breve
Alexandre Bencz
Imagem
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Algumas novas linguagens de programação

Mensagem por sygecom »

http://pt.wikipedia.org/wiki/Go_(lingua ... %A7%C3%A3o)
http://corporate.canaltech.com.br/notic ... ir-o-Java/

Será !!!
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Algumas novas linguagens de programação

Mensagem por bencz »

não duvido q isso realmente acabe acontecendo...
Eu, estudava Ciência da computação no Senac-SP do Santo Amaro, acabei trancando o curso por motivos de saúde, e, quando eu estava pensando em voltar, comecei a reparar que os cursos de ciência da computação, não é mais CIÊNCIA e sim, apenas um curso de como encontrar livrarias na internet e como ler a documentação delas... o curso não mostra mais a CIÊNCIA por traz do computador, não mostra mais, o que é o computador, não estudamos nem assembly, estudamos apenas um pequeno e lixoso pseudo assembly, e mais nada, quase a turma inteira reclamando que assembly é lixo, por que não tem livraria para baixar e tem pouca documentação... então, as faculdades estão apenas criando MACACOS TREINADOS, que sabem usar e buscar livrarias prontas na internet, e quando eles inventam de ir criar uma, eles usam livrarias para criar as livrarias que eles estão "criando", ou seja, se alguem nesse meio todo, escreveu um código porco, mal pensado, mal desenvolvido em todos os quesitos, esquecendo do Assembly e de como funciona a maquina, esse 'programador', merece a medalha de ouro, por ser um imbecil, por achar que ter um papel dentro de um tubo quer dizer muita coisa... tenho amigos que se gabam por ter saido da faculdade de 'ciencia da computação' sem escrever uma unica linha de código... então, ele chega na empresa, com o canudo, a empresa fica toda maravilhada com a pessoa, e despresa aquele que deixou o curso por motivos nobres ou oque seja... e quando esse "PROGRAMADOR" vai "escrever" o código só sai problemas.....

( OBS: ESTOU FALANDO DOS CURSOS DE HOJE EM DIA...... )

Algo tipo isso aqui:

Imagem
Imagem
Responder