Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c++ > #88820 > unrolled thread
| Started by | Zorro <zorabih@gmail.com> |
|---|---|
| First post | 2023-01-24 15:09 -0800 |
| Last post | 2023-02-01 14:03 -0800 |
| Articles | 20 on this page of 27 — 9 participants |
Back to article view | Back to comp.lang.c++
Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-01-24 15:09 -0800
Re: Z++ for Windows and Linux "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-01-24 15:12 -0800
Re: Z++ for Windows and Linux "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-01-24 15:14 -0800
Re: Z++ for Windows and Linux Öö Tiib <ootiib@hot.ee> - 2023-01-24 16:41 -0800
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-01-31 11:07 -0800
Re: Z++ for Windows and Linux scott@slp53.sl.home (Scott Lurndal) - 2023-01-31 19:27 +0000
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-01-31 11:00 -0800
Re: Z++ for Windows and Linux Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2023-01-31 14:22 -0800
Re: Z++ for Windows and Linux "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-01-31 14:29 -0800
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-01-31 15:25 -0800
Re: Z++ for Windows and Linux scott@slp53.sl.home (Scott Lurndal) - 2023-02-01 00:30 +0000
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-02-01 09:28 -0800
Re: Z++ for Windows and Linux scott@slp53.sl.home (Scott Lurndal) - 2023-02-01 18:05 +0000
Re: Z++ for Windows and Linux Tim Rentsch <tr.17687@z991.linuxsc.com> - 2023-02-02 07:09 -0800
Re: Z++ for Windows and Linux Muttley@dastardlyhq.com - 2023-02-02 16:11 +0000
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-02-02 13:39 -0800
Re: Z++ for Windows and Linux Tim Rentsch <tr.17687@z991.linuxsc.com> - 2023-02-02 17:42 -0800
Re: Z++ for Windows and Linux Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2023-01-31 16:32 -0800
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-02-01 08:36 -0800
Re: Z++ for Windows and Linux Muttley@dastardlyhq.com - 2023-02-01 17:10 +0000
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-02-01 10:07 -0800
Re: Z++ for Windows and Linux James Kuyper <jameskuyper@alumni.caltech.edu> - 2023-02-01 13:24 -0500
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-02-01 10:57 -0800
Re: Z++ for Windows and Linux Paavo Helde <eesnimi@osa.pri.ee> - 2023-02-01 08:52 +0200
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-02-01 08:01 -0800
Re: Z++ for Windows and Linux Paavo Helde <eesnimi@osa.pri.ee> - 2023-02-01 19:23 +0200
Re: Z++ for Windows and Linux Zorro <zorabih@gmail.com> - 2023-02-01 14:03 -0800
Page 1 of 2 [1] 2 Next page →
| From | Zorro <zorabih@gmail.com> |
|---|---|
| Date | 2023-01-24 15:09 -0800 |
| Subject | Z++ for Windows and Linux |
| Message-ID | <71b98e95-046c-4de5-8d6a-b7f5b8364d23n@googlegroups.com> |
Z++ is platform-independent "superset" of C++ for distributed computing. z++visual, IDE for developing Z++ applications, runs on Windows and Linux. z++visual makes creating sophisticated GUI, simple, via drag-and-drop. Applications built on either Linux or Windows, will run on both. Z++ applications can communicate with one another. Autonomous agents can travel among Linux and Windows nodes. z++visual is free for personal/educational use. Go to: https://www.zhmicro.com/new_user.php
[toc] | [next] | [standalone]
| From | "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> |
|---|---|
| Date | 2023-01-24 15:12 -0800 |
| Message-ID | <tqpokl$b96f$1@dont-email.me> |
| In reply to | #88820 |
On 1/24/2023 3:09 PM, Zorro wrote: > Z++ is platform-independent "superset" of C++ for distributed computing. > z++visual, IDE for developing Z++ applications, runs on Windows and Linux. > > z++visual makes creating sophisticated GUI, simple, via drag-and-drop. > Applications built on either Linux or Windows, will run on both. > > Z++ applications can communicate with one another. Autonomous agents can > travel among Linux and Windows nodes. > > z++visual is free for personal/educational use. > > Go to: https://www.zhmicro.com/new_user.php I suppose I should read the book first, just to be prudent: https://www.zhmicro.com/z++_book.html ;^)
[toc] | [prev] | [next] | [standalone]
| From | "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> |
|---|---|
| Date | 2023-01-24 15:14 -0800 |
| Message-ID | <tqpoog$b96f$2@dont-email.me> |
| In reply to | #88821 |
On 1/24/2023 3:12 PM, Chris M. Thomasson wrote: > On 1/24/2023 3:09 PM, Zorro wrote: >> Z++ is platform-independent "superset" of C++ for distributed computing. >> z++visual, IDE for developing Z++ applications, runs on Windows and >> Linux. >> >> z++visual makes creating sophisticated GUI, simple, via drag-and-drop. >> Applications built on either Linux or Windows, will run on both. >> >> Z++ applications can communicate with one another. Autonomous agents can >> travel among Linux and Windows nodes. >> >> z++visual is free for personal/educational use. >> >> Go to: https://www.zhmicro.com/new_user.php > > I suppose I should read the book first, just to be prudent: > > https://www.zhmicro.com/z++_book.html The following is going to piss a lot of people off: ________________ // Samples.zpp #include<iostream.h> using namespace ioSpace; ////////////////////////////////////////////////////////////////////// // ---------------------------------------------------------------- // ////////////////////////////////////////////////////////////////////// entry void main(void) output << "Hello World!\n"; ________________ void main God damn it!
[toc] | [prev] | [next] | [standalone]
| From | Öö Tiib <ootiib@hot.ee> |
|---|---|
| Date | 2023-01-24 16:41 -0800 |
| Message-ID | <a27fc7b1-03d2-4024-9a8a-bf51aabcdafen@googlegroups.com> |
| In reply to | #88822 |
On Wednesday, 25 January 2023 at 01:14:39 UTC+2, Chris M. Thomasson wrote: > > void main > > > God damn it! Can't even return if a program completed successfully or failed? Instead some kind of agents start to roam around autonomously and moan "Braiins!" Maybe that is what the "z" comes from.
[toc] | [prev] | [next] | [standalone]
| From | Zorro <zorabih@gmail.com> |
|---|---|
| Date | 2023-01-31 11:07 -0800 |
| Message-ID | <2bc381f4-1688-4631-a7de-6aa286befa6an@googlegroups.com> |
| In reply to | #88824 |
On Tuesday, January 24, 2023 at 6:42:07 PM UTC-6, Öö Tiib wrote: > On Wednesday, 25 January 2023 at 01:14:39 UTC+2, Chris M. Thomasson wrote: > > > > void main > > > > > > God damn it! > Can't even return if a program completed successfully or failed? > Instead some kind of agents start to roam around autonomously > and moan "Braiins!" Maybe that is what the "z" comes from. Answer. Your insult is without any basis. I have answered those who indicated they had trouble. What do you mean: Can't even return if a program completed successfully or failed? What did you do? Insults and other tactics will not stop people who no better to give themselves a chance.
[toc] | [prev] | [next] | [standalone]
| From | scott@slp53.sl.home (Scott Lurndal) |
|---|---|
| Date | 2023-01-31 19:27 +0000 |
| Message-ID | <jYdCL.560706$vBI8.198401@fx15.iad> |
| In reply to | #88928 |
Zorro <zorabih@gmail.com> writes: >On Tuesday, January 24, 2023 at 6:42:07 PM UTC-6, =C3=96=C3=B6 Tiib wrote: >> On Wednesday, 25 January 2023 at 01:14:39 UTC+2, Chris M. Thomasson wrote= >:=20 >> >=20 >> > void main=20 >> >=20 >> >=20 >> > God damn it! >> Can't even return if a program completed successfully or failed?=20 >> Instead some kind of agents start to roam around autonomously=20 >> and moan "Braiins!" Maybe that is what the "z" comes from. > >Answer. >Your insult is without any basis. I have answered those who indicated they = >had trouble. >What do you mean: Can't even return if a program completed successfully or = >failed?=20 > >What did you do? > >Insults and other tactics will not stop people who no better to give themse= >lves a chance. > I'm reluctant to interfere with the rant fest, but I believe Tiib was commenting on the apparent inability of Z++ to return a completion status to the program (e.g. shell) which executed the Z++ application; which can then be subsequently used to determine the success of the application (or a myriad of other uses) in a shell script or parent process. In C, that would be the final return statement in the function 'main' which is specified to return a signed integer value.
[toc] | [prev] | [next] | [standalone]
| From | Zorro <zorabih@gmail.com> |
|---|---|
| Date | 2023-01-31 11:00 -0800 |
| Message-ID | <689fd027-a769-4341-96c2-011c59f6b644n@googlegroups.com> |
| In reply to | #88822 |
On Tuesday, January 24, 2023 at 5:14:39 PM UTC-6, Chris M. Thomasson wrote: > On 1/24/2023 3:12 PM, Chris M. Thomasson wrote: > > On 1/24/2023 3:09 PM, Zorro wrote: > >> Z++ is platform-independent "superset" of C++ for distributed computing. > >> z++visual, IDE for developing Z++ applications, runs on Windows and > >> Linux. > >> > >> z++visual makes creating sophisticated GUI, simple, via drag-and-drop. > >> Applications built on either Linux or Windows, will run on both. > >> > >> Z++ applications can communicate with one another. Autonomous agents can > >> travel among Linux and Windows nodes. > >> > >> z++visual is free for personal/educational use. > >> > >> Go to: https://www.zhmicro.com/new_user.php > > > > I suppose I should read the book first, just to be prudent: > > > > https://www.zhmicro.com/z++_book.html > The following is going to piss a lot of people off: > ________________ > // Samples.zpp > #include<iostream.h> > using namespace ioSpace; > ////////////////////////////////////////////////////////////////////// > // ---------------------------------------------------------------- // > ////////////////////////////////////////////////////////////////////// > entry void main(void) > output << "Hello World!\n"; > ________________ > > > void main > > > God damn it! Answer: This program does not compile. You get error: Error 50001 (Linker): No entry points found. So, what are you trying to run? A function in Z++ must end with: "end;". In fact all constructs have their ending tag. For instance if ... elsif ...else...endif; Second, you can execute both, Debug and Release builds within z++visual. For you program, I checked they run great. If you want to execute a Z++ program outside of z++visual, it must be in Release build. Otherwise you will get a message telling you that your program contains debug info, and terminates. To run a Z++ program from a console, you have two options. Either go the Release directory of your project (via cd), then type zvp Sample.zxe Z++ executable will have extension ".zxe" , find it in Release folder and do as above. Or, do: zvp full-path/Sample.zxe I really do not understand the call: "void main". Sorry for your trouble. However, the product works as documented. Regards.
[toc] | [prev] | [next] | [standalone]
| From | Keith Thompson <Keith.S.Thompson+u@gmail.com> |
|---|---|
| Date | 2023-01-31 14:22 -0800 |
| Message-ID | <87a61ywdhw.fsf@nosuchdomain.example.com> |
| In reply to | #88822 |
"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes:
> On 1/24/2023 3:12 PM, Chris M. Thomasson wrote:
>> On 1/24/2023 3:09 PM, Zorro wrote:
>>> Z++ is platform-independent "superset" of C++ for distributed computing.
>>> z++visual, IDE for developing Z++ applications, runs on Windows and
>>> Linux.
>>>
>>> z++visual makes creating sophisticated GUI, simple, via drag-and-drop.
>>> Applications built on either Linux or Windows, will run on both.
>>>
>>> Z++ applications can communicate with one another. Autonomous agents can
>>> travel among Linux and Windows nodes.
>>>
>>> z++visual is free for personal/educational use.
>>>
>>> Go to: https://www.zhmicro.com/new_user.php
>> I suppose I should read the book first, just to be prudent:
>> https://www.zhmicro.com/z++_book.html
>
> The following is going to piss a lot of people off:
> ________________
> // Samples.zpp
> #include<iostream.h>
> using namespace ioSpace;
> //////////////////////////////////////////////////////////////////////
> // ---------------------------------------------------------------- //
> //////////////////////////////////////////////////////////////////////
> entry void main(void)
> output << "Hello World!\n";
> ________________
>
>
> void main
>
>
> God damn it!
I don't see any good reason why that should annoy anyone. C++ requires
main to return int (and C almost requires the same thing; the details
are off-topic here). There's no reason that a *different language*
should have the same rule (unless it's intended to be a strict superset
of C++, but I don't think it is). It's likely (I haven't checked) that
Z++ has some other mechanism for returning a status to the calling
environment; perhaps it can call std::exit().
--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for XCOM Labs
void Void(void) { Void(); } /* The recursive call of the void */
[toc] | [prev] | [next] | [standalone]
| From | "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> |
|---|---|
| Date | 2023-01-31 14:29 -0800 |
| Message-ID | <trc4o6$9u5$1@dont-email.me> |
| In reply to | #88930 |
On 1/31/2023 2:22 PM, Keith Thompson wrote: > "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes: >> On 1/24/2023 3:12 PM, Chris M. Thomasson wrote: >>> On 1/24/2023 3:09 PM, Zorro wrote: >>>> Z++ is platform-independent "superset" of C++ for distributed computing. >>>> z++visual, IDE for developing Z++ applications, runs on Windows and >>>> Linux. >>>> >>>> z++visual makes creating sophisticated GUI, simple, via drag-and-drop. >>>> Applications built on either Linux or Windows, will run on both. >>>> >>>> Z++ applications can communicate with one another. Autonomous agents can >>>> travel among Linux and Windows nodes. >>>> >>>> z++visual is free for personal/educational use. >>>> >>>> Go to: https://www.zhmicro.com/new_user.php >>> I suppose I should read the book first, just to be prudent: >>> https://www.zhmicro.com/z++_book.html >> >> The following is going to piss a lot of people off: >> ________________ >> // Samples.zpp >> #include<iostream.h> >> using namespace ioSpace; >> ////////////////////////////////////////////////////////////////////// >> // ---------------------------------------------------------------- // >> ////////////////////////////////////////////////////////////////////// >> entry void main(void) >> output << "Hello World!\n"; >> ________________ >> >> >> void main >> >> >> God damn it! > > I don't see any good reason why that should annoy anyone. C++ requires > main to return int (and C almost requires the same thing; the details > are off-topic here). There's no reason that a *different language* > should have the same rule (unless it's intended to be a strict superset > of C++, but I don't think it is). It's likely (I haven't checked) that > Z++ has some other mechanism for returning a status to the calling > environment; perhaps it can call std::exit(). > True. I just pointed out that a C programmer is going to possibly get annoyed at the sheer sight of void main.
[toc] | [prev] | [next] | [standalone]
| From | Zorro <zorabih@gmail.com> |
|---|---|
| Date | 2023-01-31 15:25 -0800 |
| Message-ID | <74258a32-da0a-4dbe-afef-f77f6c0b04bcn@googlegroups.com> |
| In reply to | #88931 |
On Tuesday, January 31, 2023 at 4:29:42 PM UTC-6, Chris M. Thomasson wrote: > On 1/31/2023 2:22 PM, Keith Thompson wrote: > > "Chris M. Thomasson" <chris.m.t...@gmail.com> writes: > >> On 1/24/2023 3:12 PM, Chris M. Thomasson wrote: > >>> On 1/24/2023 3:09 PM, Zorro wrote: > >>>> Z++ is platform-independent "superset" of C++ for distributed computing. > >>>> z++visual, IDE for developing Z++ applications, runs on Windows and > >>>> Linux. > >>>> > >>>> z++visual makes creating sophisticated GUI, simple, via drag-and-drop. > >>>> Applications built on either Linux or Windows, will run on both. > >>>> > >>>> Z++ applications can communicate with one another. Autonomous agents can > >>>> travel among Linux and Windows nodes. > >>>> > >>>> z++visual is free for personal/educational use. > >>>> > >>>> Go to: https://www.zhmicro.com/new_user.php > >>> I suppose I should read the book first, just to be prudent: > >>> https://www.zhmicro.com/z++_book.html > >> > >> The following is going to piss a lot of people off: > >> ________________ > >> // Samples.zpp > >> #include<iostream.h> > >> using namespace ioSpace; > >> ////////////////////////////////////////////////////////////////////// > >> // ---------------------------------------------------------------- // > >> ////////////////////////////////////////////////////////////////////// > >> entry void main(void) > >> output << "Hello World!\n"; > >> ________________ > >> > >> > >> void main > >> > >> > >> God damn it! > > > > I don't see any good reason why that should annoy anyone. C++ requires > > main to return int (and C almost requires the same thing; the details > > are off-topic here). There's no reason that a *different language* > > should have the same rule (unless it's intended to be a strict superset > > of C++, but I don't think it is). It's likely (I haven't checked) that > > Z++ has some other mechanism for returning a status to the calling > > environment; perhaps it can call std::exit(). > > > True. I just pointed out that a C programmer is going to possibly get > annoyed at the sheer sight of void main. Thank you. ,Z++ is a "Superset", not an extension of C++, as it it to C. The list of corrections to C++ is too long, here is a few simple ones: The switch statement has an optional initial body where you can check something and return without executing any of the cases. You can also declare objects that can be used in all "cases". The case statements can be written as: "case 1..10:" instead of listing them all, or if not contiguous you can us commas, as in: "case 1, 3, 12:". Since strings are built-in types, they can be used as case labels. Z++ has a simple construct called pattern for specifying conditions for instantiating a template. e.g template<type some-type : name-of-pattern>. At instantiation, the pattern is checked and if not followed you will get an error. The exception mechanism provides two forms of resumption: resume and repeat, with obvious semantics. The debugger catches all exceptions defined in your program, that were raised but not caught, just as it catches all memory leaks. I will finish with this: Z++ classes and tasks (threaded classes) can have "invariant" which C++ can never have with its heavy-weight exception mechanism which cannot even have a resumption. The reason is that its compiler cannot catch exceptions thrown "by the compiler". It can only catch those thrown by user code. Having said all of that, Z++ is for building platform-independent, "distributed" software. It is NOT to replace C++ for making system software such as an IDE, just as C++ is NOT for writing operating systems. That is the job of C.
[toc] | [prev] | [next] | [standalone]
| From | scott@slp53.sl.home (Scott Lurndal) |
|---|---|
| Date | 2023-02-01 00:30 +0000 |
| Message-ID | <goiCL.517888$iS99.319006@fx16.iad> |
| In reply to | #88933 |
Zorro <zorabih@gmail.com> writes: >On Tuesday, January 31, 2023 at 4:29:42 PM UTC-6, Chris M. Thomasson wrote: >> On 1/31/2023 2:22 PM, Keith Thompson wrote: >> > "Chris M. Thomasson" <chris.m.t...@gmail.com> writes: >Having said all of that, Z++ is for building platform-independent, "distributed" software. It is NOT to replace >C++ for making system software such as an IDE, just as C++ is NOT for writing operating systems. That is the >job of C. Having written two commercial operating systems in C++ and two bare-metal hypervisors in C++, I would dispute that assertion most vociferously. Using carefully chosen subsets of the C++ language is perfectly acceptable and generates code that compares favorably with C and allows the encapsulation of data and methods in class structures.
[toc] | [prev] | [next] | [standalone]
| From | Zorro <zorabih@gmail.com> |
|---|---|
| Date | 2023-02-01 09:28 -0800 |
| Message-ID | <c81e51a6-aa62-478f-ab08-ecc0798ae194n@googlegroups.com> |
| In reply to | #88935 |
On Tuesday, January 31, 2023 at 6:30:21 PM UTC-6, Scott Lurndal wrote: > Zorro <zor...@gmail.com> writes: > >On Tuesday, January 31, 2023 at 4:29:42 PM UTC-6, Chris M. Thomasson wrote: > >> On 1/31/2023 2:22 PM, Keith Thompson wrote: > >> > "Chris M. Thomasson" <chris.m.t...@gmail.com> writes: > > >Having said all of that, Z++ is for building platform-independent, "distributed" software. It is NOT to replace > >C++ for making system software such as an IDE, just as C++ is NOT for writing operating systems. That is the > >job of C. > Having written two commercial operating systems in C++ and two bare-metal hypervisors > in C++, I would dispute that assertion most vociferously. > > Using carefully chosen subsets of the C++ language is perfectly acceptable and > generates code that compares favorably with C and allows the encapsulation > of data and methods in class structures. Every C++ class/struct will have to include a so-called virtual table. This is nothing more than the C "interrupt jump table", which is a struct of pointers to functions to jump to. It did not come with C++ or other extensions of C like Objective C. Every call to a method will also include a pointer "this" in C++ nomenclature. If instances to objects are passed by value as argument, the copy constructor, as well as destructor, will be called on it. And other things I cannot think of now. I agree, and even like the idea of writing certain parts of an operating system with C++. But not the whole thing. There are things that even C cannot do, for which it has "inline" so assembler instructions can be inserted. Of course, C++ can do the same. Yes, "carefully chosen subset of C++" is a great idea, and has been done in the implementation of Z++.
[toc] | [prev] | [next] | [standalone]
| From | scott@slp53.sl.home (Scott Lurndal) |
|---|---|
| Date | 2023-02-01 18:05 +0000 |
| Message-ID | <CRxCL.572693$vBI8.555237@fx15.iad> |
| In reply to | #88949 |
Zorro <zorabih@gmail.com> writes: >On Tuesday, January 31, 2023 at 6:30:21 PM UTC-6, Scott Lurndal wrote: >> Zorro <zor...@gmail.com> writes: >> >On Tuesday, January 31, 2023 at 4:29:42 PM UTC-6, Chris M. Thomasson wrote: >> >> On 1/31/2023 2:22 PM, Keith Thompson wrote: >> >> > "Chris M. Thomasson" <chris.m.t...@gmail.com> writes: >> >> >Having said all of that, Z++ is for building platform-independent, "distributed" software. It is NOT to replace >> >C++ for making system software such as an IDE, just as C++ is NOT for writing operating systems. That is the >> >job of C. >> Having written two commercial operating systems in C++ and two bare-metal hypervisors >> in C++, I would dispute that assertion most vociferously. >> >> Using carefully chosen subsets of the C++ language is perfectly acceptable and >> generates code that compares favorably with C and allows the encapsulation >> of data and methods in class structures. > >Every C++ class/struct will have to include a so-called virtual table. No, that is not the case. The virtual table is only present when function overloads exist and in certain multiple inheritance scenarios. In those case, the overhead is no different that using the traditional mechanisms of indirect calls through a vector of function pointers (e.g. for Virtual File System dispatch tables, or Scheduler dispatch tables, etc). > This is nothing more than the C "interrupt jump table", Actually, it is more, since the compiler handles it automatically rather than the programmer having to create, initialize and maintain the jump vectors. >I agree, and even like the idea of writing certain parts of an operating >system with C++. But not the whole thing. The hypervisor: SLOC Directory SLOC-by-Language (Sorted) 21708 dsm cpp=21708 17714 domain cpp=17714 12276 transport cpp=12276 8689 vserver cpp=8689 8162 debugger cpp=8162 6540 core cpp=6078,asm=462 6456 io cpp=6456 6074 xen cpp=6074 4820 mgmt cpp=4820 4390 mm cpp=4390 1829 include ansic=1286,cpp=543 1636 util cpp=1636 1608 bios cpp=1608 1234 interp cpp=1234 976 boot asm=976 518 tools ansic=403,sh=59,python=56 469 build ansic=248,cpp=221 222 platform cpp=222 0 doc (none) 0 top_dir (none) Totals grouped by language (dominant language first): cpp: 101831 (96.69%) ansic: 1937 (1.84%) asm: 1438 (1.37%) sh: 59 (0.06%) python: 56 (0.05%)
[toc] | [prev] | [next] | [standalone]
| From | Tim Rentsch <tr.17687@z991.linuxsc.com> |
|---|---|
| Date | 2023-02-02 07:09 -0800 |
| Message-ID | <86357odry9.fsf@linuxsc.com> |
| In reply to | #88950 |
scott@slp53.sl.home (Scott Lurndal) writes: > Zorro <zorabih@gmail.com> writes: > >> On Tuesday, January 31, 2023 at 6:30:21 PM UTC-6, Scott Lurndal wrote: >> >>> Zorro <zor...@gmail.com> writes: >>> >>>> On Tuesday, January 31, 2023 at 4:29:42 PM UTC-6, Chris Thomasson wrote: >>>> >>>>> On 1/31/2023 2:22 PM, Keith Thompson wrote: >>>>> >>>>>> "Chris M. Thomasson" <chris.m.t...@gmail.com> writes: >>>> >>>> Having said all of that, Z++ is for building platform-independent, >>>> "distributed" software. It is NOT to replace >>>> C++ for making system software such as an IDE, just as C++ is NOT for >>>> writing operating systems. That is the >>>> job of C. >>> >>> Having written two commercial operating systems in C++ and two >>> bare-metal hypervisors in C++, I would dispute that assertion most >>> vociferously. >>> >>> Using carefully chosen subsets of the C++ language is perfectly >>> acceptable and generates code that compares favorably with C and >>> allows the encapsulation of data and methods in class structures. >> >> Every C++ class/struct will have to include a so-called virtual >> table. > > No, that is not the case. The virtual table is only present when > function overloads exist and in certain multiple inheritance > scenarios. [...] This claim isn't right. Any class (or struct) that has at least one virtual function will have a virtual function table. The existence of a virtual function table does not depend on whether the class/struct has overloaded functions or whether inheritance is present. Note that these comments apply to class/struct definitions, not to instances thereof. Each instance of a class or struct that has virtual functions will have a pointer to the appropriate virtual function table (with the understanding that such pointers may be shared when inheritance is present, and may have more complicated relationships when multiple inheritance is used).
[toc] | [prev] | [next] | [standalone]
| From | Muttley@dastardlyhq.com |
|---|---|
| Date | 2023-02-02 16:11 +0000 |
| Message-ID | <trgnar$v1qg$1@dont-email.me> |
| In reply to | #88958 |
On Thu, 02 Feb 2023 07:09:50 -0800 Tim Rentsch <tr.17687@z991.linuxsc.com> wrote: >scott@slp53.sl.home (Scott Lurndal) writes: >>> Every C++ class/struct will have to include a so-called virtual >>> table. >> >> No, that is not the case. The virtual table is only present when >> function overloads exist and in certain multiple inheritance >> scenarios. [...] > >This claim isn't right. Any class (or struct) that has at least >one virtual function will have a virtual function table. The Has at least one != every.
[toc] | [prev] | [next] | [standalone]
| From | Zorro <zorabih@gmail.com> |
|---|---|
| Date | 2023-02-02 13:39 -0800 |
| Message-ID | <e6656105-a251-40fa-b8b2-04e01585c6d1n@googlegroups.com> |
| In reply to | #88959 |
On Thursday, February 2, 2023 at 10:11:22 AM UTC-6, Mut...@dastardlyhq.com wrote: > On Thu, 02 Feb 2023 07:09:50 -0800 > Tim Rentsch <tr.1...@z991.linuxsc.com> wrote: > >sc...@slp53.sl.home (Scott Lurndal) writes: > >>> Every C++ class/struct will have to include a so-called virtual > >>> table. > >> > >> No, that is not the case. The virtual table is only present when > >> function overloads exist and in certain multiple inheritance > >> scenarios. [...] > > > >This claim isn't right. Any class (or struct) that has at least > >one virtual function will have a virtual function table. The > Has at least one != every. You are right. I should have been more specific. The conversation was not so much about how C++ deals with classes, but its use for writing an operating system. Sorry about that.
[toc] | [prev] | [next] | [standalone]
| From | Tim Rentsch <tr.17687@z991.linuxsc.com> |
|---|---|
| Date | 2023-02-02 17:42 -0800 |
| Message-ID | <86tu03cyn2.fsf@linuxsc.com> |
| In reply to | #88959 |
Muttley@dastardlyhq.com writes: > On Thu, 02 Feb 2023 07:09:50 -0800 > Tim Rentsch <tr.17687@z991.linuxsc.com> wrote: > >> scott@slp53.sl.home (Scott Lurndal) writes: >> >>>> Every C++ class/struct will have to include a so-called virtual >>>> table. >>> >>> No, that is not the case. The virtual table is only present when >>> function overloads exist and in certain multiple inheritance >>> scenarios. [...] >> >> This claim isn't right. Any class (or struct) that has at least >> one virtual function will have a virtual function table. The > > Has at least one != every. That's true, but it has no bearing on what I said.
[toc] | [prev] | [next] | [standalone]
| From | Keith Thompson <Keith.S.Thompson+u@gmail.com> |
|---|---|
| Date | 2023-01-31 16:32 -0800 |
| Message-ID | <875ycmw7hf.fsf@nosuchdomain.example.com> |
| In reply to | #88933 |
Zorro <zorabih@gmail.com> writes:
[...]
> Thank you. ,Z++ is a "Superset", not an extension of C++, as it it to C.
What exactly do you mean by "Superset"?
If Z++ is truly a superset of C++, then every valid C++ program is a
valid Z++ program with the same semantics. If that's *nearly* the case,
as C++ is nearly a superset of C, then using the word with scare quotes
might be appropriate. If not, then you might consider using a different word.
--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for XCOM Labs
void Void(void) { Void(); } /* The recursive call of the void */
[toc] | [prev] | [next] | [standalone]
| From | Zorro <zorabih@gmail.com> |
|---|---|
| Date | 2023-02-01 08:36 -0800 |
| Message-ID | <c464bbcd-c14f-4bb5-ae25-e7d500e509a2n@googlegroups.com> |
| In reply to | #88936 |
On Tuesday, January 31, 2023 at 6:32:44 PM UTC-6, Keith Thompson wrote:
> Zorro <zor...@gmail.com> writes:
> [...]
> > Thank you. ,Z++ is a "Superset", not an extension of C++, as it it to C.
> What exactly do you mean by "Superset"?
>
> If Z++ is truly a superset of C++, then every valid C++ program is a
> valid Z++ program with the same semantics. If that's *nearly* the case,
> as C++ is nearly a superset of C, then using the word with scare quotes
> might be appropriate. If not, then you might consider using a different word.
> --
> Keith Thompson (The_Other_Keith) Keith.S.T...@gmail.com
> Working, but not speaking, for XCOM Labs
> void Void(void) { Void(); } /* The recursive call of the void */
OK, initially C++ was called C with classes, around 1989 templates and exceptions were added.
For many years C++ was compiled to C, and the C compiler would finish the job. Thus, C++ is a
direct extension of C, even though now C++ compiler does the whole work. So now you only need
to indicate "extern "C"" for linkage purposes.
Consider definition of a class in Z++.
class some-name
//body
end;
There are no braces, but the class is defined same way as in C++, and it is multiple-inheritance.
However, private/protected (data) members can be specified as "visible". Then, they can be directly
accessed, but not modified.
A Z++ class can have any number of "invariant statements", and public methods can have "constraints"
as to what values or conditions must be satisfied so the method will be invoked (or exception will be raised).
Thus, the entire C++ class is within Z++ class, but there is a lot more, with minor difference in syntax, basically
no braces are used. This is not a direct extension of C++. Maybe we could say "semantically superset",
but that would be vague.
[toc] | [prev] | [next] | [standalone]
| From | Muttley@dastardlyhq.com |
|---|---|
| Date | 2023-02-01 17:10 +0000 |
| Message-ID | <tre6di$e5b4$1@dont-email.me> |
| In reply to | #88946 |
On Wed, 1 Feb 2023 08:36:45 -0800 (PST) Zorro <zorabih@gmail.com> wrote: >On Tuesday, January 31, 2023 at 6:32:44 PM UTC-6, Keith Thompson wrote: >Thus, the entire C++ class is within Z++ class, but there is a lot more, with >minor difference in syntax, basically Using pascal style keywords instead of brackets is hardly a minor difference. >no braces are used. This is not a direct extension of C++. Maybe we could say >"semantically superset", >but that would be vague. One of the reasons Objective-C was unpopular was the mashing up of 2 different syntax styles into one language. You should take note.
[toc] | [prev] | [next] | [standalone]
Page 1 of 2 [1] 2 Next page →
Back to top | Article view | comp.lang.c++
csiph-web