+MrFish Posted June 24, 2015 Share Posted June 24, 2015 Tell me about it. I see a lot of them at the moment. Hahaha Quote Link to comment Share on other sites More sharing options...
snicklin Posted August 28, 2015 Share Posted August 28, 2015 How's this project coming along? I was thinking about it and it's possibilities, it has kept me awake while trying to sleep! Quote Link to comment Share on other sites More sharing options...
danwinslow Posted January 11, 2016 Share Posted January 11, 2016 Hmmm. I hope this is not abandoned. Quote Link to comment Share on other sites More sharing options...
Pab Posted June 25, 2017 Author Share Posted June 25, 2017 Hello, folks. Well, I spent the last two years fighting foreclosure and losing. We then needed to find a new house. So we found a cheap one in Western New York near my mother. Then right after we closed on the house my mother died. Anyway, I've been distracted. Update will follow. Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted June 25, 2017 Share Posted June 25, 2017 These are awful developments: my sincere sympathy. But it's good to see you back here. 4 Quote Link to comment Share on other sites More sharing options...
Pab Posted June 25, 2017 Author Share Posted June 25, 2017 So today I finally got back into the code to try and figure out what was going on. I spent the better part of a month trying to track this down while distracted with everything else before laying it aside. I was ready to gut my expression evaluation code and start over. So today I updated to the newest build of Lazarus, thinking some bugs in that compiler might be causing problems with my stepping through and tracking down the bug. I was right. Once I was able to step through the execution without it bombing back for some reason, I found the problem. All this time planning to pull out and replace the entire expression evaluation system and rewrite it? All I had to do was change: s := AnsiRightStr(st,Length(st) - LinePosition); to s := AnsiRightStr(st,Length(st) - LinePosition + 1); What happened with tebe's code is that instead of parsing and compiling "x+5" the compiler only saw "+5" and added 5 to the current value: 0. ... Months of trying to find the problem and then two years of worrying about it on top of everything else and it was STARING ME RIGHT IN THE FACE. tebe's code now shows the correct result. I need a drink before I get back into this. 8 Quote Link to comment Share on other sites More sharing options...
+Stephen Posted June 25, 2017 Share Posted June 25, 2017 Terribly sorry to hear the news. Welcome back though, and congrats on finding the bug. Quote Link to comment Share on other sites More sharing options...
Pab Posted June 25, 2017 Author Share Posted June 25, 2017 I'll try to have an updated build out this week. 2 Quote Link to comment Share on other sites More sharing options...
Pab Posted June 26, 2017 Author Share Posted June 26, 2017 Had to go back reading through this thread to figure out where I had left off. Shocked to see how close I actually was when things fell apart. 2 Quote Link to comment Share on other sites More sharing options...
Pab Posted June 26, 2017 Author Share Posted June 26, 2017 I only had to make one minor change to tebe's code. In Sparta a Print statement without an EOL will be immediately overwritten by the command prompt when control returns to DOS. I had to try it under AtariDos to make sure it was outputting and I didn't have a new bug on my hands. Anyway: here's proof of the fix. 6 Quote Link to comment Share on other sites More sharing options...
snicklin Posted June 27, 2017 Share Posted June 27, 2017 Great to hear that you are back. I am all excited again. Quote Link to comment Share on other sites More sharing options...
Pab Posted July 26, 2022 Author Share Posted July 26, 2022 Back at work on it after all these years. Finding a new problem in object procedure calling and reconciling myself to having to throw out and completely rewrite my expression evaluation to take operator precedence into account. 4 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.