R
Rick C. Hodgin
And that from someone who says it's too hard to read a file of fixed
strings!
Where did I say that, Dr Nick?
Best regards,
Rick C. Hodgin
And that from someone who says it's too hard to read a file of fixed
strings!
I will have my own debugger, called Debi, which works with my ABI, the
compiler architecture and design, and is able to handle edit-and-continue
as I have designed it.
The debugger will also be able to target the three
platforms I intend to support: x86, ARM, and my VVM's assembly language,
codenamed OBED.
I laughed out loud, turned off my computer, and went on a three day drive
to ultimately touch the waters of Lake Michigan, some 12 hours away by my
route.
You've mentioned this a few times but I can't get my head around it.
How much editing are you allowed to do (such as rewriting the entire
program to do something completely different)?
What about even a one-line change, but which happens to affect the
entire program globally such that any results so far are rendered
meaningless?
Is this it in action:
_SYSTEM_SECONDS_SINCE_BOOTUP EQU 0 ; dword
_SYSTEM_SECONDS_SINCE_MIDNIGHT EQU 4 ; dword
_SYSTEM_HOURS EQU 8 ; byte
_SYSTEM_MINUTES EQU 9 ; byte
_SYSTEM_SECONDS EQU 10 ; byte
Because there must be a better way of managing all those offsets
than having to manually edit them every time something changes.
You've mentioned this a few times but I can't get my head around it.
How much editing are you allowed to do (such as rewriting the entire
program to do something completely different)? What about even a
one-line change, but which happens to affect the entire program
globally such that any results so far are rendered meaningless?
You've mentioned this a few times but I can't get my head around it. How
much editing are you allowed to do (such as rewriting the entire program to
do something completely different)?
That's not it. Those things you see there are a global data segment that
was available within my OS to all programs running at any RING to be able
to read those values without having to query them through an API protocol.
I had setup the segment to contain things that would be usable everywhere,
and it would be expanded over time as needed. Only the core OS kernel in
RING0 had a read-write descriptor to that data.
If you're looking at the code for my debugger in my operating system,
you will find it here:
https://github.com/RickCHodgin/libsf-full/tree/master/_exodus/source/debi
You should have the courage to name the people you are being rude
about. You are one of the "regs" here, so is Kenny. The term is used
to avoid responsibility.
The ones every couple of weeks are ones I don't catch easily during the
development process. It's because, for example, I meant in my head to
type the variable "foo" but instead I typed the variable "i" because I
was thinking ahead to my next for loop. That kind of error results in
something that I cannot easily determine the cause of because in my mind
I typed "foo" ... it's just that in my code I typed "i". So, as I'm
going back through my code step-by-step, line-by-line, I'm having to
figure out what is wrong.
I'm getting better at this over the years. I don't make as many mistakes
as I used to in all of my development. It's these odd occasional ones
that really throw me sometimes though. I once spent three days (back in
the early 1990s) debugging an application I had written, stepping through
every line of code, only to conclude that there was absolutely nothing
wrong with my algorithms. I then started back over and reproduced the
steps from the beginning I did to try to recreate the error, including
creating the actual initialization files. In the process, I remembered
that I had copied over some code from another system. The other system
had an piece of data that was 10 characters long, and this one I was
using needed it to be 7. I realized as I was going through those non-
programming setup portions that I had left it at 10 instead of 7, and
that was the cause of my error.
I laughed out loud, turned off my computer, and went on a three day drive
to ultimately touch the waters of Lake Michigan, some 12 hours away by my
route.
Yes. For those who are able to do development and testing of algorithms
in the edit-and-continue environment, people will see a marked improvement.
My targets are: Windows, Linux, FreeBSD, and Android. I will never support
any Apple product. And I will at some point remove support for Windows and
later Linux and FreeBSD once I get my own operating systems up to snuff.
Thank you. And thank you. It is something I offer unto the Lord. I am
giving back to Him the best I have been given by Him in terms of my
abilities and knowledge. I desire to have a product on this Earth which
is founded upon faith in Him, able to bring the Christian concept of "Love
thy neighbor as thyself" into a practical example, through code sharing,
through an organization that acknowledges Jesus Christ as the head of our
lives and the reasons why we move. I don't see that other places on this
Earth. If I did, I would probably contribute my time there.
I actually was nearly committed to completing the HURD kernel for the GNU
project, but came across some quotes by Richard Stallman related to heinous
sexual acts, things he believed in. I emailed him to find out about those
quotes, to validate that he was accurately quoted and really believed those
things. He did. As such, I disavowed myself from contributing to any of
the GNU projects or any part of the FSF because of Richard Stallman being
at the head, and that contrary spirit filtering down through the ranks.
The Liberty Software Foundation was created after that as a purposeful
alternative, one devoted to Jesus Christ.
Rick said:The ones every couple of weeks are ones I don't catch easily during the
development process. It's because, for example, I meant in my head to
type the variable "foo" but instead I typed the variable "i" because I
was thinking ahead to my next for loop. That kind of error results in
something that I cannot easily determine the cause of because in my mind
I typed "foo" ... it's just that in my code I typed "i". So, as I'm
going back through my code step-by-step, line-by-line, I'm having to
figure out what is wrong.
If you coded to pass unit tests, these errors wouldn't propagate beyond
the first fail.
That's some pretty-looking ASM code. However, assuming this isn't the output
of some HLL (the presence of comments makes that unlikely), you really don't
want to be writing GUI stuff, which a lot of this seems to be be, in
assembler. Use a HLL - any HLL, whether it's your own, or C, or some other.
C is perfectly up to the job (and the few bits it can't handle, put
*those* in an ASM module, those read-write strings included.)
You should have the courage to name the people you are being rude
about. You are one of the "regs" here, so is Kenny. The term is used
to avoid responsibility.
I have been trying to avoid this subject - but here goes. Christianity,
or any other religion, has nothing to do with "liberty" ... "Liberty" is
about letting other people have their opinions, beliefs, and actions -
as long as it does not directly harm others, people should be free to
do and say as they will. Religion is the antithesis of this - it is
about controlling people, telling them what to think, believe and do,
and judging them according to your own ideas.
So by all means make your own "software foundation", but you have no
business calling it the "Liberty Software Foundation", because that is
not what it is about.
Rick said:The errors I'm talking about occur during initial development, while I'm
there in the code writing new algorithms, or making the change.
Which is the most effective time to be using unit tests.
My point was if you are coding to pass tests, you remove the "ones I
don't catch easily during the development process" because the
development process is deigned to avoid them. You also know what you
check in is working as you expected and you can check in more often.
FLOSS stands for Free/Libre Open Source Software. "Libre" = "Liberty"
in English. I chose the name because it relates to the Libre word in
English. It is like the Free Software Foundation, except that it is the
Liberty Software Foundation. I refer to my software as "liberty software"
instead of "free software" but for all intents and purposes it is the
same thing.
The choice of name has nothing to do with religion, but relates to the
nature of the software involved. People are free to take my software
and use it for any purpose, which is where the word "liberty" comes into
play.
Rick said:FLOSS stands for Free/Libre Open Source Software. "Libre" = "Liberty"
in English.
If the software foundation is devoted to freedom (either of the software
itself, or the people using it), then "liberty" is a perfectly good
name. But if it is devoted to a particular god or religion, then the
name should reflect that - neither a person nor a "foundation" can be
dedicated to freedom /and/ a religious belief.
(Of course, some people view the FSF as a "religion"...)
Richard said:What crap. No unit tests in the world ever fully mimicked a fully
assembled live system.
The chance of all cases being thought out in unit
tests is probably non existent give or take.
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.