Monday, July 3, 2017

Digest for comp.lang.c++@googlegroups.com - 9 updates in 7 topics

ram@zedat.fu-berlin.de (Stefan Ram): Jul 03 09:21PM

>complex.hpp, (the struct) complex_tio.hpp (std::stream
>functions including parsing) and complex_gui.hpp (includes
>gui-code).
 
My fundamental idea is that when there are two entities
types, that we have three classes: For example: Say, we have
 
- an entity type »complex number« and
 
- an entity type »GUI« (a specific GUI library).
 
Now, the three classes are:
 
class complex
 
contains all code that only needs to change when
the representation of a complex number changes,
 
class GUI
 
contains all code that only needs to change when
the GUI library changes, and
 
class complex_GUI
 
contains all code that needs to change when the
representation of a complex number changes or
when the GUI library changes.
 
The last class is a friend of the first two classes.
(I also call it »the product« of the first two
classes.)
 
The last class should be empty in an ideal world,
but for practical purposes (like optimization) it
might be non-empty.
 
Since C++ does have the concept of friends (which
is missing in some other languages), I find it to
be quite good adapted to my ideas.
peter koch <peter.koch.larsen@gmail.com>: Jul 03 02:04PM -0700

Hello group,
 
I have a question that is not technical in nature. Still, I believe that the answer might depend on the fact that the language is C++, given its rather antiquated way of handling compilation.
 
I have a group of user-defined types for which I have what I would categorize of non-trivial (text-based) I/O. Those types can also be displayed via a GUI.
So what is the "proper" way to organize your source?
Say I have a type:
 
struct Complex
{
Complex1 field1;
Complex2 field2;
...
ComplexN fieldN;
};
 
This structure is fully streamable, so you can both stream it out (which is more or less trivial) and stream it in (which is non-trivial, requiring a parser - implemented in boost::spirit).
 
Complex can also be dispalyed on a GUI. Again, the code is rather complex and heavily templated.
 
Currently, I have chosen to use three files to represent the class:
complex.hpp, (the struct) complex_tio.hpp (std::stream functions including parsing) and complex_gui.hpp (includes gui-code). This is not a bad solution, I think, but I would like to also hear YOUR opinion. ;-)
 
/Peter
rami18 <coco@coco.com>: Jul 03 04:08PM -0400

Hello..
 
Read more:
 
You are seeing me writing on this forum, but i have to be smart..
 
I have already made money by selling some of my softwares, and by being
a consultant in computer programming and network administration,
and i have already worked as a network administrator, and i have
already worked as a computer programmer, now my following step
is following:
 
I want to sell and include my following libraries in some commercial
softwares such this:
 
https://www.embarcadero.com/?utm_source=google&utm_medium=cpc&utm_campaign=embcplusplus&utm_content=brand&utm_term=embarcadero
 
 
Here is my following library that are my inventions that i want
to include in RAD Studio of Embarcadero and other companies:
 
You have to appreciate my inventions of my C++ synchronization objects
library..
 
Here is why:
 
Here is the problem of optimistic Transactional memory:
 
If there is more conflicts between reads and writes you have to rollback
and to serialize also etc. and this will be less energy efficient and it
will be less faster than pessimistic locking mechanisms
 
And also my C++ synchronization objects library implements some general
synchronization mechanisms for both Memory and IO such as HD or SSD ,
not just for memory like Transactional memory.
 
So i think that my C++ Synchronization objects and my Delphi
synchronization objects are still really useful..
 
You can read about it and download it from:
 
https://sites.google.com/site/aminer68/c-synchronization-objects-library
 
 
Thank you,
Amine Moulay Ramdane.
Dombo <dombo@disposable.invalid>: Jul 03 09:25PM +0200

Op 06-Jun-17 om 18:38 schreef Tristan B. Kildaire:
 
>> /Flibble
 
> Teach how to malloc().
 
> Please, teach me. Thank you.
 
Why not just use 'new'?
"Öö Tiib" <ootiib@hot.ee>: Jul 03 12:58PM -0700

On Monday, 3 July 2017 22:22:51 UTC+3, Dombo wrote:
 
> > Teach how to malloc().
 
> > Please, teach me. Thank you.
 
> Why not just use 'new'?
 
Because usually where 'new' is written in C++ code it is not best there.
Usually automatic variable or direct data member, 'std::optional',
'std::array', 'std::vector' or 'std::make_unique' are better, safer and
more efficient to use at that spot.
rami18 <coco@coco.com>: Jul 03 03:25PM -0400

Hello....
 
 
About my Diploma..
 
I have said that i have gotten my Diploma in Microelectronics and
informatics in 1988, it is not a college level diploma, my Diploma is a
university level Diploma, it looks like an Associate degree or the
french DEUG.
 
Read here about the Associate degree:
 
https://en.wikipedia.org/wiki/Associate_degree
 
I have also succeeded one year of pure mathematics at the university
level of mathematics.
 
So i have got a college Diploma, and after that i have also studied and
succeeded 3 years at the university level.
 
And i have worked as a computer programmer and i have worked as a
a network administrator and i have worked as a software consultant,
and i have also studied operational research , this is why
you have seen me implementing in front of you my PERT library,
here is my some of other projects:
 
 
Why Go Optimization ?
 
Shorter horizons. Planning horizons are now typically around three
months, thanks to the reporting period required by the gnomes on Wall
Street. Only efficient optimization is compatible with that kind of
requirements.
 
Tactical planning. It's already a jungle out there when it comes to
developing or installing large-scale distributed applications. That,
combined with shorter development times and launch horizons, requires
efficient optimization.
 
Capital efficiency. Efficient optimization is not just about the future.
Efficient optimization addresses the serious need to squeeze more out of
your current capital equipment.
 
Better tools. To solve performance problems in datacenters involving
1000s of servers spanning multiple tiers, we need tools that go beyond
simple reporting and enable better data discovery.
 
And here is some of my useful software tools that i have created:
 
Universal Scalability Law program was updated to version 3.12
 
Author: Amine Moulay Ramdane
 
Now it compiles correctly on LLVM-based Delphi compilers..
 
Where also do you use it ?
 
You use it for example to optimize more the cost/performance ratio on
multicores and manycores.
 
With -nlr option means that the problem will be solved with the
mathematical nonlinear regression using the simplex method as a
minimization, if you don't specify -nlr, the problem will be solved by
default by the mathematical polynomial regression, and since it uses
regression , you can use it for example to test your system on many more
cores with just a few points, and after that using regression it searchs
for the cost/performance ratio that is optimal for you.
 
Please read more about my Universal Scalability Law for Delphi and
FreePascal, it comes with a graphical and a command-line program.
 
I have included a 32 bit and 64 bit windows executables called usl.exe
and usl_graph.exe inside the zip, please read the readme file to know
how to use it, it is a very powerful tool.
 
You can read about it and download the new version 3.12 from here:
 
https://sites.google.com/site/aminer68/universal-scalability-law-for-delphi-and-freepascal
 
And:
 
You have to appreciate my inventions of my C++ synchronization objects
library..
 
Here is why:
 
Here is the problem of optimistic Transactional memory:
 
If there is more conflicts between reads and writes you have to rollback
and to serialize also etc. and this will be less energy efficient and it
will be less faster than pessimistic locking mechanisms
 
And also my C++ synchronization objects implements some general
synchronization mechanisms for both Memory and IO such as HD or SSD ,
not just for memory like Transactional memory.
 
So i think that my C++ Synchronization objects and my Delphi
synchronization objects are still really useful..
 
You can read about it and download it from:
 
https://sites.google.com/site/aminer68/c-synchronization-objects-library
 
 
And:
 
Scalable Parallel C++ Conjugate Gradient Linear System Solver
Library version 1.64
 
Author: Amine Moulay Ramdane
 
Description:
 
This library contains a Scalable Parallel implementation of
Conjugate Gradient Dense Linear System Solver library that is
NUMA-aware and cache-aware, and it contains also a Scalable
Parallel implementation of Conjugate Gradient Sparse Linear
System Solver library that is cache-aware.
 
Please download the zip file and read the readme file inside the
zip to know how to use it.
 
Language: GNU C++ and Visual C++ and C++Builder
 
Operating Systems: Windows, Linux, Unix and Mac OS X on (x86)
 
 
You can download it from:
 
https://sites.google.com/site/aminer68/scalable-parallel-c-conjugate-gradient-linear-system-solver-library
 
 
You can download my other projects from:
 
https://sites.google.com/site/aminer68/
 
 
Thank you,
Amine Moulay Ramdane.
rami18 <coco@coco.com>: Jul 03 03:24PM -0400

Hello........
 
 
Read more:
 
I have said that:
 
You have to appreciate my inventions of my C++ synchronization objects
library..
 
Here is why:
 
Here is the problem of optimistic Transactional memory:
 
If there is more conflicts between reads and writes you have to rollback
and to serialize also etc. and this will be less energy efficient and it
will be less faster than pessimistic locking mechanisms
 
And also my C++ synchronization objects implements some general
synchronization mechanisms for both Memory and IO such as HD or SSD ,
not just for memory like Transactional memory.
 
So i think that my C++ Synchronization objects and my Delphi
synchronization objects are still really useful..
 
You can read about it and download it from:
 
https://sites.google.com/site/aminer68/c-synchronization-objects-library
 
 
Thank you,
Amine Moulay Ramdane.
rami18 <coco@coco.com>: Jul 03 12:17PM -0400

Hello...........
 
 
My PERT library is here..
 
PERT (The program evaluation and review technique) for Delphi and
Freepascal was updated to version 1.1
 
In my previous version, i have forgotten to include some java files,
and now i have included them in this version 1.1 , and now my PERT
library is now working correctly.
 
You can download version 1.1 of my PERT library from:
 
https://sites.google.com/site/aminer68/pert-the-program-evaluation-and-review-technique-for-delphi-and-freepascal
 
 
Thank you,
Amine Moulay Ramdane.
Chris Vine <chris@cvine--nospam--.freeserve.co.uk>: Jul 03 07:56PM +0100

Please go away.
 
You are a hopeless fuckwit. Your posting has nothing to do with C++
(neither did your ones yesterday, which you have inevitably had to
correct today because your code is worthless crap which no one is
ever going to use).
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: