BBS: Inland Empire Archive Date: 02-19-93 (08:45) Number: 395 From: QUINN TYLER JACKSON Refer#: NONE To: ZACK JONES Recvd: NO Subj: Re: nodelist.bas Conf: (2) Quik_Bas
QTJ> 'DIALECT: PDS 7.1 or VBDOS 1.0 ZJ> I'd say it's more for VB/DOS than PDS or QB. Yeah. VBDOS does that thing with STATIC and underscores. Maybe the REMs in my code should include a warning about that? QTJ> ' (My version is 10 times faster than his was.) ZJ> Big deal - it's nice that you can optimize code - but ZJ> why rub his ZJ> face in it? No rubbing intended. I took real steps in optimizing NODELIST.BAS to the point that it was ten times faster. Coridon can look at that line and say: "What did he do to make it so much faster, and how can I do that in the future with my code to achieve the same result, so that next time I post, NO ONE can make it faster?" That way, everyone learns. Now, had I not mentioned that, someone might have thought that mine was just an alternate method. They might just say: "Well, I've got Coridon's NODELIST.BAS, and Quinn's doesn't LOOK any different on the surface, so why bother downloading it and looking at the differences?" The promise of faster algorithms might be what entices them to look at both and really look at what makes one type of programming faster than another. A factor of ten is no joke, and makes people think. Then, when they see how to make a loop just a little faster, they can use the same or similar techniques in their code. Coridon gets the credit for the original NODELIST.BAS. I get the credit for the optimization. The echo reader gets the credit for learning how to omtimize their code from practical examples. That was my only intention of mentioning it that way. No toestepping intended. For example, one of the things Coridon's code did, which MANY programmers do was: DO IF SOMECONDITION THEN : : END IF LOOP Now, that loops 15,000 times let's say. If the SOMECONDITION only occurs 100 times on average, we've looked 14,900 times to many, and that increases the overall execution time. By only looking for SOMECONDITION when all other, more common situations are handled, we increase speed by many factors. Would you prefer I comment my optimizations in the future with sentences like that, so that people can see what I've done directly? QTJ> CONST ENTRY_BUFFER = 256 QTJ> CONST DATA_FIELDS = 8 ZJ> Two big gotchas! As you well know the underscore is ZJ> used as the continuation ZJ> character is QB & PDS - I had to do some chopping of ZJ> the code to get it to ZJ> work under PDS - ran fine under VB/DOS. Yeah. I love the underscore. How about I prepare special QUIK_BAS versions that use a '.' instead? QTJ> STATIC SUB FlushBuffers (FlushFileHandle, QTJ> NodeList() AS NodelistType) ZJ> |---->------> need to move this a bit to work under PDS -----> ZJ> Please remember is this the QUIK_BAS echo - code posted here needs to run ZJ> under QB45. Is that a rule? If it is, I'll obey it. ;) ZJ> Quinn, you and I are going to battle with each other way too often and I ZJ> don't like it. Do me a favor and netmail me your voice number - I'd like ZJ> to talk on my dime. I don't see why we should battle at all. I've already said that if you post rules, I'd obey them to the letter. If QB45 it is, then QB45 it will be. I see POSTIT as being a bigger issue than BASIC dialect allowed, but I agree to abide anyway. Coridon has joined the project team. If his toes hurt, he has been too put off to say so. I think he enjoys the idea of the echowide project I've proposed. Now, had there been a rule stating 'echowide projects are the jurisdiction of the mod.' I would have obeyed. My personal opinion is that the rules should deal with the more important things, however. Like POSTIT use, copyright notices. Etc. Everyone wants in on the QBCIMR project. I don't think it will hurth anyone, unless coding and cooperation hurts QUIK_BAS. I thought that's what everyone wanted. No argument with you intended. I just showed some initiative, that's all. (604) 421-3301. Best time to catch me these days.... business hours. Keep your spurs sharp and your horse well-oiled, Quinn --- Maximus/2 2.01wb * Origin: The Nibble's Roost, Richmond BC Canada 604-244-8009 (1:153/918)
Books at Amazon:
Back to BASIC: The History, Corruption, and Future of the Language
Hackers: Heroes of the Computer Revolution (including Tiny BASIC)
Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution
The Advent of the Algorithm: The Idea that Rules the World
Moths in the Machine: The Power and Perils of Programming
Mastering Visual Basic .NET