{"id":179,"date":"2006-03-25T22:57:21","date_gmt":"2006-03-25T11:57:21","guid":{"rendered":"http:\/\/www.somethinkodd.com\/oddthinking\/2006\/03\/25\/rational-1000-a-time-travelling-debugger-with-no-future\/"},"modified":"2006-03-25T23:45:35","modified_gmt":"2006-03-25T12:45:35","slug":"rational-1000-a-time-travelling-debugger-with-no-future","status":"publish","type":"post","link":"https:\/\/www.somethinkodd.com\/oddthinking\/2006\/03\/25\/rational-1000-a-time-travelling-debugger-with-no-future\/","title":{"rendered":"Rational 1000: A Time-Travelling Debugger with No Future"},"content":{"rendered":"<div class=\"aside\">This is one of a <a href=\"http:\/\/www.somethinkodd.com\/oddthinking\/category\/rat1000\/\">short series<\/a> of nostalgic reminiscences about the Rational 1000.<\/div>\n<p>Ada supports multi-tasking (multi-threading) and debugging that is hard. The Rational debugger did a reasonable job at helping you break into the right thread at the right time, and step through it, seeing where it went and what the values of the variables were.<\/p>\n<p>The debugger had an optional feature &#8211; the ability to step-forward <em>or backward<\/em> through the code. <\/p>\n<p>You could undo the last twenty steps to see where the thread had been, what values the variables had <em>before<\/em> they took the current variables.<\/p>\n<p>It was a great feature&#8230; in theory.<\/p>\n<p>However, in practice, the run-time environment ran so slowly as it stored all the interim state, that it was faster to restart the basic debugger (with the history option turned off) and just not step quite so far the second time.<\/p>\n<p>Nice idea, though.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Rational 1000 debugger had an optional feature &#8211; the ability to step-forward <em>or backward<\/em> through the code. <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_s2mail":"","footnotes":""},"categories":[25,42],"tags":[],"class_list":["post-179","post","type-post","status-publish","format-standard","hentry","category-insufficiently-advanced-technology","category-rat1000"],"_links":{"self":[{"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/posts\/179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/comments?post=179"}],"version-history":[{"count":0,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/posts\/179\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/media?parent=179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/categories?post=179"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/tags?post=179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}