Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #126536 > unrolled thread

Re: C2 Aims to Modernize the C Language

Started byDavid Kleinecke <dkleinecke@gmail.com>
First post2018-02-10 12:41 -0800
Last post2018-02-12 23:21 +0100
Articles 20 on this page of 103 — 26 participants

Back to article view | Back to comp.lang.c

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: C2 Aims to Modernize the C Language David Kleinecke <dkleinecke@gmail.com> - 2018-02-10 12:41 -0800
    Re: C2 Aims to Modernize the C Language Chad <cdalten@gmail.com> - 2018-02-10 13:38 -0800
    Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-11 00:32 +0100
      Re: C2 Aims to Modernize the C Language Thiago Adams <thiago.adams@gmail.com> - 2018-02-10 17:23 -0800
        Re: C2 Aims to Modernize the C Language Anton Shepelev <anton.txt@gmail.com> - 2018-02-11 13:53 +0300
          Re: C2 Aims to Modernize the C Language Jorgen Grahn <grahn+nntp@snipabacken.se> - 2018-02-11 13:26 +0000
          Re: C2 Aims to Modernize the C Language Thiago Adams <thiago.adams@gmail.com> - 2018-02-11 13:04 -0800
      Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-11 01:34 +0000
        Re: C2 Aims to Modernize the C Language Thiago Adams <thiago.adams@gmail.com> - 2018-02-10 17:42 -0800
          Re: C2 Aims to Modernize the C Language "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2018-02-10 17:50 -0800
            Re: C2 Aims to Modernize the C Language fir <profesor.fir@gmail.com> - 2018-02-14 11:54 -0800
              Re: C2 Aims to Modernize the C Language "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2018-02-14 12:14 -0800
        Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-11 04:48 +0100
          Re: C2 Aims to Modernize the C Language Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2018-02-10 22:35 -0700
            Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-11 13:25 +0100
          Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-11 11:18 +0000
            Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-11 21:57 +0000
              Re: C2 Aims to Modernize the C Language Ian Collins <ian-news@hotmail.com> - 2018-02-12 14:10 +1300
                Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 11:11 +0000
                  Re: C2 Aims to Modernize the C Language Reinhardt Behm <rbehm@hushmail.com> - 2018-02-12 20:33 +0800
                    Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 13:43 +0000
                      Re: C2 Aims to Modernize the C Language Thiago Adams <thiago.adams@gmail.com> - 2018-02-12 06:05 -0800
                  Re: C2 Aims to Modernize the C Language Ian Collins <ian-news@hotmail.com> - 2018-02-13 07:13 +1300
                    Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-13 01:17 +0000
                      Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-13 09:55 +0100
                        Re: C2 Aims to Modernize the C Language BGB <cr88192@hotmail.com> - 2018-02-13 12:28 -0600
                          Re: C2 Aims to Modernize the C Language Ian Collins <ian-news@hotmail.com> - 2018-02-14 11:36 +1300
                            Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-14 00:59 +0000
                              Re: C2 Aims to Modernize the C Language Ian Collins <ian-news@hotmail.com> - 2018-02-14 15:19 +1300
                                Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-14 14:07 +0000
                                  Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-03-06 15:46 +0000
                            Re: C2 Aims to Modernize the C Language BGB <cr88192@hotmail.com> - 2018-02-13 20:31 -0600
                              Re: C2 Aims to Modernize the C Language Ian Collins <ian-news@hotmail.com> - 2018-02-14 15:42 +1300
                                Re: C2 Aims to Modernize the C Language BGB <cr88192@hotmail.com> - 2018-02-14 01:13 -0600
                                Re: C2 Aims to Modernize the C Language Jorgen Grahn <grahn+nntp@snipabacken.se> - 2018-02-21 15:13 +0000
                                  Re: C2 Aims to Modernize the C Language supercat@casperkitty.com - 2018-02-21 08:43 -0800
                                    Re: C2 Aims to Modernize the C Language Jorgen Grahn <grahn+nntp@snipabacken.se> - 2018-02-21 19:21 +0000
                                  Re: C2 Aims to Modernize the C Language Robert Wessel <robertwessel2@yahoo.com> - 2018-02-21 12:25 -0600
                                    Re: C2 Aims to Modernize the C Language Jorgen Grahn <grahn+nntp@snipabacken.se> - 2018-02-21 19:28 +0000
                                      Re: C2 Aims to Modernize the C Language Robert Wessel <robertwessel2@yahoo.com> - 2018-02-21 18:29 -0600
                                  Re: C2 Aims to Modernize the C Language Ian Collins <ian-news@hotmail.com> - 2018-02-22 08:33 +1300
                              Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-14 14:48 +0000
                                Re: C2 Aims to Modernize the C Language BGB <cr88192@hotmail.com> - 2018-02-14 11:54 -0600
                        Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-13 20:41 +0000
            Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-12 00:00 +0100
              Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 00:59 +0000
                Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-12 12:29 +0100
                  Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 12:18 +0000
                    Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-12 15:27 +0100
                      Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 15:19 +0000
                        Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-12 16:49 +0100
                          Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 17:16 +0000
                            Re: C2 Aims to Modernize the C Language Ian Collins <ian-news@hotmail.com> - 2018-02-13 07:30 +1300
                            Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-12 22:37 +0100
                              Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 22:15 +0000
                                Re: C2 Aims to Modernize the C Language Ian Collins <ian-news@hotmail.com> - 2018-02-13 17:05 +1300
                                  Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-13 11:11 +0000
                                Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-13 10:32 +0100
                                  Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-13 11:10 +0000
                                    Re: C2 Aims to Modernize the C Language gordonb.5itdn@burditt.org (Gordon Burditt) - 2018-02-14 12:57 -0600
                                      Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-14 20:29 +0000
                                        Re: C2 Aims to Modernize the C Language gordonb.nrdl0@burditt.org (Gordon Burditt) - 2018-02-14 19:22 -0600
                                          Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-15 14:59 +0000
                                  Re: C2 Aims to Modernize the C Language already5chosen@yahoo.com - 2018-02-13 04:00 -0800
                                    Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-13 14:46 +0100
                                      Re: C2 Aims to Modernize the C Language already5chosen@yahoo.com - 2018-02-13 08:49 -0800
                                        Re: C2 Aims to Modernize the C Language Thiago Adams <thiago.adams@gmail.com> - 2018-02-13 09:52 -0800
                                  Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-13 13:47 +0100
                                    Re: C2 Aims to Modernize the C Language already5chosen@yahoo.com - 2018-02-13 05:11 -0800
                                      Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-13 14:49 +0100
                                        Re: C2 Aims to Modernize the C Language "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2018-02-13 21:52 +0800
                                        Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-13 14:45 +0000
                                        Re: C2 Aims to Modernize the C Language Malcolm McLean <malcolm.arthur.mclean@gmail.com> - 2018-02-13 07:45 -0800
                                    Re: C2 Aims to Modernize the C Language Chad <cdalten@gmail.com> - 2018-02-13 05:35 -0800
                                  Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-13 13:21 +0000
                                    Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-13 13:24 +0000
                    Re: C2 Aims to Modernize the C Language Egor <egor@ruby.local> - 2018-02-13 13:14 +0200
                      Re: C2 Aims to Modernize the C Language already5chosen@yahoo.com - 2018-02-13 04:38 -0800
                        Re: C2 Aims to Modernize the C Language Egor <egor@ruby.local> - 2018-02-14 13:25 +0200
                      Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-13 13:39 +0000
                        Re: C2 Aims to Modernize the C Language Egor <egor@ruby.local> - 2018-02-14 13:42 +0200
      Re: C2 Aims to Modernize the C Language supercat@casperkitty.com - 2018-02-15 13:17 -0800
    Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-11 04:41 +0100
    Re: C2 Aims to Modernize the C Language Manfred <noname@invalid.add> - 2018-02-12 17:25 +0100
      Re: C2 Aims to Modernize the C Language Ben Bacarisse <ben.usenet@bsb.me.uk> - 2018-02-12 17:28 +0000
        Re: C2 Aims to Modernize the C Language Manfred <noname@invalid.add> - 2018-02-12 21:01 +0100
      Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 17:51 +0000
        Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-12 19:28 +0100
          Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 20:02 +0000
            Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-12 23:32 +0100
              Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-13 10:42 +0100
                Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-13 13:26 +0100
                  Re: C2 Aims to Modernize the C Language Richard Damon <Richard@Damon-Family.org> - 2018-02-13 08:06 -0500
                    Re: C2 Aims to Modernize the C Language Manfred <noname@invalid.add> - 2018-02-13 15:16 +0100
                  Re: C2 Aims to Modernize the C Language David Brown <david.brown@hesbynett.no> - 2018-02-13 14:53 +0100
                    Re: C2 Aims to Modernize the C Language BGB <cr88192@hotmail.com> - 2018-02-13 15:22 -0600
          Re: C2 Aims to Modernize the C Language Keith Thompson <kst-u@mib.org> - 2018-02-12 12:26 -0800
            Re: C2 Aims to Modernize the C Language GOTHIER Nathan <nathan.gothier@gmail.com> - 2018-02-12 23:45 +0100
            Re: C2 Aims to Modernize the C Language "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2018-02-12 15:52 -0800
              Re: C2 Aims to Modernize the C Language Chad <cdalten@gmail.com> - 2018-02-12 17:13 -0800
        Re: C2 Aims to Modernize the C Language Manfred <noname@invalid.add> - 2018-02-12 21:15 +0100
          Re: C2 Aims to Modernize the C Language bartc <bc@freeuk.com> - 2018-02-12 21:42 +0000
            Re: C2 Aims to Modernize the C Language Manfred <noname@invalid.add> - 2018-02-12 23:21 +0100

