Compartilhe
avatar
Veterano
Veterano
Mensagens : 1297
Reputação : 17
Desde : 10/01/2014
Localização : Sarandi - PR
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Seg 03 Nov 2014, 23:48
Vocês são heróis mesmo, não teria saco pra isso ;_;

______________________________
Spoiler:
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Ter 04 Nov 2014, 12:30
@LINK/2012 escreveu:isso ta parecendo mais um dialeto de Haskell do que uma linguagem nova
Não é o objetivo ser uma "nova linguagem pbppaprapra", é só pra ensinar de maneira fácil, não mudou-se o foco.
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sab 08 Nov 2014, 15:10
As lambdas eram definidas por chaves. Agora são definidas por um jeito mais fácil de se compreender:
Código:
lam a b -> a + b
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Qui 13 Nov 2014, 16:04
Terminei.
https://github.com/defectiveturrent/climbu/releases/tag/1.0
Preciso de um troféu.

edit: WTFFFF? Tá todo bugado essa porra. Esperem, não façam nada.
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21905
Reputação : 678
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: climbu - Uma linguagem simples

em Qui 13 Nov 2014, 19:55
denilson gostoso

______________________________

avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sex 14 Nov 2014, 13:35
:)


Não tava bugado, era só eu, com um código de teste mal feito.
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Seg 17 Nov 2014, 16:30
Tou fazendo um interpretador pra isso aqui, acho bem melhor que converter para C++ e compilar.

PS: eu tou criando um sistema ala assembly pra interpretar, se alguém tiver uma ideia melhor aí, me avisem (tou fazendo em haskell).
Código:
a + (7 * 2)
 ==
[P0,BL [A0,C0 "a"],BL [BL [P2,BL [A1,C0 "7"],BL [A1,C0 "2"]]]]
avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Mensagens : 318
Reputação : 14
Desde : 01/02/2014
Idade : 16
Localização : Belém/PA
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Ter 18 Nov 2014, 13:38

;-;
Baixei a versão Windows corretamente...

______________________________


CONFIG. PC:

SO: Windows 7 64 bits
Placa-mãe: ASUS H61M-A/BR
CPU: Intel Core i3-2120 @ 3.30GHz
GPU: Intel HD Graphics 2000
RAM: Kingston 4GB DDR3
HD: 250GB



Assinatura e avatar by Jacobi -- PSN ID: GearHFB4
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Ter 18 Nov 2014, 13:50
Eu não vou compilar pra sistema 32 nem fodendo.

Faça assim: Baixe o ghc para windows 32 e compile usando essa linha:
Código:
ghc -o climbu -XParallelListComp --make Uc Expressions Parser Translator -odir tmp/ -hidir tmp/
Tenha certeza de que você esteja dentro da pasta src para poder compilar.
E é claro, a source tá lá no github.

edit:
Atualizei ele.
https://github.com/defectiveturrent/climbu/releases/tag/1.1
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sex 21 Nov 2014, 14:09
Pronto, todos os acertos foram feitos:
https://github.com/defectiveturrent/climbu/releases/tag/1.2

Agora que o climbu tem todos os recursos básicos, eu vou sentar, pesquisar e pensar em alguns recursos muito picudos que não existem por aí em abundância.
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sab 22 Nov 2014, 19:00
Blz, oh, fiz umas paradas:

1 - As reticências (...) são usadas para declarar algo ainda não definido, como, por exemplo, se você quer criar uma função, mas ainda não implementou algumas partes dela, você pode deixar as reticências para dizer ao compilador que a função pode rodar, mas aquela parte não está implementada ainda.
Código:
def strange x = if x == 69 then "I'm gonna ur home" else ...
Código:
def square x = ...

Ao chamá-las, quando a parte não implementada for acessada, a função mostrará esta saída:
Not yet implemented.

2 - Para concatenar strings literais, você pode simplesmente escrevê-las assim:
Código:
"heeeeeeey " "where are we going to?!?"
Sem restrições de formatação:
Código:
"heeeey "
"where are we gonna?!?"

Exceções para quando houver uma chamada de função:
Código:
foo "text" "a man"
Não há concatenação.

OBS: Lembrando que ambos estão em implementação ainda. Ainda não está pronto, ok?
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 7857
Reputação : 347
Desde : 03/05/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sab 22 Nov 2014, 19:57
'mostrar saida'
isso é um trabalho pra uma exception pq é uma coisa que nunca deve acontecer, se aconteceu é pq algo ta errado e continuar o programa é um atentado, certo?

Quanto ao segundo rapaz, me parece contra intuitivo gramaticalmente funcionar em contexto livro mas não em chamadas de função (i.e. não deveria funcionar em contexto livre tb)

______________________________
"Give a man a game engine and he delivers a game. Teach a man to make a game engine and he never delivers anything."

avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18911
Reputação : 346
Desde : 04/05/2012
Idade : 20
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com

Re: climbu - Uma linguagem simples

em Sab 22 Nov 2014, 20:58
Pode ser útil em um source grande com muita coisa para implementar e ainda com coisa faltando querer testar :)


Última edição por Fabio em Sab 22 Nov 2014, 20:58, editado 1 vez(es)

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sab 22 Nov 2014, 20:58
@LINK/2012 escreveu:'mostrar saida'
isso é um trabalho pra uma exception pq é uma coisa que nunca deve acontecer, se aconteceu é pq algo ta errado e continuar o programa é um atentado, certo?
Certo, é exatamente isso.

@LINK/2012 escreveu:Quanto ao segundo rapaz, me  parece contra intuitivo gramaticalmente funcionar em contexto livro mas não em chamadas de função (i.e. não deveria funcionar em contexto livre tb)
Não, na verdade ele funciona em chamada de funções se você usar parênteses. Como:
Código:
foo ("hello " "world" "!") 42
Eu achei isso muito bom quando precisar de fazer um "textão", aí tu pode simplesmente fazer ele por extenso, todo formatadinho bonitinho.
Código:
"I'm a text.\n"
"I'll get pregnant.\n"
"Do you like to get pregnant?"


Aliás, acabei de terminar o todo complexo sistema de adivinhar o tipo de tudo. Agora tá tudo lundaom.
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Ter 25 Nov 2014, 15:16
Pronto, tá lá a parada.


Olhem, eu mudei algumas funções, como print e etc, também adicionei outras.

Print e afins vão printar os dados como eles são. Se printar uma string literal, as aspas também vão ser printadas.
Puts e putc servem só para printar strings e caracteres (sem os seus aspas ou ápices).

Também resolvi um problema com listas literais. Isso não estava funcionando:
Código:
foo [a..b]
Bom, agora está.
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sex 28 Nov 2014, 13:37
Vou fazer um tradutor do climbu pra lua, blsinha? Vai ficar mais daora e tal... É.
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sex 28 Nov 2014, 17:30
Puta que pariu. Eu fiquei iludido pela suposta beleza de lua, mas, na moral, essa porra dá muito probleminha e errinho, vá pra merda, não consigo fazer essa porra ficar limpa.
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Sex 05 Dez 2014, 13:12
Novo release:
https://github.com/thelostt/climbu/releases/tag/v1%2C4

Peguei emprestado os recursos de matemática de Julia :)

Exemplo:
Código:
var x = 4;
print 2x; // prints 8
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18911
Reputação : 346
Desde : 04/05/2012
Idade : 20
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com

Re: climbu - Uma linguagem simples

em Sab 06 Dez 2014, 18:25
Isso funciona com multiplicação distributiva também?

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Dom 07 Dez 2014, 15:20
Código:
var x = 7;
var y = 2;
print ((4 - 2x) (y + 5));
É claro que os parênteses dão eval e, depois, multiplicados. Vou tentar adicionar um sistema de unidade de medida, assim posso desenvolver a distributiva.

edit:
Vou fazer o interpretador e compilador final do climbu com lua mesmo. Vou usá-lo como "bytecode" apenas para chamar as funções dentro da vm.
Sim, só  vou fazer function calls em lua.
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Ter 16 Dez 2014, 13:48
Fiz uma paradinha de leve aqui:
Código:
square(x) = ... ;

main() = print do try (square 5) in "Success";

Tá em teste ainda. Estou pensando na melhor maneira de se aplicar o try etc.

Ah sim, a saída desse código seria uma exception "Not yet implemented".
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Qui 18 Dez 2014, 14:04
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Qui 01 Jan 2015, 20:19
Mudei a porra aqui.

Agora é definitivo. Aqui vai a gramática de funções:
Código:
add(a, b) = a + b; // function

add 1 2; // calling function

just() = print "Hey!"; // function

just! // calling function without arguments

E eu tou fazendo o interpretador:
avatar
Veterano
Veterano
Mensagens : 7237
Reputação : 64
Desde : 29/12/2012
Idade : 17
Localização : Cidade - Estado
Link : /2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Qui 01 Jan 2015, 20:36
Eu normalmente só abro esse tópico pra marcar como lido, mas hoje me veio uma coisa na cabeça

Pra que vc vai usar essa linguagem? Vai deixar ela largada depois q terminar ou oq? @_@

______________________________
Assinatura por Jacobi

avatar
Programador - Avançado
Programador - Avançado
Mensagens : 10300
Reputação : 264
Desde : 08/11/2012
Ver perfil do usuário

Re: climbu - Uma linguagem simples

em Qui 01 Jan 2015, 20:57
Serve só para ensinar pessoas a programar.
Conteúdo patrocinado

Re: climbu - Uma linguagem simples

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum