PLEX86  x86- Virtual Machine (VM) Program
 CVS  |  Mailing List  |  Download  |  Newsgroups

Greatest Software Ever Written 4260


Your Ad Here

Your Ad Here

Greatest Software Ever Written 4261
the abstraction had code blocks that were sequential sequence of instructions ... a code block could be bracketed by...

in the early 70s ... i wrote a pli program that analyzed buttembler listing ... abstracting code flow, register & variable useage (including looking for code paths where registers were used w-o setting as well as dead code) ... and then generating higher-level psuedo code.

so buttembler is full of conditional branches ... and with a little analysis can be turned into higher level constructs, if-then-else, do-while, do-until, computed-case, etc (as opposed to emulated GOTOs).

the problem for some highly optimized kernel routines (implemented in buttembler) ... the original GOTO-flavor (with conditional branches) could be significantly more understandable than some of the abstracted if-then-else, etc representations ... in one or two cases a relatively straight forward routine with a couple hundred machine instructions would translate into if-then-else infrastructure nested 20 deep. I finally had to put in a limit that would limit nested structures to no more than 10-15 deep.

part of the issue with GOTOs ... that i later tried to capture with my dump analyzer

was reconstructing code flow leading up to a fault (sort of program flow reconstructure or forensics). branch-goto implementations frequently would result in a lot of ambiquity as to exact end flow arriving at a fault location. things like if-then-else construction would somewhat explicitly identify dependencies involved in particular end paths ... and frequently helps in program comprehension.

however, i was surprised at the number of instances involving highly optimized buttembler code ... where the if-then-else forms actually decreased comprehension (and the branch-goto forms were actually much easier to understand).

since then i've had a number of occasions, in non-buttembler, highly optimized code sections, to use GOTO's as the most straight-forward implementation and ease of understanding.



Your Ad Here

List | Previous | Next

Greatest Software Ever Written 4261

Alt Folklore Computers from Newsgroups

The #1 Usenet Provider on the Internet

middle east was: Greatest Software