Of editors and C
Published 2004-11-27 11:18:48
DBDO continues to grow, and fortunatly I'm slowly shrinking the number of memory leaks. (As I get a better understanding of all the libraries involved.)
Most core functionality is working, query/insert/update/delete. I'm slowly fixing some of the design mistakes that I made with DB_DataObject (like being able to create update/delete statements that wiped out data. - This is fixed in DBDO, by forcing you to use the DBDO::BUILD argument if you dont want to delete anything more than the current row.)
I also decided to utilize php_error(E_WARNING......) for the debuging code. DBDO::debugLevel(1) issues all the built SQL statements as warnings. (I think this is quite a nice lightweight solution) - that also gives the line/file etc. and can give you backtraces in xdebug.
My other little toy flexyparser has had most of the parsing syntax for the flexy engine added. (I've still got to fix the style parsing stuff.). This little back burner project is still pondering if it should do the template building etc. in C or just be used as a parsing library.... or it could be really clever and build zend opcodes :)
But what caught my eye this week was Harry's post about IDE's, Having written one myself, mainly due to fustration with the existing alternatives on Linux. I agreed alot of the points he made, and some of the commenters added.
If the ability to program in a language depends on the developement tool. (C# and Java come to mind) Then reading code without the editor becomes horiffic.... I wonder if I'm in the group that regard source code as an expression of intent, and if it cant be read, it's very difficult to read intent.
Anyway, I noticed a couple of weeks the sysadmin at one of my clients using gphpedit, I was initially pretty impressed. (I guess like most people are with Zend Dev Studio, until they try it on a slower machine..).
gphpedit has a very nice features set, basically it's very similar to phpmole, but in C with alot of gnome libraries. It had a very nice class browser and syntax highlighting etc. using the scintilla widget, very much like phpmole. It was only until I had a browse round the soucecode in CVS, that I started pondering some of the mistakes.
Most core functionality is working, query/insert/update/delete. I'm slowly fixing some of the design mistakes that I made with DB_DataObject (like being able to create update/delete statements that wiped out data. - This is fixed in DBDO, by forcing you to use the DBDO::BUILD argument if you dont want to delete anything more than the current row.)
I also decided to utilize php_error(E_WARNING......) for the debuging code. DBDO::debugLevel(1) issues all the built SQL statements as warnings. (I think this is quite a nice lightweight solution) - that also gives the line/file etc. and can give you backtraces in xdebug.
My other little toy flexyparser has had most of the parsing syntax for the flexy engine added. (I've still got to fix the style parsing stuff.). This little back burner project is still pondering if it should do the template building etc. in C or just be used as a parsing library.... or it could be really clever and build zend opcodes :)
But what caught my eye this week was Harry's post about IDE's, Having written one myself, mainly due to fustration with the existing alternatives on Linux. I agreed alot of the points he made, and some of the commenters added.
If the ability to program in a language depends on the developement tool. (C# and Java come to mind) Then reading code without the editor becomes horiffic.... I wonder if I'm in the group that regard source code as an expression of intent, and if it cant be read, it's very difficult to read intent.
Anyway, I noticed a couple of weeks the sysadmin at one of my clients using gphpedit, I was initially pretty impressed. (I guess like most people are with Zend Dev Studio, until they try it on a slower machine..).
gphpedit has a very nice features set, basically it's very similar to phpmole, but in C with alot of gnome libraries. It had a very nice class browser and syntax highlighting etc. using the scintilla widget, very much like phpmole. It was only until I had a browse round the soucecode in CVS, that I started pondering some of the mistakes.
- PHP parsing for classes was done by a hand coded lexer, which looks for class/function etc. This is what I originally did with phpmole (it was a mistake then, and given the fact that gphpedit is in C) it is just as bad now. (I ponder if using the lex/bison code from Zend/* would not be more efficent, either that or using phpembed, to actually use the library might be better..
- Project (bookmark) based browsing was missing, I found this to be invaluable when I designed it into phpmole. Although the interface could probably do with changing. The principle of navigating fromĀ root directly to all the projects you working on works really well. (actually on unix I should really have used softlinks - but I didnt have vfs then...)
- Class method hinting. This is something that is near impossible in php (but would be quite usefull) - yes Zend Dev Studio does it, but in reality alot of time it's guesswork. (although it gets alot easier with PHP5 argument hints.). it also tends to slow down the application alot (especially on my pathetic P3/1000), making the program pause just when you really in the flow of things.
Mentioned By:
google.com : november (76 referals)
google.com : april (38 referals)
google.com : scintilla php (19 referals)
pixelated-dreams.com : Fractured Realities: Using PDO... The reality (14 referals)
google.com : php wxwidgets (11 referals)
google.com : scintilla php editor (9 referals)
pixelated-dreams.com : Fractured Realities: Comment on Using PDO... The reality (6 referals)
google.com : gphpedit xdebug (6 referals)
google.com : gnome php editor (4 referals)
google.com : flexyparser (3 referals)
google.com : php opcodes (3 referals)
google.com : php wxwidget (3 referals)
google.com : soucecode (3 referals)
google.com : soucecode c (3 referals)
google.com : soucecode php (3 referals)
google.com : code of editors in C (2 referals)
google.com : Editors for C in Linux (2 referals)
google.com : gnome php ide (2 referals)
google.com : making a php program pause (2 referals)
google.com : php editors linux (2 referals)
google.com : november (76 referals)
google.com : april (38 referals)
google.com : scintilla php (19 referals)
pixelated-dreams.com : Fractured Realities: Using PDO... The reality (14 referals)
google.com : php wxwidgets (11 referals)
google.com : scintilla php editor (9 referals)
pixelated-dreams.com : Fractured Realities: Comment on Using PDO... The reality (6 referals)
google.com : gphpedit xdebug (6 referals)
google.com : gnome php editor (4 referals)
google.com : flexyparser (3 referals)
google.com : php opcodes (3 referals)
google.com : php wxwidget (3 referals)
google.com : soucecode (3 referals)
google.com : soucecode c (3 referals)
google.com : soucecode php (3 referals)
google.com : code of editors in C (2 referals)
google.com : Editors for C in Linux (2 referals)
google.com : gnome php ide (2 referals)
google.com : making a php program pause (2 referals)
google.com : php editors linux (2 referals)
Follow us
-
- Some thoughts on the language server and its usefulness in the roobuilder
- Roo Builder for Gtk4 moving forward
- Clustered Web Applications - Mysql and File replication
- GitLive - Branching - Merging
- PDO_DataObject Released
- PDO_DataObject is under way
- Mass email Marketing and anti-spam - some of the how-to..
- Hydra - Recruitment done right
Blog Latest
-
Twitter - @Roojs