Jump to content
nunopicado

IDE para FreePascal (made in P@P)

Recommended Posts

thoga31

I'm in, até me pode a ajudar a ter o tempo "ocupado". Yeah, eu tenho-o ocupado, mas se tiver uma 2ª actividade paralela fico mais "alerta" :D

Claro que não poderia despender grande tempo para isto, e a primeira coisa que eu teria de fazer era um upgrade aos meus conhecimentos, uma vez que só programo para consola.

Quanto ao IDE, podias mostrar numa imagem ou duas o que já tens, e veríamos se se podia partir dele (suspeito que sim). Programaste-o em Delphi, ou Lazarus?

E esquecíamos o Dev-Pascal, remendar é pior do que construir de raiz (ou construir a partir do teu).

Dever-se-ia olhar para as funcionalidade que mais apreciamos num IDE, mas sem dúvida que o Pedro seria o nosso melhor guia, uma vez que ele usa o Vim e usou o Emacs, e ambos são editores de texto poderosíssimos.

Uma coisa útil que posso já adiantar: uma calculadora decente e com umas funcionalidades de interesse. ;)

  • Vote 2

Knowledge is free!

Share this post


Link to post
Share on other sites
nunopicado

Para a calculadora podia usar-se o meu ExpressionParser. Com um GUI capaz, pode ser interessante.

Quanto às imagens, faço melhor:

https://www.dropbox.com/s/xdqblyn49p68exs/PascalPT.exe

Foi em Delphi, mas para podermos mexer em equipa, possivelmente tinha de ser convertido para Lazarus.

Edited by nunopicado

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
thoga31

Posso ser sincero? :D

Não aprecio o código do teu parser, acho-o muito "ruidoso" no que diz respeito a código. Eu também não fiz um código brilhante, claro. Mas acho que o devíamos simplificar para ser de melhor e mais fácil manutenção.

Pois, eu não vou comprar o Delphi para isto, o máximo de preço onde posso chegar é aos 0,00€ :P

Portanto, sim, teria de ser o Lazarus, parece-me. Não conheço mais opções.

Quem quer mesmo avançar com isto? Não gostaria de ver aqui ideias debatidas para no final ficar parado.

Devíamos também depois de pensar em formas eficientes de comunicação privada, nunca se sabe quem nos está a "ouvir", e as ideias voam.


Knowledge is free!

Share this post


Link to post
Share on other sites
eatg75

(...)

Dever-se-ia olhar para as funcionalidade que mais apreciamos num IDE, mas sem dúvida que o Pedro seria o nosso melhor guia, uma vez que ele usa o Vim e usou o Emacs, e ambos são editores de texto poderosíssimos.

Isso seria bastante fixe pois cativava-se o pessoal que e amante do Vim e do Emacs, e sempre bom ver iniciativas

destas aqui no forum, Pascal por acaso esta na minha lista de linguagens de programacao que pretendo aprender,

se prentender escrever o IDE em Pascal nao me importo nada em aprende-lo so para contribuir para o projecto.

Boa iniciativa pesoal +1.


Victarion seized the dusky woman by the wrist and pulled her to him.

Victarion - She will do it. Go pray to your red god. Light your fire, and tell me what you see.

Moqorro's dark eyes seemed to shine.

Moqorro - I see dragons.

Share this post


Link to post
Share on other sites
nunopicado

Posso ser sincero? :D

O Quêêêêê????? Não aprecias o meu código??????

Acaba-se já com isto tudo!!!!

Ou não, estás à vontade! :P

Não me afecta nada, até porque como sabes, aquilo foi um "só para ver se dá".

O principal mesmo, a meu ver, seria:

- Suporte ao FPC - tem de ter "opções" suficientes para ser evolutivo. Se o FPC de repente se lembrar de mudar os comandos disto ou daquilo, tem de dar para ajustar.

- Sintax Highlighter, sem dúvida

- Code Folding seria interessante, mas menos urgente

- AutoComplete também era interessante

- Suporte a um debugger, se possível com com execução passo a passo e watches

- Suporte a projectos (um ficheiro que "reuna" os vários ficheiros que compõem o programa, entre programa e units)

- Code Snippets

- Pesquisa directa de funções e procedimentos

Mais sugestões...


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
thoga31

Hamm... podemos debater isto em privado? :D

NNão confio na Internet "pública" para estas coisas, uma vez que tenho ideias a saltarem-me à mente xD


Knowledge is free!

Share this post


Link to post
Share on other sites
passarito

Boas,

Não conhecia o Lazarus e então fui ver como era. É impressão minha ou aquilo cheira-me ao 1º Pascal para windows? Corrijam-me se estiver errado!

Quanto ao IDE do Nuno, acho que o caminho pode ser esse, uma das hipóteses seria implementar em windows o mesmo que há em DOS para o FPC e BP.

Quanto ao compilador, isso seria fácil de integrar?

- Suporte a um debugger, se possível com com execução passo a passo e watches

Pode haver muitos pontos interessantes, mas este, quanto amim, é dos mais importantes!

Share this post


Link to post
Share on other sites
thoga31

Eu não sou um guru da programação, pelo que a questão do debugger é chinesa para mim.

De qualquer das formas, não sei como é o Delphi a fazer debug, que eu só conheço o Visual Studio, mas podiamo-nos inspirar nestes dois senhores :D


Knowledge is free!

Share this post


Link to post
Share on other sites
passarito

O Debug, quanto a mim, é uma da mais preciosas ferramentas na programação

No Borland Pascal 7 a opção do Debug tem as seguintes ferramentas: Breakpoints, Call Stack, Register, Watch, Output, User Screen, Evaluate/modify, Add watch e Add breakpoint

Não quero dizer que isto é o melhor, provavelmente outros programas terão outras opções igualmente ou mais interessantes!

Share this post


Link to post
Share on other sites
thoga31

Eu posso ficar com outras componentes do IDE, e vocês ensinam-me a fazer isso... Que tal? :D


Knowledge is free!

Share this post


Link to post
Share on other sites
nunopicado

Passarito: O Lazarus está mais para Delphi gratuito... Mas é por aí.

A base continua a ser o Freepascal, mas tem tanta coisa que assusta os iniciantes.

Integrar o compilador é relativamente simples, no meu já está feito, embora hardcoded.

Thoga, no VisualStudio não sei como é, mas no Delphi, o debugger é a perfeição na terra... ;) Só podemos sonhar com algo como aquilo, pelo que não me proponho a tanto.

Mas o básico de um debugger sim.


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
I-NOZex

Nao passo de um amadorzeco, mas se tiverem com disponibilidade,e eu tambem tiver defacto tempo para integrar na equipa, contem comigo.

Embora nos ultimos temnos nao tenha desenvolvido em Delphi, isto é como andar de bicicleta :D

Mesmo que seja lazarus, nao muda assim tanto, nao tenho problemas quanto a isso.

Mas tambem sou da opinião que se deve fazer algo de raiz... pode-se reaproveitar codigo da IDE do nuno ofc, mas refazer o devpascal nao parece que seja grande ideia...

Edited by I-NOZex
  • Vote 1

B2R » Beat2Revolution v3.0b | Regista e divulga-nos

beat2revolution.net

Share this post


Link to post
Share on other sites
pwseo

Boa tarde,

Penso que o mais importante é mesmo a integração com o debugger... Nunca fiz nenhum debugger, pelo que não consigo sequer imaginar que tipo de código é necessário para correr um programa de forma supervisionada e poder interrompê-lo à nossa vontade. Neste aspecto, parece-me que o melhor é retirar inspiração do DevPascal (que suporta o GDB).

Uma vez que o Free Pascal actual suporta o formato utilizado pelo GDB, parece-me muito boa ideia fazermos uso desta compatibilidade (existem imensos wrappers para o gdb nos quais podemos inspirar-nos).

Um bom debugger, em conjunto com uma boa apresentação dos erros do Free Pascal... isso sim parece-me essencial (e talvez difícil de fazer).

Tudo o resto acaba por ser relativamente simples. Em termos de edição de texto basta-nos utilizar os componentes TSynEdit e teremos um editor perfeitamente funcional (não é nenhum vim ou emacs, mas também não é isso que pretendemos).

Code folding, autocomplete e assim são menos prioritários (até porque implicam a construção de um parser para a linguagem).

Fazer a ligação entre fpc e o IDE é também simples, basta-nos executar o compilador com as respectivas flags.

  • Vote 2

Share this post


Link to post
Share on other sites
nunopicado

O TSynEdit já tem o CodeFolding e o Highlighter, pelo que é a base do editor.

Aliás, é o componente usado pelo próprio Lazarus.

O uso do GDB, ou outro semelhante é a opção a seguir também. Fazer um debugger de raíz é utopia, pelo menos para mim.

O compilador é simples. Não sei usar pipes em Lazarus (desconheço se é igual a Delphi), mas mesmo que não fosse possível (que é, quase de certeza), usava-se um ficheiro temporário para as mensagens do compilador.

Eu comecei aqui um esboço em Lazarus. O meu não é convertível em Lazarus sem o passar a pente fino, pelo que é preferível começar um mesmo de raíz, aproveitando do que eu já tinha só o código que interesse (ligação ao compilador, etc).

Meti-lhe o TSynEdit, com highlighter para FPC.

Há lá um componente de AutoComplete que tenho de estudar se funciona para isto ou não.

captur10.jpg

Ideias para o interface?

Edited by nunopicado
  • Vote 1

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
GRSa

Boa tarde.

Acho uma iniciativa espetacular e tenho grande interesse em contribuir, e mesmo fazer parte da equipe.

Além das citadas, tenho as seguintes sugestões:

  • Suporte a auto-indentação (com suporte a formatos personalizáveis);
  • Opção de escolher o compilador (traria uma considerável versatilidade);
  • Suporte a multilíngue;

Edited by GRSa

Share this post


Link to post
Share on other sites
nunopicado

Auto-indentação o SynEdit já suporta, pelo que já está feito.

Ser personalizável, tem de se ver. Não vi se suporta ou não.


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
thoga31

Gente com espírito é o que é preciso. :)

Eu tenho uma porrada de ideias relativamente simples mas muito úteis e que poderiam distinguir este IDE dos outros em coisas mais suis generis. Mas não as pretendo dizer aqui em público.

  • Opção de escolher o compilador (traria uma considerável versatilidade);

Que outro compilador?

  • Suporte a multilíngue;

Inglês deverá ser a nossa primeira linguagem, em conjunto com Português. Isto é inegável.


Knowledge is free!

Share this post


Link to post
Share on other sites
GRSa

Pode ser fantasia, mas para mim seria de grande valia poder visualizar o código como um diagrama. Seria espetacular. Existe algo parecido em alguma ferramenta hoje?

Share this post


Link to post
Share on other sites
thoga31

Isso implicaria também um parser da linguagem. Fica registada a ideia, mas a sua concepção é, de longe e a meu ver, das mais difíceis que pode haver.

Vamos descer à terra e centrar nas ideias chave para um IDE decente e não um IDE marciano. :D

Edited by thoga31

Knowledge is free!

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.