Tuesday, July 18, 2017

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

Lynn McGuire <lynnmcguire5@gmail.com>: Jul 18 12:34PM -0500

"Death to C, ++"
https://techcrunch.com/2017/07/16/death-to-c/
 
"The C programming language is terrible. I mean, magnificent, too. Much
of the world in which we live was built atop C. It is foundational to
almost all computer programming, both historically and practically;
there's a reason that the curriculum for Xavier Niel's revolutionary
"42" schools begins with students learning how to rewrite standard C
library functions from scratch. But C is no longer suitable for this
world which C has built."
 
I disagree. True, working in C and C++ is like walking on a tight rope.
But, if one cannot walk the tightrope then one should find something
else to do in life. After all, working on the high wire is not for
everyone.
 
Lynn
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Jul 18 10:39AM -0700

On Tuesday, July 18, 2017 at 1:34:48 PM UTC-4, Lynn McGuire wrote:
> But, if one cannot walk the tightrope then one should find something
> else to do in life. After all, working on the high wire is not for
> everyone.
 
I agree with you completely, Lynn. Certain people are tailored for
certain tasks, but not everyone is tailored for every task. In my
experience you can't really teach someone to be a developer. They
either are or they aren't innately. The only thing you can do is
teach people policies and procedures to follow, whereas with the
innate developer, they will understand things implicitly, and be
able to build and expand upon ideas they're exposed to, making the
final form of their contribution something greater than the parts
it's comprised of.
 
C is not for the weak, but it is essential, and it is exactly for
those who are able to wield it.
 
Thank you,
Rick C. Hodgin
Melzzzzz <Melzzzzz@zzzzz.com>: Jul 18 05:40PM

> else to do in life. After all, working on the high wire is not for
> everyone.
 
> Lynn
"
If you're a developer you already know where I'm going, of course: to
tout the virtues of Rust, which is, in fact, a viable C/C++ replacement.
"
Rust is pain. That language is worst nightmare I had misfortune to program in.
Inability to implement doubly linked list and take two mutable references to
single array is just one example. Rust is abomination of language, pure
and simple.
 
 
--
press any key to continue or any other to quit...
"Öö Tiib" <ootiib@hot.ee>: Jul 18 11:58AM -0700

On Tuesday, 18 July 2017 20:40:41 UTC+3, Melzzzzz wrote:
> Inability to implement doubly linked list and take two mutable references to
> single array is just one example. Rust is abomination of language, pure
> and simple.
 
Yes, strange language that did born after D and Go (that both are IMHO
more pleasant). Rust is I think for people who don't want to program but
to solve a puzzle that does not let them to program. How it is better
than C++? No idea.
"Öö Tiib" <ootiib@hot.ee>: Jul 18 12:41PM -0700

On Tuesday, 18 July 2017 20:34:48 UTC+3, Lynn McGuire wrote:
> But, if one cannot walk the tightrope then one should find something
> else to do in life. After all, working on the high wire is not for
> everyone.
 
The decades with C have caused lot of great code checking, testing
and debugging tools to raise that make even C quite safe to use.
It feels just bit inconvenient language (and not like on high wire).
 
C++ additionally contains such convenience subset with what the
feeling is like running in park. Memory corruptions with buffer
overflows or dangling pointers are not possible when using that
subset. But C++ is large and so it takes years to learn the borders
with it and rest of the "technically valid" C++ language.
 
Rust however has replaced that with a painful ball and chain that
don't let one to run nor to get to high wire. If someone likes
that pain then there are still bad news. Rust's inter-operation with
C++ (if programmer for example wants to refactor legacy C++ into
Rust step by step) is stinky. Rest of the competition that are
supposedly made with similar goals (like D, Go and Swift)
interop with C++ way better.

So unless the C community decides to switch to Rust for unknown
reason I don't think it will live very long.
jacobnavia <jacob@jacob.remcomp.fr>: Jul 18 11:30PM +0200

Le 18/07/2017 à 19:40, Melzzzzz a écrit :
> Rust is pain. That language is worst nightmare I had misfortune to program in.
> Inability to implement doubly linked list
 
You can see an implementation of a double linked list here:
 
http://bluss.github.io/ixlist/target/doc/ixlist/struct.List.html
 
A double linked list has 2 indices into an array of elements.
 
A correct implementation would allow you to grow the array as you index
it, an index bigger than 1 of the last elements implies an extension of
the array, using memory as the list grows.
 
What is a pointer?
 
It is an index into an array of addressable bits, consecutively. Modern
CPUs offer virtual memory, where the OS gives you a huge adressable
space. Underlying the virtual memory is the real memory, that could have
some GB in most machines.
jacobnavia <jacob@jacob.remcomp.fr>: Jul 18 11:31PM +0200

Le 18/07/2017 à 20:58, Öö Tiib a écrit :
> Rust is I think for people who don't want to program but
> to solve a puzzle that does not let them to program.
 
Parse error...
 
I can't figure out that sentence.
 
What do you want to say?
Jerry Stuckle <jstucklex@attglobal.net>: Jul 18 05:42PM -0400

On 7/18/2017 1:40 PM, Melzzzzz wrote:
> Inability to implement doubly linked list and take two mutable references to
> single array is just one example. Rust is abomination of language, pure
> and simple.
 
Agreed that Rust is a pain. But there are programmers which can't
handle the responsibilities C places on them, and need some other
language that better holds their hand.
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
woodbrian77@gmail.com: Jul 18 02:57PM -0700

On Tuesday, July 18, 2017 at 2:42:20 PM UTC-5, Öö Tiib wrote:
> > everyone.
 
> The decades with C have caused lot of great code checking, testing
> and debugging tools to raise that make even C quite safe to use.
 
No mention of the free enterprise system that has been the
soil for the development of the tools. They just happened
over time, right? If I hadn't adopted an on line business
model years ago, I would have been devoured by the entitlement
mentality that you promote.
 

> overflows or dangling pointers are not possible when using that
> subset. But C++ is large and so it takes years to learn the borders
> with it and rest of the "technically valid" C++ language.
 
On-line code generators are intended to help with that. Users
provide a high-level description of what they want and get
back a low-level implementation.
 
 
Brian
Ebenezer Enterprises - In G-d we trust.
http://webEbenezer.net
woodbrian77@gmail.com: Jul 18 03:07PM -0700

On Tuesday, July 18, 2017 at 4:41:49 PM UTC-5, Jerry Stuckle wrote:
 
> Agreed that Rust is a pain. But there are programmers which can't
> handle the responsibilities C places on them, and need some other
> language that better holds their hand.
 
I like some of C, but I like it primarily as a part of C++.
 
 
Brian
Ebenezer Enterprises - I'm thankful for Jerry as he
has reminded me to be thankful for C++.
 
http://webEbenezer.net
"Öö Tiib" <ootiib@hot.ee>: Jul 18 03:57PM -0700

On Wednesday, 19 July 2017 00:31:54 UTC+3, jacobnavia wrote:
 
> Parse error...
 
> I can't figure out that sentence.
 
> What do you want to say?
 
I wanted to say that with Rust one is constantly stuck for
seemingly artificial reasons imposed by language. So it is
perhaps fine language for people who don't want to program
at all.
"Öö Tiib" <ootiib@hot.ee>: Jul 18 04:17PM -0700

> over time, right? If I hadn't adopted an on line business
> model years ago, I would have been devoured by the entitlement
> mentality that you promote.
 
What you mean? Software on what people work gets inevitably better
over time. No difference if there is tyranny or free market or
communism and who has what rights or privileges. Right here where I
now live was fully blossoming Communism when I first wrote a
program in C.
leigh.v.johnston@googlemail.com: Jul 18 04:36AM -0700

Fuck. Off.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Jul 18 05:28AM -0700

> ..
 
Jesus Christ wants to forgive your sin without judgment, Leigh. He
wants you and all that is uniquely and distinctly you to be a part of
His eternal Kingdom. He wants you to paint His universe with your
own mark, making that portion He gives to you your very own.
 
http://biblehub.com/kjv/john/14.htm
 
1 Let not your heart be troubled: ye believe in God, believe
also in me. [Note: He was speaking to Jews at this time]
2 In my Father's house are many mansions: if it were not so,
I would have told you. I go to prepare a place for you.
3 And if I go and prepare a place for you, I will come again,
and receive you unto myself; that where I am, there ye may
be also.
 
There is a time of fulfillment which is at hand. If you study the
prophecies in the Bible, and the timelines, there is a six day
pattern given by God for how long He took to create the Earth. It
mirrors a 6,000 year pattern of man's existence on the planet, with
the 7th day (6,001 to 7,000 years) being a day of rest.
 
Soon and very soon a day is coming when the Lord returns. All who
are His will go with Him to eternity. All who are not His will be
cast into the depths of Hellfire for all time, because they would
not believe the truth.
 
Investigate the Bible, Leigh. You'll find there are no holes in it,
and that it has every fundamental answer you've ever sought. It has
this information because it is from God.
 
Thank you,
Rick C. Hodgin
Good Guy <hello.world@example.com>: Jul 18 06:23PM +0100

> Fu.
Please don't swear on these newsgroups. Use your kill-switch if you
don't like to read about God.
 
 
 
 
--
With over 500 million devices now running Windows 10, customer
satisfaction is higher than any previous version of windows.
James Moe <jimoeDESPAM@sohnen-moe.com>: Jul 18 11:35AM -0700

On 07/18/2017 10:23 AM, Good Guy wrote:
 
Good Guy: What is with the giant, ugly, poorly laid out signature?
 
 
--
James Moe
jmm-list at sohnen-moe dot com
Think.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Jul 18 11:47AM -0700

On Tuesday, July 18, 2017 at 2:36:20 PM UTC-4, James Moe wrote:
> On 07/18/2017 10:23 AM, Good Guy wrote:
 
> Good Guy: What is with the giant, ugly, poorly laid out signature?
 
It came through thusly with [ and ] substituted for greater than and
less than signs:
 
