Monday, January 14, 2019

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

fir <profesor.fir@gmail.com>: Jan 14 12:33AM -0800

W dniu poniedziałek, 14 stycznia 2019 00:10:26 UTC+1 użytkownik David Brown napisał:
 
> > lol, imo you get into realm of lies here.. maybe its your ignorance?
 
> Fortunately for me, no one considers your opinion to be worth the pixels
> it is written on.
 
you should write "no one stupid person"
 
in fact i dont think its a metter of your ignorance it is possibly your lamerism : O
 
> > c was intendet to give a control on machine resources (two famous of them - (b)its and (c)ycles)
 
> C was never intended to give control of cycles.
 
prove it, show me ;c
David Brown <david.brown@hesbynett.no>: Jan 14 11:36AM +0100

On 14/01/2019 09:33, fir wrote:
 
>>> c was intendet to give a control on machine resources (two famous of them - (b)its and (c)ycles)
 
>> C was never intended to give control of cycles.
 
> prove it, show me ;c
 
It is up to those who think C is a "high level assembler" to justify
their claims. I (and others) have already given explanations and
references to demonstrate clearly that C is a high level language,
defined in terms of an abstract machine and not any underlying hardware.
It was designed so that you would not need to use assembler as much,
and so that you could use C as a low-level systems language - that does
not make it assembler, nor does it give you any control of machine
cycles, timing, generated assembly code, etc. (Specific implementations
of C may give you more control - the language itself does not.)
 
That is all I am going to give you. If anyone else wants a serious
discussion about it, I am happy to contribute - but I am not going to
bother more with someone who alternates between insults and flooding the
group with gobbledegook.
gazelle@shell.xmission.com (Kenny McCormack): Jan 14 10:41AM

In article <q1honj$1up$1@dont-email.me>,
David Brown <david.brown@hesbynett.no> wrote:
...
>discussion about it, I am happy to contribute - but I am not going to
>bother more with someone who alternates between insults and flooding the
>group with gobbledegook.
 
Physician, heal thyself.
 
--
"We should always be disposed to believe that which appears to us to be
white is really black, if the hierarchy of the church so decides."
 
- Saint Ignatius Loyola (1491-1556) Founder of the Jesuit Order -
queequeg@trust.no1 (Queequeg): Jan 14 12:25PM


> end it moron, too much bandwidth wasted
 
Said fir, quoting 167 lines or 9 kB of text.
 
--
https://www.youtube.com/watch?v=9lSzL1DqQn0
"Öö Tiib" <ootiib@hot.ee>: Jan 14 05:00AM -0800

On Friday, 11 January 2019 15:04:54 UTC+2, Rick C. Hodgin wrote:
> > their mistakes tend to be both too obvious and too boringly
> > repetitive. I feel that it is just sad.
 
> The message of the cross ...
 
Q.E.D.: Incapable to learn, obvious mistake, too boring and
repetitive to read as it has been always been and result of it
is same as it has been for all those years: Utter failure to
inspire anyone. When some god is followed by apparent idiots
then who wants to join? Only may be someone who wants to
get into better position to flay those idiots. Yawn.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Jan 14 05:37AM -0800

On Monday, January 14, 2019 at 8:00:45 AM UTC-5, Öö Tiib wrote:
> > > their mistakes tend to be both too obvious and too boringly
> > > repetitive. I feel that it is just sad.
 
> > The message of the cross ...
 
The important part you snipped was this:
 
https://www.biblegateway.com/passage/?search=1+Corinthians+1%3A18-31&version=KJV
 
18 For the preaching of the cross is to them that perish
foolishness; but unto us which are saved it is the power
of God.
19 For it is written, I will destroy the wisdom of the wise,
and will bring to nothing the understanding of the prudent.
20 Where is the wise? where is the scribe? where is the dis-
puter of this world? hath not God made foolish the wisdom
of this world?
21 For after that in the wisdom of God the world by wisdom
knew not God, it pleased God by the foolishness of preaching
to save them that believe.
 
It is God at work against the proud, arrogant, self-important,
against those who will not humble themselves before Him. It is
He who sets the dates and the times and the coming judgment, not
I, nor any other Christian who warns you about the same.
 
God offers each person forgiveness of sin and eternity with Him
in His paradise Kingdom. Only a fool would pass it up.
 
--
Rick C. Hodgin
"Öö Tiib" <ootiib@hot.ee>: Jan 14 05:51AM -0800

On Monday, 14 January 2019 15:37:09 UTC+2, Rick C. Hodgin wrote:
> > > > repetitive. I feel that it is just sad.
 
> > > The message of the cross ...
 
> The important part you snipped was this:
 
I was not discussing any gods, I was discussing you, that is why I
snipped it. You are still incapable to learn, with obvious mistake,
too boring and repetitive to read. Do not try to blame at Jesus
that you are such a dim bulb. It is your own choice and
Jesus has nothing to do with you.
David Brown <david.brown@hesbynett.no>: Jan 14 12:10AM +0100

On 12/01/2019 20:25, fir wrote:
>> people try to use it that way, and that some people think that was what
>> it used to be - those are mistakes made from ignorance and misunderstanding.
 
> lol, imo you get into realm of lies here.. maybe its your ignorance?
 
Fortunately for me, no one considers your opinion to be worth the pixels
it is written on.
 
> c was intendet to give a control on machine resources (two famous of them - (b)its and (c)ycles)
 
C was never intended to give control of cycles.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Jan 14 06:13AM -0800

On Monday, January 14, 2019 at 8:51:23 AM UTC-5, Öö Tiib wrote:
> too boring and repetitive to read. Do not try to blame at Jesus
> that you are such a dim bulb. It is your own choice and
> Jesus has nothing to do with you.
 
What did Jesus say?
 
https://www.biblegateway.com/passage/?search=Matthew+7%3A16-20&version=KJV
 
16 Ye shall know them by their fruits. Do men gather grapes
of thorns, or figs of thistles?
17 Even so every good tree bringeth forth good fruit; but a
corrupt tree bringeth forth evil fruit.
18 A good tree cannot bring forth evil fruit, neither can a
corrupt tree bring forth good fruit.
19 Every tree that bringeth not forth good fruit is hewn down,
and cast into the fire.
20 Wherefore by their fruits ye shall know them.
 
By their fruit you shall know each man/woman, not by their words
alone, but by an examination of their life, their intent, the way
they move over time ... the pattern will become clear with some
investigation.
 
C"Alive", Öö Tiib. Why did I choose the name "Alive"?
 
--
Rick C. Hodgin
fir <profesor.fir@gmail.com>: Jan 14 06:58AM -0800

W dniu poniedziałek, 14 stycznia 2019 11:36:45 UTC+1 użytkownik David Brown napisał:
> discussion about it, I am happy to contribute - but I am not going to
> bother more with someone who alternates between insults and flooding the
> group with gobbledegook.
 
thw veight of this 'argumentation' is not even zero .. i do not see any argumentation here..if so you would better get back with thiose untrue statements or just snap a badge of bulshitter right into your forehead
 
c is named as hl assemble becouse he plays or at least may play (but its more than may becouse if someone dont uses c according to its nature dont use it well)
such role (and do it vere well)
 
it is a fellow who want to dode some program in assembly to obtain the efect od compact size, nearly top sped, some transparency on machine may just use c -
which may be seen as a sorta evolution
of well generalized macroassembler that
holds to rules of the craft (and do it wery well)
 
espe to note 2 things
 
1) c is supposed to be seen as in 'transparent to machine way' - i gues eery c coder learns how c code really executes as on machuine leel (hov function calls work, what are simpel types sizes and how that maps on machine level, things like that - and if c coder dot knows that it is rather poor c coder.. c coders are intended to know that and do conscious coding (unlike very
many other languages)
 
2) c does that maping exceptionally well.. and its know (and famous) for
that.. for example he is cnown for being
'dangerous' coz you may do various lov lewel tricks with that (near the edge of possible crashes).. and also for being 'light' and fast .. if he wouldnt be designed to be very good here it would be easy to design other language faster than c and it is very hard
 
any normal (thus 'competent') c coder
should know that - maybe in a world of lamas it is normal to not conform to those things mentioned above but those lamas are not competent c coders..
 
i dont want to talk more on this,m as you wasted my own group time not showing any contr argumentation to that (and that could be hard as c is just in that kinda way)
 
[more interesting would be to discuss if c has some serious 'competitors' in a family of languages that could be also named as close to assemblers (fortran? pascal? some other?) but i dont know them
enough to know that (and in fact not much interested as i do others things)
scott@slp53.sl.home (Scott Lurndal): Jan 14 02:22PM


>> I personally think it's desirable to add a version of memcpy that's defined to do a byte-at-a-time, at least optionally memory_order_relaxed, atomic copy. I think most standard memcpy implementations would already be usable as an implementation. And that would solve this problem for the case in which there is no processing inside the reader critical section, and the data is trivially copyable. But so far that's only a personal opinion. And not all the details are clear.
 
>That sort of memcpy would be very useful. And I agree that a lot of
>existing memcpy impls should be okay, or rather easily adapted to work.
 
Why a memcpy? Just code it directly as an assignment loop. byte-wise bulk copies are horribly
inefficient.
woodbrian77@gmail.com: Jan 13 05:08PM -0800

On Sunday, January 13, 2019 at 4:38:15 PM UTC-6, Melzzzzz wrote:
> > Something like: g++ ...
 
> Linux, g++ 8.2.1, that build line fails. 35 lines of code, but no cmw/Buffer.hh
> on my system...
 
Did you clone the repository?
git clone https://github.com/Ebenezer-group/onwards.git
 
Did you run make?
 
 
Melzzzzz <Melzzzzz@zzzzz.com>: Jan 13 09:20PM


>> Well, it uses library. This is not just 35 lines.
 
> That's true for most C++ programs. If the platform
> has 2017 C++ support, this program will likely build.
fatal error: cmw/Buffer.hh: No such file or directory
#include<cmw/Buffer.hh>
 
> a software development tool. People use routers to
> support their desktops and phones, right? And they
> use their desktops and phones for software development.
 
Phones are phones. Developing for phones is less likely to use some C++.
Router more likely...
 
--
press any key to continue or any other to quit...
Melzzzzz <Melzzzzz@zzzzz.com>: Jan 13 10:38PM


> Thanks for the report. What operating system are
> you using? And what is the build line that is failing?
> Something like: g++ ...
 
Linux, g++ 8.2.1, that build line fails. 35 lines of code, but no cmw/Buffer.hh
on my system...
 
>> Router more likely...
 
> The point is you would be using a desktop to develop
> for routers.
 
Sure.
 
--
press any key to continue or any other to quit...
seeplus <boardmounrt@gmail.com>: Jan 13 03:38PM -0800

On Monday, January 14, 2019 at 9:22:17 AM UTC+11, Keith Thompson wrote:
> discuss C++.
 
> I don't see Rick's postings, but it's hard for my killfile to keep
> up with all the people who feel the need to reply to him publicly.
 
NO.
We frequently get that old "don't respond to him and he will go away".
 
That has never worked in the past, never will.
He is a dedicated "teacher" and like those other annoyances they
will always pop back on groups producing clutter.
 
At least people doing some very serious arguing with him has bought
a little quiet every few months.
Also sometimes this gives an insight into his mind so maybe showing just
some way a professional could get him better, and produces some
knowledge of these otherwise intelligent people walking amongst us.
Handy to know.
 
Why are people so hung up about OT????
This "-plonk- welcome to my killfile" is so weird and pointless.
In any news reader it takes 800ms to PgDn three times and skip a post.
I can spare that.
 
Do not open posts with obviously OT headers.
Keith Thompson <kst-u@mib.org>: Jan 13 10:38PM -0800


>> I don't see Rick's postings, but it's hard for my killfile to keep
>> up with all the people who feel the need to reply to him publicly.
 
> NO.
 
Yes.
 
> We frequently get that old "don't respond to him and he will go away".
 
He won't go away whether we respond to him or not. I've solved the
direct problem for myself; as far as I'm concerned, he effectively
doesn't exist. The responses continue to be annoying. (And they're
not all in threads with obviously off-topic subject lines.)
 
You won't accomplish anything by publicly engaging him. (And I
probably won't accomplish anything by talking to you about it.)
 
[...]
 
--
Keith Thompson (The_Other_Keith) kst@mib.org <http://www.ghoti.net/~kst>
Will write code for food.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
gazelle@shell.xmission.com (Kenny McCormack): Jan 13 04:34PM

In article <TrI_D.34153$Rq1.1301@fx21.fr7>,
Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> wrote:
...
>Christianity is a religion.
 
Of course it is. Rick is, as usual, full of shit.
 
What else is new?
 
>[snip tl;dr]
 
Everything Rick posts is tl;dr;bs.
 
By the way, the real thing is that the word religion has taken on, among
sensible people, a negative connotation. Therefore, when marketing to
(presumably) smart people, such as you find in the Northern part of the
US and in these newsgroups, you want to downplay the word, as Rick has
done in his posts to the newsgroups. When marketing in the South, of
course, you go full on with the word, because they haven't figured out
yet what bullshit it is. They still love the word.
 
--
The randomly chosen signature file that would have appeared here is more than 4
lines long. As such, it violates one or more Usenet RFCs. In order to remain
in compliance with said RFCs, the actual sig can be found at the following URL:
http://user.xmission.com/~gazelle/Sigs/Noam
"Chris M. Thomasson" <invalid_chris_thomasson_invalid@invalid.com>: Jan 13 12:58PM -0800

On 1/13/2019 4:40 AM, Kenny McCormack wrote:
 
> I should add that one of the groups seems to be currently most concerned
> with girls taken in from a blizzard (*) more than anything else.
 
> (*) And the treatment and handling of hypothermia.
 
I had a limited conversation with very smart people wrt a seqlock and
C++. If you want on topic, read _all_ of this:
 
https://groups.google.com/d/topic/comp.lang.c++/NBZhxyzLUH8/discussion
 
Very smart people are in that thread.
gazelle@shell.xmission.com (Kenny McCormack): Jan 14 11:04AM

In article <ln4labeoay.fsf@kst-u.example.com>,
>>> up with all the people who feel the need to reply to him publicly.
 
>> NO.
 
>Yes.
 
NO
 
>not all in threads with obviously off-topic subject lines.)
 
>You won't accomplish anything by publicly engaging him. (And I
>probably won't accomplish anything by talking to you about it.)
 
That's pretty much what it boils down to, isn't it. You say one thing,
your opponents say another. Who's to say? Who's the judge? Answer: No one.
 
As I said before:
 
You should probably look into setting up your newsreader to have a
whitelist (i.e., a list of the few people who post here whose stuff you
actually will deign to read) rather than trying to maintain a blacklist.
 
--
The last time a Republican cared about you, you were a fetus.
gazelle@shell.xmission.com (Kenny McCormack): Jan 13 10:51PM

In article <ln8szodwq8.fsf@kst-u.example.com>,
Keith Thompson <kst-u@mib.org> wrote:
...
>discuss C++.
 
>I don't see Rick's postings, but it's hard for my killfile to keep
>up with all the people who feel the need to reply to him publicly.
 
You should probably look into setting up your newsreader to have a
whitelist (i.e., a list of the few people who post here whose stuff you
actually will deign to read) rather than trying to maintain a blacklist.
 
--
Faith doesn't give you the answers; it just stops you from asking the questions.
Keith Thompson <kst-u@mib.org>: Jan 13 02:22PM -0800

>>> come back with quotes from his zombie controller's magik book.
 
> Best you can do is get just a bit offensive with him as others do here.
> At least gives you some little satisfaction.
 
Please don't. Replying to him just encourages him to post more,
which disrupts the newsgroup for those of us who come here to
discuss C++.
 
I don't see Rick's postings, but it's hard for my killfile to keep
up with all the people who feel the need to reply to him publicly.
 
--
Keith Thompson (The_Other_Keith) kst@mib.org <http://www.ghoti.net/~kst>
Will write code for food.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
"Öö Tiib" <ootiib@hot.ee>: Jan 14 04:39AM -0800

On Friday, 11 January 2019 18:00:04 UTC+2, Michael Powell wrote:
> > * "string" is ... and so on.
 
> Thanks for responding, and to others.
 
> What's your source for that?
 
Why you avoid answering from where you got the
wordage that you used? My source is every
specification that I have read. Whatever language
or interface that supports JSON uses Name (not
Key), String (not Str) and Number (not Numeric).
Look at json.org it also uses those:
https://www.json.org/
It is difficult to discuss stuff when terminology is
pointlessly skewed by some part.
 
> > to be something like:
 
> At least at the moment, Object is represented by:
 
> using object_t = std::vector<boost::tuple<key_t, value_t>>;
 
Ok. It wasn't when I looked at your code.
 
> The awkward part is that value_t needs to be a fully declared type at the moment Boost.Variant finds it in the template specialization. I have, however, taken to declaring the type alias immediately thereafter so that at least subscribers to value_t see it as the expected object_t.
 
Yes, the whole idea of JSON is deeply recursive.
That means we have to use another layer of
indirection at spots of breaking the recursion.
 
With boost::variant there is possibility to make
recursive variants. Unfortunately these are tricky
to make compile on some compilers and then
heap-allocate under the hood.
 
I would instead go with std::variant and
std::unique_ptr to not fully defined types at
spots of breaking recursion. It is simple enough to
use first at spots chosen by "best readability".
 
Later the spots are easier to change and also
management of owned object of unique_ptr is
simpler to customize for to optimize. That "later"
in sense that it is performance optimization ... for
time when the thing works and so there is point
to optimize it at all.
 
I am in doubt about Boost.Spirit ... IOW why it?
When I tried it then it compiled awkwardly slowly
and the compiling diagnostics were horrible when
it failed to compile. Parse-time error handling was
quite inconvenient to hook into it. Resulting parser
performed about 3 times worse than equivalent
parser made by other parser generator. That all
made it feel like lose-lose-lose choice. It was
about 4 or 5 years ago, maybe spirit has improved
in some aspects since then but I doubt it.
 
 
> > using object = std::unordered set<name,value>;
 
> It's an excellent point in and of itself. I was unaware of Unordered Set, per se; that would be preferable, I think; it would certainly be more concise than Vector of Member Tuples. The main issue there would be whether I could synthesize its elements or otherwise emplace them during parsing. As others mentioned, yes, more of a question for Boost and/or Boost.Spirit forums.
 
Hmm. Yes, My mistake ... actually it should be
unordered_map<name, value>. Its interface is
most convenient. For example value v to name n
in object o can be set just with "o[n] = v;".
The o[n] returns reference to value or default-
constructed value when it didn't exist.
 
It is likely that vector of pairs is performing better
when objects have only few members and
unorded_map is better when objects have lot of
members but making such choices or using
both (as variants) is again about performance,
so leave for later. Choose by convenience of
interface for task first and only when all tests
run then tinker with performance.
 
"Öö Tiib" <ootiib@hot.ee>: Jan 14 05:35AM -0800

On Friday, 11 January 2019 18:53:46 UTC+2, Michael Powell wrote:
> On Friday, January 11, 2019 at 11:48:52 AM UTC-5, Michael Powell wrote:
> > On Friday, January 11, 2019 at 10:09:19 AM UTC-5, Öö Tiib wrote:
 
> > Perhaps an Unordered Map, Multimap, etc, are better? Suggestions?
 
Use multimap if you want to parse without (typical) constraint
that names must be unique within object.
 
The standard:
http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf
does not require those be unique:
 
| The JSON syntax does not impose any restrictions on the
| strings used as names, does not require that name strings
| be unique, and does not assign any significance to the
| ordering of name/value pairs.
 
However most parsers silently (and few noisily) fail when
object has several members with same name. I would go
with a map and would throw on multiple members with
same name. One should use array member instead of
multiple members with same name.
 
> I think you probably meant std::map, or at least std::unordered_map. That would be a closer implementation detail to the object member associative array.
 
Yes, my mistake, meant std::unordered_map.
seeplus <boardmounrt@gmail.com>: Jan 13 10:08PM -0800

You might like to look at this book at Packt publishing
 
Modern C++: Efficient and
Scalable Application
Development
 
Richard Grimes, Marius Bancila
 
It is published Nov 18 so uptodate ... for now.
They have joined together some other books.
Fairly well known authors and reviewers.
Quite a good writing style and it covers just about everything. 675pp.
 
*** Best of all, currently on sale for US$5 for pdf. Cup of coffee.
 
Books can sometimes be better than using on line info.
You can see the whole of C++ at one glance and pick out stuff
that you don't know, or find things you could/should use.
Good for plane, train, bus or where no web access.
 
Of course opinions do differ on the language, and
all big books get errata. There is none listed at present.
Chris Vine <chris@cvine--nospam--.freeserve.co.uk>: Jan 13 07:49PM

On Sat, 12 Jan 2019 17:34:59 -0000 (UTC)
> examples using lambda functions, but have been unable
> to see what's the actual benefit of using closures in
> the first place.
 
One common use of closures is for partial application (which you can
google for in your own time), converting a function taking some
arguments into a function taking less or no arguments. (A value bound
or captured from the environment by a closure is somewhat confusingly
called a "free variable" in the lambda calculus.)
 
In C++ std::bind can also be used to construct closures, and you can
read up on that too.
 
But don't underestimate the usefulness of lambda expressions for other
purposes, particularly as temporary unnamed function objects. They can
be very useful for passing "on the fly" to functions taking callable
objects - the algorithms in the standard library have many such
functions. It makes code much more readable when done properly.
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: