Tuesday, August 1, 2017

Digest for comp.lang.c++@googlegroups.com - 25 updates in 4 topics

red floyd <no.spam@its.invalid>: Jul 31 07:13PM -0700


> Brian
> Ebenezer Enterprises
> http://webEbenezer.net
 
Your question is answered in the original FAQ, 5.8 and 5.9
 
http://www.dietmar-kuehl.de/mirror/c++-faq/how-to-post.html#faq-5.8
http://www.dietmar-kuehl.de/mirror/c++-faq/how-to-post.html#faq-5.9
woodbrian77@gmail.com: Jul 31 10:00PM -0700

On Monday, July 31, 2017 at 9:13:24 PM UTC-5, red floyd wrote:
 
> Your question is answered in the original FAQ, 5.8 and 5.9
 
> http://www.dietmar-kuehl.de/mirror/c++-faq/how-to-post.html#faq-5.8
> http://www.dietmar-kuehl.de/mirror/c++-faq/how-to-post.html#faq-5.9
 
 
"There are rules behind the rules and a unity that is deeper
than uniformity." C. S. Lewis
 
 
Would anyone like a demo of my software? The first step is
to download the software here:
 
https://github.com/Ebenezer-group/onwards
.
 
 
Brian
"Öö Tiib" <ootiib@hot.ee>: Jul 31 11:40PM -0700


> Would anyone like a demo of my software? The first step is
> to download the software here:
 
> https://github.com/Ebenezer-group/onwards
 
Yes, but why do not you make the demo always online there?
Like that:
https://capnproto.org/cxx.html
Or that:
http://www.boost.org/doc/libs/1_64_0/libs/serialization/doc/index.html
 
These things I immediately get. As contrast you have posted about your
CMW here all these years ... and you have even tried to hack Wikipedia
to advertise it but I've never even tried it.
 
But why I haven't tried it? I like to try stuff.
 
Because an attempt stops before downloading anything. For example if I just
now look at it then I see that there is some sort of "account number" and
"account password" needed. I don't have such things. Also I refuse to ask
how I should obtain those. So there it stops. Simple?
David Brown <david.brown@hesbynett.no>: Aug 01 10:29AM +0200

On 01/08/17 08:40, Öö Tiib wrote:
> now look at it then I see that there is some sort of "account number" and
> "account password" needed. I don't have such things. Also I refuse to ask
> how I should obtain those. So there it stops. Simple?
 
I thought the point of Brian's stuff was that it was an online code
generator? Surely that means there must be a way to generate code
online to see it?
"Öö Tiib" <ootiib@hot.ee>: Aug 01 02:04AM -0700

On Tuesday, 1 August 2017 11:29:29 UTC+3, David Brown wrote:
 
> I thought the point of Brian's stuff was that it was an online code
> generator? Surely that means there must be a way to generate code
> online to see it?
 
I also have felt that Brian attempts to make people to think that way because
that is the impression what his postings leave. However where is that online
tool to try? There are no such things.
 
Let me give you example about what I understand IS an online tool:
 
Online C++ compiler Coliru: http://coliru.stacked-crooked.com/
It can be easily used to try your C++ code before posting it to comp.lang.c++
It sometimes does not work, but usually does.

Now let me give example what I understand IS NOT an online tool:
 
Brian raving something entirely unclear: http://webebenezer.net/index.html
No ideas whatsoever where and how anyone should generate anything.
And that is the link that Brian has posted here for YEARS. I click at it once
in a year, (usually in August) and see that there are still nothing to do.
woodbrian77@gmail.com: Aug 01 09:36AM -0700

On Tuesday, August 1, 2017 at 1:40:33 AM UTC-5, Öö Tiib wrote:
> now look at it then I see that there is some sort of "account number" and
> "account password" needed. I don't have such things. Also I refuse to ask
> how I should obtain those. So there it stops. Simple?
 
Have you tried my example programs
https://github.com/Ebenezer-group/onwards/tree/master/example
? An account is not needed to run those.
 
Run:
 
make example
 
to get them to build.
 
 
Brian
Juha Nieminen <nospam@thanks.invalid>: Aug 01 05:10AM

> Juha, you can find all kinds of failures with me.
 
Then stop lying. Admit that you lied. Correct the problem.
 
You are just using your religious beliefs as an excuse to keep lying.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 05:07AM -0700

On Tuesday, August 1, 2017 at 1:10:48 AM UTC-4, Juha Nieminen wrote:
> > Juha, you can find all kinds of failures with me.
 
> Then stop lying. Admit that you lied. Correct the problem.
> You are just using your religious beliefs as an excuse to keep lying.
 
FWIW, I honestly don't understand what you're talking about. However,
in the interests of full disclosure, I should tell you that every time
I see a post from you I read "Juha" and with my dyslexia brain, the
Julia programming language pops into my head.
 
Thank you,
Rick C. Hodgin
"Öö Tiib" <ootiib@hot.ee>: Aug 01 05:22AM -0700

On Tuesday, 1 August 2017 15:08:12 UTC+3, Rick C. Hodgin wrote:
 
> > Then stop lying. Admit that you lied. Correct the problem.
> > You are just using your religious beliefs as an excuse to keep lying.
 
> FWIW, I honestly don't understand what you're talking about.
 
You, and honest? :D Joke of the month. Let me make it out of wood
and paint it red?
 
The youtube link that you posted lead to movie about honest-looking
person who told how he himself was Atheist teenager, then became
Christian as teenager and later became Scientist.
 
So there was no "Atheist Scientist" in that movie. So therefore you
lied to everybody that the link leads to movie how "Atheist Scientist
Becomes Christian After Researching Evidence for God".

However everybody are certain that you know it very well and just
keep lying like usual. By their fruits, exactly like Jesus allegedly taught.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 05:39AM -0700

On Tuesday, August 1, 2017 at 8:22:33 AM UTC-4, Öö Tiib wrote:
 
> > FWIW, I honestly don't understand what you're talking about.
 
> You, and honest? :D Joke of the month. Let me make it out of wood
> and paint it red?
 
I'm curious where I have not been honest. I think if you look very
deeply into my life, the only times I haven't been honest is when I
am doing something for humor, and it's completely obvious that my
not being honest is in the joke itself, and not in my trying to
deceive people.
 
> The youtube link that you posted lead to movie about honest-looking
> person who told how he himself was Atheist teenager, then became
> Christian as teenager and later became Scientist.
 
I watched that video. He is like a lot of us are. I professed to be
an atheist my entire adult life from age 15, but there was also always
this little part of me which knew something else existed, I just didn't
know what it was, and in all honesty wasn't prepared at all to embrace
it. I wanted to live my life the way I wanted to.
 
> So there was no "Atheist Scientist" in that movie. So therefore you
> lied to everybody that the link leads to movie how "Atheist Scientist
> Becomes Christian After Researching Evidence for God".
 
Whatever you call him, that was the title of the video. And, it is
what he identified himself as. I was conveying what he said, and I
also agree with his assessment.
 
When he was younger and investigating things, he was doing so with
an atheist's perspective. He wanted to examine things rationally,
in his mind, in his thinking, to see what made sense to him. It
was all flesh pursuing religion. But what he later discovered was
how Christianity changed him.
 
> However everybody are certain that you know it very well and just
> keep lying like usual. By their fruits, exactly like Jesus allegedly
> taught.
 
Have you ever studied what Jesus taught? Watch that movie on the
gospel of John and see love poured out for man, for each of us
individually and personally.
 
-----
I have not been lying to any of you. I have been trying to reach
out in a myriad of ways so that some of you might receive the word
in a way you wouldn't in other forms. My goals are for you to come
to realize that you are a sinner, that Jesus will forgive you, so
that you can have eternal life.
 
And someday, when you stand before Jesus, you can ask Him to tell
you the truth about my intents, purposes, focuses, interests, etc.,
and He will show in uncluttered detail my purpose:
 
I want you to be in Heaven with God forever. I'd like to be
able to spend that time with you as well. Maybe we could ask
Jesus to allow us to write the fundamental programming language
that is applicable not just to CPU ISA, but to different forms
of matter and spirit interaction. :-)
 
Thank you,
Rick C. Hodgin
"Öö Tiib" <ootiib@hot.ee>: Aug 01 07:22AM -0700

On Tuesday, 1 August 2017 15:40:03 UTC+3, Rick C. Hodgin wrote:
> On Tuesday, August 1, 2017 at 8:22:33 AM UTC-4, Öö Tiib wrote:
 
Snipping usual attempts to dodge.

> in his mind, in his thinking, to see what made sense to him. It
> was all flesh pursuing religion. But what he later discovered was
> how Christianity changed him.
 
The "younger" of his was before age 17. And that "later" when he
converted happened in age 17 - 19. Was he then scientist when he
was age 17 - 19? Or was he student? What he was? World is certainly
full of lies. However when you take one lie from anywhere and post
it then arent you spreading a lie? Aren't it then your lie as well?
 
Snipping more pretending that you don't understand what is told
to you.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 10:36AM -0400

On 8/1/2017 10:22 AM, Öö Tiib wrote:
> On Tuesday, 1 August 2017 15:40:03 UTC+3, Rick C. Hodgin wrote:
>> On Tuesday, August 1, 2017 at 8:22:33 AM UTC-4, Öö Tiib wrote:
 
> Snipping usual attempts to dodge.
 
There is no attempt to dodge. I honestly do not understand what you
and Juha are talking about. I truly believe you have misconceptions
about me which are colored by your own thinking, and not by my words,
actions, or deeds.
 
> it then arent you spreading a lie? Aren't it then your lie as well?
 
> Snipping more pretending that you don't understand what is told
> to you.
 
I honestly don't understand what you and Juha are talking about when
you say I'm lying.
 
Thank you,
Rick C. Hodgin
"Öö Tiib" <ootiib@hot.ee>: Aug 01 08:40AM -0700

On Tuesday, 1 August 2017 17:37:00 UTC+3, Rick C. Hodgin wrote:
 
> > The "younger" of his was before age 17. And that "later" when he
> > converted happened in age 17 - 19. Was he then scientist when he
> > was age 17 - 19? Or was he student? What he was?
 
So? No answers?
 
> > World is certainly full of lies. However when you take one lie from
> > anywhere and post it then arent you spreading a lie? Aren't it then
> > your lie as well?
 
So? Just crickets chirping?
 
> > to you.
 
> I honestly don't understand what you and Juha are talking about when
> you say I'm lying.
 
Nah, ok, I got trolled. Everybody see that you are just playing dumb
again. Have your lulz or whatever you do it for.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 11:44AM -0400

On 8/1/2017 11:40 AM, Öö Tiib wrote:
>>> converted happened in age 17 - 19. Was he then scientist when he
>>> was age 17 - 19? Or was he student? What he was?
 
> So? No answers?
 
I didn't see this content previously. I apologize. I'll reply on
that post.
 
>> you say I'm lying.
 
> Nah, ok, I got trolled. Everybody see that you are just playing dumb
> again. Have your lulz or whatever you do it for.
 
You already have your mind made up. Nobody will be able to convince
you of anything. It will require God changing you on the inside
before you will be able to hear any of the things of Jesus or the
Bible.
 
The message of the cross and salvation is only for those who are
being saved. It is not for other people.
 
Thank you,
Rick C. Hodgin
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 11:51AM -0400

On 8/1/2017 10:22 AM, Öö Tiib wrote:
 
> The "younger" of his was before age 17. And that "later" when he
> converted happened in age 17 - 19. Was he then scientist when he
> was age 17 - 19? Or was he student? What he was?
 
I'll have to watch the video again. As I recall, he stated that he
began researching religions in his teens, and he also considered
himself a scientist at that point. He later went on to pursue that
young interest, but at what age was his conversion? He didn't talk
in depth to a Christian until his late 20s, so by that time he was
already a scientist.
 
I think you are confusing his interest in religions, and the internal
recognition that there is something there, without yet accepting the
forgiveness of sin from Jesus Christ as Savior and Lord.
 
My son and I were watching an episode of Star Trek: The Next Generation
yesterday entitled, "Where Silence Has Lease." It has a character in
there named Negeelum??sp??, and at one point Nageelum said he would
destroy half the crew of the Enterprise to understand death. In
reply, Counselor Troi and Cmd. Data came in to discuss things with
Capt. Picard. Data ask him what death is, and he explains two of
the belief systems. Data asks Capt. Picard what he believes.
 
The captain replies that he believes that we go on beyond the
confines of this world, and that what we understand today as
reality is transformed into something more than what we are able
to understand today, and that we then live in that new reality.
 
-----
The point is: many people believe there is something else there,
but they don't yet know what it is or what it means to them
personally.
 
For this scientist, he began as an atheist, and remained either
atheist or possibly agnostic, until he later became a full-
fledged Christian at some point after his 20s.
 
> it then arent you spreading a lie? Aren't it then your lie as well?
 
> Snipping more pretending that you don't understand what is told
> to you.
 
I believe you are focused on trying to prove me wrong, rather than
looking at the underlying message I'm conveying:
 
1) We are all sinners.
2) Without forgiveness by Jesus we will all be judged,
found guilty, and condemned to an eternity in Hellfire.
3) Jesus offers salvation to everyone who will ask for it
for free.
 
My guidance to you is: Please, go to Jesus and ask forgiveness
for your sin so you can live on in eternity.
 
Thank you,
Rick C. Hodgin
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 10:35AM -0400

On 8/1/2017 9:25 AM, Rick C. Hodgin wrote:
> It would work with repeated code on a consistent cadence:
 
A proper implementation that works in Visual Studio 2015:
 
#include <stdlib.h>
#include <stdio.h>
 
char switchdefault[] = "switch default";
char switch0[] = "switch 0";
char switch1[] = "switch 1";
char switch2[] = "switch 2";
char switch3[] = "switch 3";
char switch4[] = "switch 4";
char switch5[] = "switch 5";
char switch6[] = "switch 6";
char switch7[] = "switch 7";
 
int main(int argc, char* argv[])
{
unsigned char x, lnI;
char* tptr;
 
 
// Loop for testing all possible values
for (lnI = 0; lnI < 8; lnI++)
{
if (lnI == 0) x = 0;
else x = 1 << (lnI - 1);
 
_asm {
movzx edx, byte ptr x
shr edx,4
movzx ebx, byte ptr x
and ebx,0xf
// 5-bytes for each jmp DWORD below
lea edx, [edx*4 + edx]
add edx, offset high_00
jmp edx
 
high_00:
jmp DWORD ptr test_low_nibble // No bits
jmp DWORD ptr switch_statement_4 // 0001
jmp DWORD ptr switch_statement_5 // 001x
jmp DWORD ptr switch_statement_5 // 001x
jmp DWORD ptr switch_statement_6 // 01xx
jmp DWORD ptr switch_statement_6 // 01xx
jmp DWORD ptr switch_statement_6 // 01xx
jmp DWORD ptr switch_statement_6 // 01xx
jmp DWORD ptr switch_statement_7 // 1xxx
jmp DWORD ptr switch_statement_7 // 1xxx
jmp DWORD ptr switch_statement_7 // 1xxx
jmp DWORD ptr switch_statement_7 // 1xxx
jmp DWORD ptr switch_statement_7 // 1xxx
jmp DWORD ptr switch_statement_7 // 1xxx
jmp DWORD ptr switch_statement_7 // 1xxx
jmp DWORD ptr switch_statement_7 // 1xxx
 
test_low_nibble:
// 5-bytes for each jmp DWORD below
lea ebx, [ebx*4 + ebx]
add ebx, offset low_00
jmp ebx
 
low_00:
jmp DWORD ptr switch_statement_default // No bits
jmp DWORD ptr switch_statement_0 // 0001
jmp DWORD ptr switch_statement_1 // 001x
jmp DWORD ptr switch_statement_1 // 001x
jmp DWORD ptr switch_statement_2 // 01xx
jmp DWORD ptr switch_statement_2 // 01xx
jmp DWORD ptr switch_statement_2 // 01xx
jmp DWORD ptr switch_statement_2 // 01xx
jmp DWORD ptr switch_statement_3 // 1xxx
jmp DWORD ptr switch_statement_3 // 1xxx
jmp DWORD ptr switch_statement_3 // 1xxx
jmp DWORD ptr switch_statement_3 // 1xxx
jmp DWORD ptr switch_statement_3 // 1xxx
jmp DWORD ptr switch_statement_3 // 1xxx
jmp DWORD ptr switch_statement_3 // 1xxx
jmp DWORD ptr switch_statement_3 // 1xxx
 
switch_statement_default:
mov tptr,offset switchdefault
jmp done
switch_statement_0:
mov tptr,offset switch0
jmp done
switch_statement_1:
mov tptr,offset switch1
jmp done
switch_statement_2:
mov tptr,offset switch2
jmp done
switch_statement_3:
mov tptr,offset switch3
jmp done
switch_statement_4:
mov tptr,offset switch4
jmp done
switch_statement_5:
mov tptr,offset switch5
jmp done
switch_statement_6:
mov tptr,offset switch6
jmp done
switch_statement_7:
mov tptr,offset switch7
 
done:
}
 
printf("%s\n", tptr);
}
return 0;
}
 
A minor extension would allow a WORD or DWORD or QWORD value to be
utilized. In this way, at each use the custom lookup table required
for that switch () statement usage would be derived. And if you
simply needed the value, a function could be used when the BSR and
BSF instructions are not available.
 
Thank you,
Rick C. Hodgin
scott@slp53.sl.home (Scott Lurndal): Aug 01 03:09PM

>On 8/1/2017 9:25 AM, Rick C. Hodgin wrote:
>> It would work with repeated code on a consistent cadence:
 
>A proper implementation that works in Visual Studio 2015:
 
<100+ lines elided>
 
Just use __builtin_ffs/__builtin_clz and let the compiler deal
with architectures that don't have instruction sequences that
handle the operation.
 
If you're not using a compiler that offers such builtins, I'm sorry.
 
Here's a number of algorithms to find the least significant set bit.
 
http://graphics.stanford.edu/~seander/bithacks.html#ZerosOnRightLinear
 
Note that AArch64 has a Count Leading Zeros instruction, which handles
the BSR. BSF can be accomplished in two instructions - RBIT and CLZ.
 
Note also that CLZ can count leading ones by simply inverting the
register first.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 11:17AM -0400

On 8/1/2017 11:09 AM, Scott Lurndal wrote:
 
> Just use __builtin_ffs/__builtin_clz and let the compiler deal
> with architectures that don't have instruction sequences that
> handle the operation.
 
I don't use GCC compilers. You'll note the example I gave was using
Visual Studio 2015.
 
> If you're not using a compiler that offers such builtins, I'm sorry.
 
I'm working on algorithms I can use for CAlive, but they will work in
general in any compiler that supports inline assembly as well.
 
> the BSR. BSF can be accomplished in two instructions - RBIT and CLZ.
 
> Note also that CLZ can count leading ones by simply inverting the
> register first.
 
Thank you,
Rick C. Hodgin
scott@slp53.sl.home (Scott Lurndal): Aug 01 03:23PM

>> handle the operation.
 
>I don't use GCC compilers. You'll note the example I gave was using
>Visual Studio 2015.
 
https://msdn.microsoft.com/en-us/library/fbxyd7zd.aspx
 
>> If you're not using a compiler that offers such builtins, I'm sorry.
 
>I'm working on algorithms I can use for CAlive, but they will work in
>general in any compiler that supports inline assembly as well.
 
Given that the assembler format varies by compiler/OS, I doubt that
highly.
David Brown <david.brown@hesbynett.no>: Aug 01 05:27PM +0200

On 01/08/17 17:17, Rick C. Hodgin wrote:
>> handle the operation.
 
> I don't use GCC compilers. You'll note the example I gave was using
> Visual Studio 2015.
 