Page 1 of 6  [1] 2 3 4 5 6  Next page →


#126536 — Re: C2 Aims to Modernize the C Language

FromDavid Kleinecke <dkleinecke@gmail.com>
Date2018-02-10 12:41 -0800
SubjectRe: C2 Aims to Modernize the C Language
Message-ID<e07942bb-49d8-40f0-9504-272ffcf5741f@googlegroups.com>
On Saturday, February 10, 2018 at 12:31:33 PM UTC-8, computer45 wrote:
> Hello..
> 
> 
> C2 Aims to Modernize the C Language
> 
> Read more here:
> 
> https://www.infoq.com/news/2018/02/c2lang-modern-c
 
Where can I find a BNF of its syntax?

Or must I read everything on wiki.c2.com?

[toc] | [next] | [standalone]


#126542

FromChad <cdalten@gmail.com>
Date2018-02-10 13:38 -0800
Message-ID<3ccc2cbc-95f5-42b8-aa8f-60af00e335f6@googlegroups.com>
In reply to#126536
On Saturday, February 10, 2018 at 12:42:10 PM UTC-8, David Kleinecke wrote:
> On Saturday, February 10, 2018 at 12:31:33 PM UTC-8, computer45 wrote:
> > Hello..
> > 
> > 
> > C2 Aims to Modernize the C Language
> > 
> > Read more here:
> > 
> > https://www.infoq.com/news/2018/02/c2lang-modern-c
>  
> Where can I find a BNF of its syntax?
> 
> Or must I read everything on wiki.c2.com?

It's by the button that says "Ramine has had three accounts revoked for spamming comp.programming."

I guess homer now on going to spam comp.lang.c on his fourth one?

[toc] | [prev] | [next] | [standalone]


#126548

FromGOTHIER Nathan <nathan.gothier@gmail.com>
Date2018-02-11 00:32 +0100
Message-ID<20180211003235.f8b81e86a9275dd16af8eb40@gmail.com>
In reply to#126536
On Sat, 10 Feb 2018 12:41:59 -0800 (PST)
David Kleinecke <dkleinecke@gmail.com> wrote:

> On Saturday, February 10, 2018 at 12:31:33 PM UTC-8, computer45 wrote:
> > Hello..
> > 
> > 
> > C2 Aims to Modernize the C Language
> > 
> > Read more here:
> > 
> > https://www.infoq.com/news/2018/02/c2lang-modern-c
>  
> Where can I find a BNF of its syntax?
> 
> Or must I read everything on wiki.c2.com?

I read this document:

http://www.c2lang.org/docs/c2lang_design.pdf

and this web page:

http://c2lang.org/site/language/basic_types/

I think the C2 design is broken with the built-in types lacking the
flexibility of the C design which doesn't force implementors to
provide slow non native types (at least for integers). Additionally, I
don't think naming integer types "iX" or "uX" is clear and relevant for
most programmers.

Moreover, this language suggests programmers to throw to the toilet all
existing code. Why should anyone or any company do this?

The self claimed "modernized" C is a total rip-off like C++ and it
shouldn't abuse the C reputation. If I'd like to design a new
programming language better than C, I wouldn't call it C to remind its
weakness.

I would prompt its author to join the group in order to share with the
C community his vision and the issues he faced with the C language.

It doesn't mean the C language is perfect but I would prefer to improve
the C language instead of building yet another bloated programming
language like C++.

-- 
GOTHIER Nathan

[toc] | [prev] | [next] | [standalone]


#126552

FromThiago Adams <thiago.adams@gmail.com>
Date2018-02-10 17:23 -0800
Message-ID<bf0a52cf-1815-4b99-b00e-54459b76600a@googlegroups.com>
In reply to#126548
On Saturday, February 10, 2018 at 9:34:43 PM UTC-2, GOTHIER Nathan wrote:
> On Sat, 10 Feb 2018 12:41:59 -0800 (PST)
> David Kleinecke  wrote:
> 
> > On Saturday, February 10, 2018 at 12:31:33 PM UTC-8, computer45 wrote:
> > > Hello..
> > > 
> > > 
> > > C2 Aims to Modernize the C Language
> > > 
> > > Read more here:
> > > 
> > > https://www.infoq.com/news/2018/02/c2lang-modern-c
> >  
> > Where can I find a BNF of its syntax?
> > 
> > Or must I read everything on wiki.c2.com?
> 
> I read this document:
> 
> http://www.c2lang.org/docs/c2lang_design.pdf
> 
> and this web page:
> 
> http://c2lang.org/site/language/basic_types/
> 
> I think the C2 design is broken with the built-in types lacking the
> flexibility of the C design which doesn't force implementors to
> provide slow non native types (at least for integers). Additionally, I
> don't think naming integer types "iX" or "uX" is clear and relevant for
> most programmers.
> 
> Moreover, this language suggests programmers to throw to the toilet all
> existing code. Why should anyone or any company do this?

I think they want to parse a C header and generate a new file.

"
https://github.com/c2lang/c2compiler
[medium] tool: create c-parser for parsing C headers.
"
This C2 compiler generates C code. I imagine that there
is much more configuration steps to debug and use the code.

 
> The self claimed "modernized" C is a total rip-off like C++ and it
> shouldn't abuse the C reputation. If I'd like to design a new
> programming language better than C, I wouldn't call it C to remind its
> weakness.
> 
> I would prompt its author to join the group in order to share with the
> C community his vision and the issues he faced with the C language.

I guess "modules" is the subject for this group. 
And C syntax has been discussed here many times.


What is missing in my opinion:
 * Generated functions like destructor/ctor and more.
 * Address the "containers" problem
 * Object life-time static analysis
 * null pointer static analysis
 * polimorphism
 * lambdas

I am addressing these topics in my cprime tool, and I have 
already created some topics about each of these items.
https://github.com/thradams/CPrime

I also think the "amalgamation" is relevant for "modules"
subject. 


[toc] | [prev] | [next] | [standalone]


#126563

FromAnton Shepelev <anton.txt@gmail.com>
Date2018-02-11 13:53 +0300
Message-ID<20180211135331.d034a512153b4da73397a79e@gmail.com>
In reply to#126552
Thiago Adams:

> What is missing in my opinion:
> ...
> * polimorphism
> * lambdas
> ...
>
> I  am  addressing  these topics in my cprime tool,
> and I have already created some topics about  each
> of these items.
> https://github.com/thradams/CPrime

So  you  are  using unions and switches for polymor-
phism, which have the following drawbacks:

  1.  Generic code must be modified in order to  in-
      troduce  another  subtype.   This violates the
      open-closed principle (pardon  my  OOP  speak,
      but am not aware of a neutral term).

  2.  The  implementation  of  each  subtype implies
      modifications at as many disjoint locations as
      there  are  type-specific  functions, i.e. the
      programmer has to add a case label into sever-
      al analogous switch statements.

  3.  The  said  swtich statements, having identical
      structure, consitute duplicated  (multiplicat-
      ed) code.

Have you deemed these drawbacks unimportant?

> * lambdas

I  have never understood the need for lambdas in im-
perative programming languages.  They are  almost  a
language  within  a  language,  with its own strange
rules, such as the ability to create anonymous  fun-
cions  on-the-fly with local variables of the parent
function trapped in them and exisiting  outside  the
parent's scope.

-- 
()  ascii ribbon campaign -- against html e-mail
/\  http://preview.tinyurl.com/qcy6mjc [archived]

[toc] | [prev] | [next] | [standalone]


#126574

FromJorgen Grahn <grahn+nntp@snipabacken.se>
Date2018-02-11 13:26 +0000
Message-ID<slrnp80h3e.eu5.grahn+nntp@frailea.sa.invalid>
In reply to#126563
On Sun, 2018-02-11, Anton Shepelev wrote:
> Thiago Adams:
...
>> * lambdas
>
> I  have never understood the need for lambdas in im-
> perative programming languages.  They are  almost  a
> language  within  a  language,  with its own strange
> rules, such as the ability to create anonymous  fun-
> cions  on-the-fly with local variables of the parent
> function trapped in them and exisiting  outside  the
> parent's scope.

I think you're over-mystifying.  Imagine the lambda containing, by
value, a struct with all the pointers to or copies of the captured
variables.  That sums up what happens, and the dangers related to
lifetime issues.

/Jorgen

-- 
  // Jorgen Grahn <grahn@  Oo  o.   .     .
\X/     snipabacken.se>   O  o   .

[toc] | [prev] | [next] | [standalone]


#126584

FromThiago Adams <thiago.adams@gmail.com>
Date2018-02-11 13:04 -0800
Message-ID<3c4432a7-019a-491c-a28c-c946d8c595d2@googlegroups.com>
In reply to#126563
On Sunday, February 11, 2018 at 8:53:46 AM UTC-2, Anton Shepelev wrote:
> Thiago Adams:
> 
> > What is missing in my opinion:
> > ...
> > * polimorphism
> > * lambdas
> > ...
> >
> > I  am  addressing  these topics in my cprime tool,
> > and I have already created some topics about  each
> > of these items.
> > https://github.com/thradams/CPrime
> 
> So  you  are  using unions and switches for polymor-
> phism, which have the following drawbacks:
> 
>   1.  Generic code must be modified in order to  in-
>       troduce  another  subtype.   This violates the
>       open-closed principle (pardon  my  OOP  speak,
>       but am not aware of a neutral term).
> 
>   2.  The  implementation  of  each  subtype implies
>       modifications at as many disjoint locations as
>       there  are  type-specific  functions, i.e. the
>       programmer has to add a case label into sever-
>       al analogous switch statements.
> 
>   3.  The  said  swtich statements, having identical
>       structure, consitute duplicated  (multiplicat-
>       ed) code.
> 
> Have you deemed these drawbacks unimportant?

Using cprime, I don't have to edit/update the switch
when I add a new type because the compiler will
update the switch for me.
The generic code is unchanged.


> > * lambdas
> 
> I  have never understood the need for lambdas in im-
> perative programming languages.  They are  almost  a
> language  within  a  language,  with its own strange
> rules, such as the ability to create anonymous  fun-
> cions  on-the-fly with local variables of the parent
> function trapped in them and exisiting  outside  the
> parent's scope.
> 
For asynchronous code and algorithms lambdas are useful.

[toc] | [prev] | [next] | [standalone]


#126554

Frombartc <bc@freeuk.com>
Date2018-02-11 01:34 +0000
Message-ID<u4NfC.875944$qb2.121245@fx25.am4>
In reply to#126548
On 10/02/2018 23:32, GOTHIER Nathan wrote:
> On Sat, 10 Feb 2018 12:41:59 -0800 (PST)

> I read this document:
> 
> http://www.c2lang.org/docs/c2lang_design.pdf
> 
> and this web page:
> 
> http://c2lang.org/site/language/basic_types/
> 
> I think the C2 design is broken with the built-in types lacking the
> flexibility of the C design which doesn't force implementors to
> provide slow non native types (at least for integers). Additionally, I
> don't think naming integer types "iX" or "uX" is clear and relevant for
> most programmers.

It seems to use the same approach as Java, C#, Go and Rust, with 
signed/unsigned versions of 8, 16, 32 and 64-bit ints, and 32/64-bit floats.

Perhaps the standard type names are a little concise, but you can infer 
the width of 'i32' more easily than you can of 'long int'.

> Moreover, this language suggests programmers to throw to the toilet all
> existing code. Why should anyone or any company do this?

I don't think you have to do that. Existing code will still exist and 
can still be compiled.

New code is written in C2, which can call libraries written in C.

> The self claimed "modernized" C is a total rip-off like C++ and it
> shouldn't abuse the C reputation.

What about C#?

  If I'd like to design a new
> programming language better than C, I wouldn't call it C to remind its
> weakness.
> 
> I would prompt its author to join the group in order to share with the
> C community his vision and the issues he faced with the C language.
> 
> It doesn't mean the C language is perfect but I would prefer to improve
> the C language instead of building yet another bloated programming
> language like C++.

If you don't start afresh then the language /will/ be bloated with all 
the baggage it has to carry around forever.

-- 
bartc

[toc] | [prev] | [next] | [standalone]


#126557

FromThiago Adams <thiago.adams@gmail.com>
Date2018-02-10 17:42 -0800
Message-ID<2ad463e8-ee9b-48a9-949f-d8563b575f68@googlegroups.com>
In reply to#126554
On Saturday, February 10, 2018 at 11:34:25 PM UTC-2, Bart wrote:
> On 10/02/2018 23:32, GOTHIER Nathan wrote:
> > On Sat, 10 Feb 2018 12:41:59 -0800 (PST)
> 
> > I read this document:
> > 
> > http://www.c2lang.org/docs/c2lang_design.pdf
> > 
> > and this web page:
> > 
> > http://c2lang.org/site/language/basic_types/
> > 
> > I think the C2 design is broken with the built-in types lacking the
> > flexibility of the C design which doesn't force implementors to
> > provide slow non native types (at least for integers). Additionally, I
> > don't think naming integer types "iX" or "uX" is clear and relevant for
> > most programmers.
> 
> It seems to use the same approach as Java, C#, Go and Rust, with 
> signed/unsigned versions of 8, 16, 32 and 64-bit ints, and 32/64-bit floats.