[div class="moz-signature"]-- [br]
[div class="moz-signature"]
[div style="width: 340px;height: 290px; background-color: blue;
color: yellow;font-weight: bolder; font-size:200%; text-align:
center; margin: 30px 5px 30px 5px;"]With over 500 million
devices now running Windows 10, customer satisfaction is
higher than any previous version of windows.[/div]
[/div]
[/div]
 
Thank you,
Rick C. Hodgin
Good Guy <Hello.World@Example.com>: Jul 18 10:26PM +0100

On 18/07/2017 19:35, James Moe wrote:
> Good Guy: What is with the giant, ugly, poorly laid out signature?
 
To reach god faster in 0(N) time but it seems I only succeeded to touch
your raw nerve. I'll try again anyway!!!
 
 
 
--
With over 500 million devices now running Windows 10, customer
satisfaction is higher than any previous version of windows.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Jul 18 01:46PM -0700

There are a lot of naysayers, a lot of detractors in this world. They
postulate things that are not true as though they were true, and it is
being done that way to mislead people, confuse people, sow seeds of
doubt in people's minds, encourage thoughts which lead people away from
where they should be and to some other place.
 
I would like to ask everyone to to the Bible and learn for yourself
about Jesus Christ. You've heard me talk about how He came here to
forgive your sin and to give you eternal life, but what does that really
mean? God has not left you abandoned. You are not alone in this world.
Even though bad things happen here, it's not because of God, and God is
the solution to ending all manner of bad things.
 
-----
Right now you are alive in this world in your body, but your spirit is
dead in sin. If it were something tangible you'd see it like a corpse
on a table long dead.
 
What Jesus does is come to you and take away your sin before God. He
transfers your sin onto Himself (like taking a dirty jacket off and
giving it to Him). All of your sin leaves you physically and goes to
Him so that He bears the burden of your sin, not you.
 
When Jesus does this, that spiritual corpse comes alive and you are
then living spiritually. This immediately asserts itself into your
life and you change in that instant. Literally the old you dies, and
the new you is born with the rebirth of that spirit life.
 
From that day forward everything about your life will change, and you
are able to move toward and do things that were not possible before.
You're able to move away from and shun things you were powerless over
before. Jesus gives you authority and power by His resurrection from
the dead, and your new spirit life is in constant communion with Him
in the spirit. You are able to receive guidance from His own Holy
Spirit continually, and He will lead you away from false things and
toward true things.
 
-----
Whoever you are, wherever you're from ... you need Jesus Christ in
order to know the truth. You need to have your sin forgiven so you
can be alive eternally.
 
Until this happens you are walking in darkness, falseness, and you
have no life in you, even though your physical body is alive, for it
is the spiritual life that is eternal, not our physical bodily life.
 
When we leave this world and depart from our physical body, we will
go to one of two places: Heaven (being forgiven by Jesus here on
this Earth) or Hellfire (with our sin remaining on us).
 
In either case, our spirit will reunite with a new body, an eternal
body, one that is literally immortal. For the soul going off to
Heaven it will be love and peace and unending growth and prosperity.
For the one who has rejected Jesus Christ's offer of forgiveness,
their sin will overtake them and they will only burn in agony and
torment in the unquenchable flames of Hell forever.
 
-----
There is this binary end to your life: Heaven or Hell. And it has
to do entirely with what you did with Jesus.
 
Ask Him to forgive your sin today, and pass from eternal death to
eternal life today. Begin the next chapter of your existence, the
one that is written in eternal life, and ends happily ever after.
 
Thank you,
Rick C. Hodgin
rami18 <coco@coco.com>: Jul 18 02:09PM -0400

Hello...
 
 
Read this:
 
C++ MemPool for real-time systems was updated to version 1.09
 
You can download it from:
 
https://sites.google.com/site/aminer68/c-mempool-for-real-time-systems
 
 
And Delphi and FreePascal MemPool for realtime systems was updated to
version 1.02
 
You can download it from:
 
https://sites.google.com/site/aminer68/mempool-for-realtime-systems
 
 
 
Thank you,
Amine Moulay Ramdane.
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Jul 18 07:36AM -0700

There is a corollary thread on comp.lang.c:
 
https://groups.google.com/d/msg/comp.lang.c/1F8H2QfQDdM/We0vZ8G6BwAJ
 
Some questions have been asked and answered. It is informative.
 
Thank you,
Rick C. Hodgin
Chris Vine <chris@cvine--nospam--.freeserve.co.uk>: Jul 18 11:13AM +0100

On Mon, 17 Jul 2017 11:00:20 -0700 (PDT)
rep_movsd <rep.movsd@gmail.com> wrote:
[snip]
 
> In actuality I need to parse a LISP cons like data structure (which
> is a multiway tree), so the statically allocated thing is likely to
> be limiting.
 
This won't work in C++. constexpr expressions are not like lisp
macros: you don't have the whole language available for constructing
at compile time the output form which is to be evaluated at run time,
as you do with a lisp. Everything in a constexpr expression is a
literal of some kind - a compile-time constant or a literal type, or a
constexpr function taking and returning literal types.
 
This means amongst other things that you cannot do anything in a
constexpr expression which allocates memory. More generally, you
cannot return or take as parameters non-literal types, including
std::string.
 
As a very trivial example, a lisp macro can call the language's time
functions to embed the time of compilation in the compiled binary. This
absolutely won't work in C++ (you would use the __DATE__ and __TIME__
macros instead).
 
Have a look at this:
http://en.cppreference.com/w/cpp/language/constexpr
Chris Vine <chris@cvine--nospam--.freeserve.co.uk>: Jul 18 11:35AM +0100

On Tue, 18 Jul 2017 11:13:04 +0100
> as you do with a lisp. Everything in a constexpr expression is a
> literal of some kind - a compile-time constant or a literal type, or a
> constexpr function taking and returning literal types.
 
On reflection I suppose it is worth adding first that you couldn't
parse a cons structure (singly-linked list composed of pairs) in a lisp
macro either, unless the list structure is a literal known at compile
time, for obvious reasons; and secondly that you could write a parser
in C++ to operate on such a compile time structure as a code generator
and then compile that - which is more or less what a lisp macro does.
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: