Re: [dev] [RFC] Design of a vim like text editor

From: Ralph Eastwood <tcmreastwood_AT_gmail.com>
Date: Tue, 16 Sep 2014 09:13:00 +0100

On 16 September 2014 00:23, FRIGN <dev_AT_frign.de> wrote:
>
> Some vocal individuals? I struggle to find anybody who isn't against C++.
> C++ does provide some abstraction features, yes, but every time I read
> C++ or even boost-code, my brain just shuts off and begs for C's
> simplicity and clarity.

In my opinion, C++'s good features are also it's bad features; the
metaprogramming
abilities of C++ are one of the two reasons to use C++. The other
being is if you need
to get some code done and the only available library is in C++ (and
you have no time
to reimplement that library).

If you can get your head round the metaprogramming, C++ provides some
powerful syntactic sugar that is really useful for abstracting
complex pieces of code (e.g. say a maths i.e. matrix heavy code). The
downside is you
can also use it to hide the complicated bits in tonnes of
metaprogramming which is almost
unintelligible too anyone but yourself and a few metaprogramming gurus.

>> And for C++, well, I know there is some vocal individuals against it on the
>> sl mailing list, but I think most members are sensible, we do not need to
>> stay frozen with C89, C++ is bigger than C, more complex, but provides a lot
>> of abstraction features that makes it easier to reason and organize your
>> program. I suspect most of the hatred I see here is due to ignorance, low
>> familiarity with idiomatic C++ and exposure to horrible code (horrible
>> code being writable in any language).

Maxime, I really like what you'e done with kakoune, although your code
base doesn't
seem to use C++'s features heavily, meaning that your could write
equally clean code in C.
Why does it have to be C89? C99 is nicer.


For a text editor, C is perfectly adequate as the main operations are
to do with text and you don't
really need to worry about a lot of abstractions.


-- 
Tai Chi Minh Ralph Eastwood
tcmreastwood_AT_gmail.com
Received on Tue Sep 16 2014 - 10:13:00 CEST

This archive was generated by hypermail 2.3.0 : Tue Sep 16 2014 - 10:24:08 CEST