[Dtone-compiler]A slight turn in mission
Status: Alpha
Brought to you by:
anshil
From: Axel K. <ax...@dt...> - 2001-11-10 09:39:07
|
Well in the last time I was first a little unsatisfied in how things evolve, and then somewhat uncertain which way to move on. The last weeks (and even months) I've played with my thoughts to separate the compiler, tree management and the backend into three applications speaking via rpc with each other. After some time pondering about the consequences I've now definitly decided to go for it. With this new way also a change in the long sight mission where I want this project to evolve to, which I'll try to outline: Image programming on a complete new paradigm. Currently we're writing text files in a text editor (most of them highlighting code, or try to ease development with code insight). Then a whole set of text files is parsed and thrown through a compiler. Okay thats the state of the art way. Now image another way of programming. The whole source of a project is not text file based, but source tree based, stored on your machine (or possibly even a remote) inside a running a "source server". You connect to this source server with a GUI application displaying the source the right the way it is. No need to parse it to do syntax highlighting, no need to create jump-tag databases, etc. Now this GUI application could even show the source in a way similar to a file explorer. You could 'collapse' the whole project and 'expand' the functions your interested it. Next step is beside viewing you can modify the tree right from within this application, you create new constructs with a few clicks, create function calls via drag&drop, and so on ... I hope I could express what I'm dreaming about, now toward the more concrete plans how I plan to archieve this goal: * First as basic language: as language to build this upon C(++) in unmodified form is unfortunately unsuitable as the C preprecessor completly crosses the plan storing the source tree directly in a server. So what to use? Well easy answer: the 'better-than-C-C-like-language' I've been hacking on since beginning of this year: dtone. * Next step (partially done already) is to modify rpcgen to write dtone compatible output. * Then write the source server, the choosen language for this will be dtone itself, since we need good object orientation there. * Rewrite the dtone parser to operate with the source server. This will be done in classical C, so we can use bison unmodified (or any other parser generator). * Write a C generating backend reading it's input data from the source server (srcserv). * Here at this point we should be far enough to be able to scrap the current dtone 0 compiler implementation. * Write a documenting backend for srcserv. * Write a compile cache and archiving system for srcserv by storing the source tree on disk. Most probably the XML format will be ideal for this. This XML tree represenation could be stored for projects on CVS like conventional text source are today. * Write a GUI application showing the contents of srcserv. * Write a GUI application beeing able to directly modify the source server contents. * +finished+ - Axel -- |D) http://www.dtone.org |