Visual Studio has equivalent functions _BitScanForward, _BitScanReverse,
__lzcnt, etc. I don't know the details - but they are on the Wikipedia
page I posted previously.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 11:27AM -0400

On 8/1/2017 11:23 AM, Scott Lurndal wrote:
>> general in any compiler that supports inline assembly as well.
 
> Given that the assembler format varies by compiler/OS, I doubt that
> highly.
 
It will work on x86, and can be extended to x64. Those are the
machines of interest apart from the ARM world. And the code could
be modified in principle for ARM CPUs as well.
 
The point is, it's an algorithm that will work when BSF and BSR
are not available. And the design of the algorithm is sound.
It would be the way compilers could implement the >>? and ?<<
unary operators for performing this scan-bit operation. And
with some additional compiler logic, the same form could be
used for the granularity operators >>> and <<<.
 
Thank you,
Rick C. Hodgin
scott@slp53.sl.home (Scott Lurndal): Aug 01 03:34PM

>machines of interest apart from the ARM world. And the code could
>be modified in principle for ARM CPUs as well.
 
>The point is, it's an algorithm that will work when BSF and BSR
 
The algorithms on the bithacks page are much more space and
time efficient that your algorithm.
 
And given that you're only claiming support for x86_32 and x86_64,
both of which have always and will always have the appropriate
instructions, this seems to be a pointless exercise.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Aug 01 11:39AM -0400

On 8/1/2017 11:34 AM, Scott Lurndal wrote:
> The algorithms on the bithacks page are much more space and
> time efficient that your algorithm...
I desire to add these features as new fundamental operators, Scott.
In addition to the bit-scan algorithms, also granularity, which will
range the bit positions into areas of interest, such as byte, word,
dword, qword, or other custom values.
 
In addition, I am writing my own compiler, Scott. I am able to
originate these ideas and these algorithms from that which I possess
within myself. I share that knowledge and experience here, and I
welcome any optimizations people have. This is my first toss at
the dart board on this algorithm. It's much easier to edit than
it is to create.+
 
For my areas of interest (x86, x64, and ARM), I think the bit-scan
assembly instructions are sufficient, and some code like what I
posted can be used for cases of granularity. In short, all of
these features can now be added as new operators in CAlive, so
they don't require built-ins, but introduce them as first-class
language citizens.
 
Thank you,
Rick C. Hodgin
Real Troll <Real.Troll@Trolls.com>: Jul 31 05:17PM -0400

On 31/07/2017 15:54, Daniel wrote:
> And don't screw anyone unless they're bent over!
 
Instead of reading that idiot's posts why don't you try to learn
something new:
 
> poorly understood, confusing features of C++ that, in our experience,
> bring more
> grief than benefit.
 
The religious person is here to destroy these newsgroups and there are
people using profanity to indirectly support him in his objectives.
My filter list is getting bigger and bigger. Everybody should do the
same to reduce the traffic on this <and on C newsgroup> newsgroup.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Jul 31 04:27PM -0700

Real Troll wrote:
> The religious person is here to destroy these newsgroups...
 
(1) I am not a religious person. I am a sinner saved by grace,
and I teach others about Jesus so they too can be saved. There
is little resemblance between religion and salvation. They are
largely unrelated.
 
(2) My goals are your eternal soul. I want you to be forgiven
for your sin, as I've been forgiven for mine, so that you can live
on and thrive and shine and mark up this universe with all that
is uniquely you.
 
(3) I like Star Trek, Sci-Fi in general, designing, building, and
repairing things. My favorite food is pizza, followed by grilled
ham and cheese on sourdough bread (A "Toastie" from McAlister's).
I have a wife and son and neither one of them likes hardware or
software development. LOL :-)
 
I am a regular person like everybody ... but I have been forgiven
for my sin and I will live on in Heaven with God Himself after I leave
this world.
 
Each of you can do the same. Jesus makes it possible. It's why
I teach you about Him.
 
Thank you,
Rick C. Hodgin
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page.
To unsubscribe from this group and stop receiving emails from it send an email to comp.lang.c+++unsubscribe@googlegroups.com.

No comments: