Page 1 of 3
Do you ever/always/never finish programs?
Posted: Fri Apr 22, 2005 4:18 pm
by Schlowski
As I stated in another thread I nearly never manage to finish the programs I start to write.
For example some day this idea struck my brain: 'It would be nice to have a compiler for the VIC'. This lead to reading some books and internet sources about compiler generation. Then some rudimentary programs will be written on the PC for testing if and how I can write my own compiler. I ended with a compiler able to understand a Pascal-like language, emitting some sort of p-code which is partly converted to 6502 assembly. And then I lost interest, because the part of finishing all possible output conversion to 6502 asm and building some basic library for input and output and stringhandling etc. seemed way too boring for me to keep interest alive...
And this is how nearly all my projects end: in a state between 10 and 80% finished, the interesting parts solved and then put aside.
How about you other enthusiasts, do you pick up a project and then do not stop until you finished it? Or do you have similar problem like me to finish something?
Posted: Fri Apr 22, 2005 6:01 pm
by Leeeeee
Finish programs? I don't think this is possible, there's always something more you could do.
Like my Vic 20 ethernet drivers, all I wanted to do was prove it could work and the easiest way to do that was implement ICMP echo and ARP. But just 'ping' is boring so I added TCP/IP and basic HTML handling which needed a small filesystem and some web pages.
This worked but seemed a bit slow (due to TCP-IP re-transmission timeouts and not the VIc only being 8 bit/1MHz) so I added multithreading to the TCP handler.
Is it done, yes. Is it finished, not really as I want to add WINS, support for packet re-assembly and re-transmission, HTTP HEAD, remote config, HTML scripting.
Nope, I never finish programs.
Lee.
Posted: Fri Apr 22, 2005 6:04 pm
by 6502dude
I have a number of hobbies and have got a lot of projects in various stage of completion. Got lots of ideas, but little spare time.
Always seems my attention gets diverted before I fini
Posted: Fri Apr 22, 2005 7:25 pm
by Jeff-20
I always finish what I start, bitches.
Posted: Sat Apr 23, 2005 5:07 am
by vic user
i have disks full of half baked programs, and pages and pages of code and yet again half baked ideas.
chris
Posted: Sat Apr 23, 2005 7:13 am
by Boray
Most of the time I finnish my programs. Maybe because I know my own limits and how complex things can get before I loose interest. Too complex things makes a threshold so that I hesitate to start with it and that's why I can finnish my programs. I don't want to work half a year on a vic program sort of! I usually work out the whole idea more or less in my head before starting to program. The result is finnished programs, but not very advanced ones. The most fun part about programming is to see your program finnished, so I can't understand how you keep on trying - without any reward?
/Anders
Posted: Sat Apr 23, 2005 9:51 am
by Schlowski
I'm not interested in finished programs, but in solving little problems or finding some tricky solutions to special problems.
Fiddling around some hours trying to make a subroutine faster or shorter (or both!) and gaining some cycles or bytes is quite rewarding for me.
Creating user interfaces and such things are just boring for me (maybe because I do this for a living...)
Posted: Sat Apr 23, 2005 3:54 pm
by carlsson
Schlowski, you remind me of another German with a difficult last name, namely Thomas Jentzsch (Atari 2600) who has mentioned that the most fun part of programming is to help out making a kernal, the driver loop for a game. The other parts, graphics and other presentation can someone else do.
Personally, I seldom start a project - due to lazyness and the threshold Boray mentions - and even more seldom finish it. The past MiniGame compos and the odd demo have been my excuse to wrap it up, but I also have found that since starting to work full time, I get even less time, energy and motivation to be creative on my free time.
Then the question what is a finished program. Most of the time there is always room for improvement, bug fixing and optimization, but if it lives up to my initial specs and I'm satisfied vs the amount of work and time spent, I would call something finished. If the situation later requires an update, it still is possible (see all those service packs that ship with big software you thought would be finished long ago).
Posted: Sat Apr 23, 2005 4:55 pm
by Schlowski
With finished I only meant it can be used as intended, i.e has input, output and functionality inbetween

I agree that no program is ever really finished...
Hehe, maybe it's a german speciality to only do the interesting parts

Posted: Mon Apr 25, 2005 7:44 am
by Schema
I try to be fairly disciplined with versions. i.e. I decide "this program (or project) will have only such-and-such features for this version". Then I stop and take a break when that version is done.
That leaves the door open to more tinkering and enhancements for future versions, and I feel like I've finished something

Posted: Mon Apr 25, 2005 8:10 am
by Schlowski
Talking about all my unfinished projects, I dig out my old cross-assembler and made some enhancements I wanted to do since a year or so.
Now I can edit sources in UltraEdit and with a click on a user tool I can assemble and put a binary file into my mapped drive for Vice.
I was thinking about doing autostart with this file, but I dislike to allways start and end Vice when testing, so I decided to LOAD my file manually.
Now I have to implement macros into the assembler, but I'm not sure if this is interesting enough for me... I once made this for a prior version of a cross assembler and had no really use for macros. My routines are just too short and too simple to have the need for macros

Posted: Tue Apr 26, 2005 10:29 am
by aneurysm
Jeff-20 wrote:I always finish what I start, bitches.
hahahaha!!!
What I try to do is build a minimally functional application and then when I get around to it fix bugs and add more features. Right now I have been really working on the back end for my website,
http://firteen.com. Been getting decent with the PHP and about to really dig into MySQL. And I don't really think there is any end in sight for that project. If I wasn't so into that I think I'd be programming the VIC alot more.
But it's true - I don't finish much. But I can often load up my projects and show off what I've got.
Posted: Tue Apr 26, 2005 6:59 pm
by Jeff-20
I always upgrade an adjust programs, but eventually I call it done and never return.
Schlowski: Compiler for 6502
Posted: Wed Jun 15, 2005 6:14 am
by hackz0id
I'm so glad I'm not the only one thinking about compilers for 6502.
I've been reading about compilers / compiler generators / lexers / parsers etc. for quite a while now and I've been doing a lot of "homework" on that subject for quite a while.
I've written quite a cool lexer/parser in FreePascal (
www.freepascal.org) but not got to the AST / codegeneration part yet.
I've been looking a lot on cc65 (
www.cc65.org) also, and it's quite instresting, but I personally don't think that the C language ( at least according to ANSI '99 ) is the answer for a 6502 compiler.
I've been thinking about a 8-bit oriented language that is focused on data structures and movements, but with very tightly defined flows. I'd like to have it tailor-made for optimizing datamoves using ZP and the pre/post-indexed addressingmodes of the 6502.
Anybody intrested in discussing possibilities and projects are sincerily welcome. This is my favorite programming subject
//MH
Posted: Wed Jun 15, 2005 6:40 am
by carlsson
Although I haven't tried it myself, maybe Slang is something for you? The native compiler requires a C64 with SuperCPU, but there is a cross development environment which may work. The language however seems quite C64 centered at the moment, but it should be possible to adopt it to VIC-20 memory map too? There is some kind of custom library which sits on top of Basic and Kernel ROM, but I believe it is only required for native development (SuperCPU mode).
http://www.ffd2.com/fridge/slang/index.html