In C/C++ we have abstract integer types with no fixed size and we 
have typedefs for fixed integer size types like int32_t.
size_t is another sample.

Some people wants languages doing the inverse. Fixed with integers types
in the language and typedefs for variable size.

I don't think this is an important subject compared with many other
aspects of C.


[toc] | [prev] | [next] | [standalone]


#126558

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2018-02-10 17:50 -0800
Message-ID<01c66b50-5b16-46d1-af55-3370aab8c90f@googlegroups.com>
In reply to#126557
I'm excited about C2.  I pray it works out well for everybody.

-- 
Rick C. Hodgin 

[toc] | [prev] | [next] | [standalone]


#126701

Fromfir <profesor.fir@gmail.com>
Date2018-02-14 11:54 -0800
Message-ID<e0f2b1a7-fe7f-41d2-9de7-73e44fb96111@googlegroups.com>
In reply to#126558
W dniu niedziela, 11 lutego 2018 02:50:47 UTC+1 użytkownik Rick C. Hodgin napisał:
> I'm excited about C2.  I pray it works out well for everybody.
> 
> -- 
> Rick C. Hodgin

i got a spare time lurking here (2 weeks) i go look - welcome back in a world of idiots: hodgin ramina and all that monstrous brainles zombies over and over


(btw c2 name is reserved by me - i use it like 10 years or so, ramine moron from morocco could even see posts on that)

[toc] | [prev] | [next] | [standalone]


#126702

From"Rick C. Hodgin" <rick.c.hodgin@gmail.com>
Date2018-02-14 12:14 -0800
Message-ID<0a54e195-e115-4e10-9b39-98b81f6a6e9e@googlegroups.com>
In reply to#126701
On Wednesday, February 14, 2018 at 2:55:12 PM UTC-5, fir wrote:
> i got a spare time lurking here (2 weeks) i go look - welcome back in a world of idiots: hodgin ramina and all that monstrous brainles zombies over and over

Always a fresh ray of sunshine and a cool summer's breeze aren't you, fir?

> (btw c2 name is reserved by me - i use it like 10 years or so, ramine moron from morocco could even see posts on that)

Ramine did not name C2.  He simply reported on it.

-- 
Rick C. Hodgin

[toc] | [prev] | [next] | [standalone]


#126560

FromGOTHIER Nathan <nathan.gothier@gmail.com>
Date2018-02-11 04:48 +0100
Message-ID<20180211044846.3164b7df534c8d6c3c127b49@gmail.com>
In reply to#126554
On Sun, 11 Feb 2018 01:34:18 +0000
bartc <bc@freeuk.com> wrote:

> It seems to use the same approach as Java, C#, Go and Rust, with 
> signed/unsigned versions of 8, 16, 32 and 64-bit ints, and 32/64-bit
> floats.

This is why all those languages are locked into niche markets.


> Perhaps the standard type names are a little concise, but you can
> infer the width of 'i32' more easily than you can of 'long int'.

Concise means short but clear. Naming a type "i32" is short but not
clear. It could mean an imaginary object of 32 things. Naming the same
type as "int" clearly refers to an integer type with a non explicit
size which give some freedom to the implementor to provide the best
size available on the machine to compute integers efficiently according
to the minimal range supported by the C standard.


> I don't think you have to do that. Existing code will still exist and 
> can still be compiled.
> 
> New code is written in C2, which can call libraries written in C.

Please tell me how hard is the pain in the ass to do this. :-D


> > The self claimed "modernized" C is a total rip-off like C++ and it
> > shouldn't abuse the C reputation.
> 
> What about C#?

It's them same thing.


> If you don't start afresh then the language /will/ be bloated with
> all the baggage it has to carry around forever.

So should we start a new language each time we have to add a new fashion
feature?

The C programming language improvements are pretty slow because the
language doesn't aim to be a fashion one but a reliable tool.

-- 
GOTHIER Nathan

[toc] | [prev] | [next] | [standalone]


#126561

FromJoe Pfeiffer <pfeiffer@cs.nmsu.edu>
Date2018-02-10 22:35 -0700
Message-ID<1br2ps6qci.fsf@pfeifferfamily.net>
In reply to#126560
GOTHIER Nathan <nathan.gothier@gmail.com> writes:

> On Sun, 11 Feb 2018 01:34:18 +0000
> bartc <bc@freeuk.com> wrote:
>
>> It seems to use the same approach as Java, C#, Go and Rust, with 
>> signed/unsigned versions of 8, 16, 32 and 64-bit ints, and 32/64-bit
>> floats.
>
> This is why all those languages are locked into niche markets.
>
>
>> Perhaps the standard type names are a little concise, but you can
>> infer the width of 'i32' more easily than you can of 'long int'.
>
> Concise means short but clear. Naming a type "i32" is short but not
> clear. It could mean an imaginary object of 32 things. Naming the same
> type as "int" clearly refers to an integer type with a non explicit
> size which give some freedom to the implementor to provide the best
> size available on the machine to compute integers efficiently according
> to the minimal range supported by the C standard.

"int" only means that to you because you know C.  With the same level of
background in C2, i32 would be equally clear (and wouldn't require a
header file if you really did want a 32 bit value).

[toc] | [prev] | [next] | [standalone]


#126571

FromGOTHIER Nathan <nathan.gothier@gmail.com>
Date2018-02-11 13:25 +0100
Message-ID<20180211132548.be7a778d28c5d55e49841636@gmail.com>
In reply to#126561
On Sat, 10 Feb 2018 22:35:25 -0700
Joe Pfeiffer <pfeiffer@cs.nmsu.edu> wrote:

> "int" only means that to you because you know C.  With the same level
> of background in C2, i32 would be equally clear (and wouldn't require
> a header file if you really did want a 32 bit value).

That's not completely true. The human being is able to interpolate words
with missing letters but only if we give him enough letters, specially
consonants. As a result, "int32" is by far clearer than "i32".
Since programmers are human beings and not machines, a programming
language have to be crystal clear for any programmers.

-- 
GOTHIER Nathan

[toc] | [prev] | [next] | [standalone]


#126568

Frombartc <bc@freeuk.com>
Date2018-02-11 11:18 +0000
Message-ID<AEVfC.654128$3J3.488981@fx37.am4>
In reply to#126560
On 11/02/2018 03:48, GOTHIER Nathan wrote:
> On Sun, 11 Feb 2018 01:34:18 +0000
> bartc <bc@freeuk.com> wrote:
> 
>> It seems to use the same approach as Java, C#, Go and Rust, with
>> signed/unsigned versions of 8, 16, 32 and 64-bit ints, and 32/64-bit
>> floats.
> 
> This is why all those languages are locked into niche markets.

You mean, the niche markets dominated by x86, x64 and the various ARM 
processors? (And probably other such as powerpc, mips and alpha, but I 
don't know what's what these days.)

(How many devices is it that Java runs on?)

>> Perhaps the standard type names are a little concise, but you can
>> infer the width of 'i32' more easily than you can of 'long int'.
> 
> Concise means short but clear. Naming a type "i32" is short but not
> clear. It could mean an imaginary object of 32 things. Naming the same
> type as "int" clearly refers to an integer type with a non explicit
> size which give some freedom to the implementor to provide the best
> size available on the machine to compute integers efficiently according
> to the minimal range supported by the C standard.
Some links for C2 also seem to use names such as "int" and "uint32"; I 
don't know if that's a different version or if they are alternatives.

(My own language also has this pattern of types, and it allows different 
ways of specifying the same type: "int", "i32", "int32". Adding aliases 
isn't very difficult. I don't use "i32" much excepted in generated code 
where it keeps things compact.)

>> I don't think you have to do that. Existing code will still exist and
>> can still be compiled.
>>
>> New code is written in C2, which can call libraries written in C.
> 
> Please tell me how hard is the pain in the ass to do this. :-D

What, calling C functions from another language? Dozens of languages 
already do that and have done so for a long time. I've been doing it 
from mine for 25 years. I'm still doing it now.

If there are complications, it's /because/ of C being the way it is. 
(How big is 'long' again? What padding is there between those two struct 
members? What exactly is type T which is defined in two different 
typedefs in conditional blocks, in terms of a further type U which 
appears to be macro call?)


>> If you don't start afresh then the language /will/ be bloated with
>> all the baggage it has to carry around forever.
> 
> So should we start a new language each time we have to add a new fashion
> feature?

No, only every so often. C already has C89, C99 and C11 versions, but 
those haven't really changed much (just made it a PITA to write 
compilers with, for a low-level language, advanced features out of 
keeping with the rest of the language.).

One of the C2 aims is specifically not to be more advanced, or do any 
more, just do what C does but in a more modern way.

(Modules replacing headers for example, but the build model I've seen 
for it looks complicated.)

-- 
bartc

[toc] | [prev] | [next] | [standalone]


#126585

Frombartc <bc@freeuk.com>
Date2018-02-11 21:57 +0000
Message-ID<O_2gC.2582238$OX.2266677@fx47.am4>
In reply to#126568
On 11/02/2018 11:18, bartc wrote:

> One of the C2 aims is specifically not to be more advanced, or do any 
> more, just do what C does but in a more modern way.

I've just looked at what is involved in trying out C2.

All I need to install is the basic Cygwin along with make, cmake, gcc, 
libncurses-dev, ncurses, Python, git and clang...

It then says, 'C2 is based on LLVM 5.0 and some parts of Clang, so we 
will need to build it first'. Presumably 'it' means LLVM.

So it looks I'm not going to be trying out this language any time soon.

-- 
bartc

[toc] | [prev] | [next] | [standalone]


#126589

FromIan Collins <ian-news@hotmail.com>
Date2018-02-12 14:10 +1300
Message-ID<fec7srFm5eaU1@mid.individual.net>
In reply to#126585
On 02/12/2018 10:57 AM, bartc wrote:
> On 11/02/2018 11:18, bartc wrote:
> 
>> One of the C2 aims is specifically not to be more advanced, or do any
>> more, just do what C does but in a more modern way.
> 
> I've just looked at what is involved in trying out C2.
> 
> All I need to install is the basic Cygwin along with make, cmake, gcc,
> libncurses-dev, ncurses, Python, git and clang...
> 
> It then says, 'C2 is based on LLVM 5.0 and some parts of Clang, so we
> will need to build it first'. Presumably 'it' means LLVM.
> 
> So it looks I'm not going to be trying out this language any time soon.

Did you actually read the instructions?

-- 
Ian.

[toc] | [prev] | [next] | [standalone]


#126591

Frombartc <bc@freeuk.com>
Date2018-02-12 11:11 +0000
Message-ID<RDegC.653894$HZ5.496095@fx22.am4>
In reply to#126589
On 12/02/2018 01:10, Ian Collins wrote:
> On 02/12/2018 10:57 AM, bartc wrote:
>> On 11/02/2018 11:18, bartc wrote:
>>
>>> One of the C2 aims is specifically not to be more advanced, or do any
>>> more, just do what C does but in a more modern way.
>>
>> I've just looked at what is involved in trying out C2.
>>
>> All I need to install is the basic Cygwin along with make, cmake, gcc,
>> libncurses-dev, ncurses, Python, git and clang...
>>
>> It then says, 'C2 is based on LLVM 5.0 and some parts of Clang, so we
>> will need to build it first'. Presumably 'it' means LLVM.
>>
>> So it looks I'm not going to be trying out this language any time soon.
> 
> Did you actually read the instructions?

Did you?

The above is a direct quote from the Windows installation instructions 
(https://github.com/c2lang/c2compiler/blob/master/INSTALL_WIN.md).

It relies heavily on Unix tools (a massive dependency if using Windows) 
and on LLVM (a massive subsystem).

It's not clear what dependencies there will be after it's built (given a 
C2 source and c2c.exe, what else is needed?) or after an application has 
been created.

BTW it seems to be written in C++ (a necessity when using LLVM I 
believe), an extra complication (it is effectively closed source for me).

The language appears simple; the implementation isn't. When there's a 
ready-to-use executable for Windows, then I might try it then.

(Presumably, to write the Windows installation details, it must have 
been tested on Windows, so why didn't they make the resulting .exe 
available?)

-- 
bartc

[toc] | [prev] | [next] | [standalone]


#126595

FromReinhardt Behm <rbehm@hushmail.com>
Date2018-02-12 20:33 +0800
Message-ID<p5s1id$1vp$1@dont-email.me>
In reply to#126591
AT Monday 12 February 2018 19:11, bartc wrote:

> (Presumably, to write the Windows installation details, it must have
> been tested on Windows, so why didn't they make the resulting .exe
> available?)

They did it as favor for you, so that you have something to complain about.  

-- 
Reinhardt

[toc] | [prev] | [next] | [standalone]


Page 1 of 6  [1] 2 3 4 5 6  Next page →

Back to top | Article view | comp.lang.c


csiph-web