Jump to page: 1 2
Thread overview
is eC alot like D?
Mar 11, 2015
Taylor Hillegeist
Mar 11, 2015
Rikki Cattermole
Mar 11, 2015
Taylor Hillegeist
Mar 11, 2015
sclytrack
Mar 11, 2015
ketmar
Mar 12, 2015
Parke
Mar 12, 2015
ketmar
Mar 13, 2015
Jerome St-Louis
Mar 13, 2015
ketmar
Mar 13, 2015
Chris
Mar 13, 2015
Dude
Mar 13, 2015
Ali Çehreli
March 11, 2015
So I found http://ec-lang.org/ it seems alot like D, But it has a company backing it. It just seems interesting.
March 11, 2015
On 11/03/2015 4:16 p.m., Taylor Hillegeist wrote:
> So I found http://ec-lang.org/ it seems alot like D, But it has a
> company backing it. It just seems interesting.

There is almost no meta programming support. Let alone CTFE.
And no generics in the form of e.g. Java's is not the same as D's meta-programming support.
March 11, 2015
On Wednesday, 11 March 2015 at 03:55:21 UTC, Rikki Cattermole wrote:
> On 11/03/2015 4:16 p.m., Taylor Hillegeist wrote:
>> So I found http://ec-lang.org/ it seems alot like D, But it has a
>> company backing it. It just seems interesting.
>
> There is almost no meta programming support. Let alone CTFE.
> And no generics in the form of e.g. Java's is not the same as D's meta-programming support.

Yes, D is a very powerful language with a boatload of features. eC almost seems like a subset. but what I find fascinating is the infrastructure built around it. Of course when someone's full time job is to build infrastructure, I tends to happen more predictably. But like all things in life you have to take the good, and carry it with you into the future. I bet there is alot we can learn from eC. I wonder how compatible the two languages are, I have been experimenting with language to language porting techniques, every language is in similar in some way to another, but to varying degrees.
March 11, 2015
On Wednesday, 11 March 2015 at 04:10:51 UTC, Taylor Hillegeist wrote:
> On Wednesday, 11 March 2015 at 03:55:21 UTC, Rikki Cattermole wrote:
>> On 11/03/2015 4:16 p.m., Taylor Hillegeist wrote:
>>> So I found http://ec-lang.org/ it seems alot like D, But it has a
>>> company backing it. It just seems interesting.
>>
>> There is almost no meta programming support. Let alone CTFE.
>> And no generics in the form of e.g. Java's is not the same as D's meta-programming support.
>
> Yes, D is a very powerful language with a boatload of features. eC almost seems like a subset. but what I find fascinating is the infrastructure built around it. Of course when someone's full time job is to build infrastructure, I tends to happen more predictably. But like all things in life you have to take the good, and carry it with you into the future. I bet there is alot we can learn from eC. I wonder how compatible the two languages are, I have been experimenting with language to language porting techniques, every language is in similar in some way to another, but to varying degrees.

A quote from Jerome on the eC forum.


"eC is yet another multiparadigm procedural/object-oriented language which has C for its foundation.
This puts it alongside Java, C++, C#, D, Objective C and probably countless others less famous programming languages."


"What this means:

- You can include C library headers directly in your .ec code, without any special keyword (like extern "C" in C++)
- There is no special mangling going on for normal functions (C binary compatibility), which means you can interface in both directions with any language supporting C bindings.
- Simply put, eC does not take anything away from C, it only adds useful features to it"





March 11, 2015
On Wed, 11 Mar 2015 06:22:32 +0000, sclytrack wrote:

> - You can include C library headers directly in your .ec code, without any special keyword (like extern "C" in C++)

either i missed something, misunderstood what he means or he is simply wrong. i remember that there is no CPP macro processor in eC, so... oops. why my C header is not working?!

March 12, 2015
> On Wed, 11 Mar 2015 06:22:32 +0000, sclytrack wrote:
>> - You can include C library headers directly in your .ec code, without any special keyword (like extern "C" in C++)

On Wed, Mar 11, 2015 at 1:59 AM, ketmar via Digitalmars-d-learn <digitalmars-d-learn@puremagic.com> wrote:
> either i missed something, misunderstood what he means or he is simply wrong. i remember that there is no CPP macro processor in eC, so... oops. why my C header is not working?!

Maybe the eC compiler invokes a C compiler to do the preprocessing.
March 12, 2015
On Wed, 11 Mar 2015 19:26:13 -0700, Parke via Digitalmars-d-learn wrote:

>> On Wed, 11 Mar 2015 06:22:32 +0000, sclytrack wrote:
>>> - You can include C library headers directly in your .ec code, without any special keyword (like extern "C" in C++)
> 
> On Wed, Mar 11, 2015 at 1:59 AM, ketmar via Digitalmars-d-learn <digitalmars-d-learn@puremagic.com> wrote:
>> either i missed something, misunderstood what he means or he is simply
>> wrong. i remember that there is no CPP macro processor in eC, so...
>> oops.
>> why my C header is not working?!
> 
> Maybe the eC compiler invokes a C compiler to do the preprocessing.

and then we have things like `static inline` functions and many other quirks. ah, and alot of standard C headers included, which are platform- dependent, by the way. so the only way to make this work is to have full- featured native C compiler inside.

March 13, 2015
To confirm guys eC does support C preprocessing.
The C preprocessor is invoked before the eC compiler does its parsing.

And all native C headers should work fine as well, although there might be some portability issues on more obscure platforms which have not yet been tested which would require attention, but as you can see at https://packages.debian.org/jessie/libecerecom0 it works fine on most popular platforms.

eC tries to be a superset of C as much possible, with only a few keyword clashes like 'class' as an exception.

Best regards,

-Jerome

On Thursday, 12 March 2015 at 11:02:11 UTC, ketmar wrote:
> On Wed, 11 Mar 2015 19:26:13 -0700, Parke via Digitalmars-d-learn wrote:
>
>>> On Wed, 11 Mar 2015 06:22:32 +0000, sclytrack wrote:
>>>> - You can include C library headers directly in your .ec code, without
>>>> any special keyword (like extern "C" in C++)
>> 
>> On Wed, Mar 11, 2015 at 1:59 AM, ketmar via Digitalmars-d-learn
>> <digitalmars-d-learn@puremagic.com> wrote:
>>> either i missed something, misunderstood what he means or he is simply
>>> wrong. i remember that there is no CPP macro processor in eC, so...
>>> oops.
>>> why my C header is not working?!
>> 
>> Maybe the eC compiler invokes a C compiler to do the preprocessing.
>
> and then we have things like `static inline` functions and many other
> quirks. ah, and alot of standard C headers included, which are platform-
> dependent, by the way. so the only way to make this work is to have full-
> featured native C compiler inside.

March 13, 2015
On Wednesday, 11 March 2015 at 03:16:50 UTC, Taylor Hillegeist wrote:
> So I found http://ec-lang.org/ it seems alot like D, But it has a company backing it. It just seems interesting.

Seems to me that structs are not the same as in D, and structs in D are very powerful. I don't like the fact that they mention object orientation right from the start, as if it was the be all end all of programming - which it isn't.

Hm. I have to admit that I'm biased towards D, but D has come a long way and is the result of serious input from loads of users and experts. Any new language has a lot of catching up to do. In a way it's funny that every new language builds up an infrastructure first, toolchains etc. Like someone who's trying to learn how to play guitar buys expensive amps and flashy effect devices before s/he can even play a single chord.

However, language features aside, how is D doing in the mobile sector? Most new languages boast Android/iOS support. Even if the language is inferior to D, people will opt for any language that can be ported to mobile platforms, regardless of its features.
March 13, 2015
On Fri, 13 Mar 2015 04:02:07 +0000, Jerome St-Louis wrote:

> To confirm guys eC does support C preprocessing.
> The C preprocessor is invoked before the eC compiler does its parsing.

ah, i see.

> eC tries to be a superset of C as much possible, with only a few keyword clashes like 'class' as an exception.

so they choose to throw away a possibility to include good type system into the language... ahem... looks bad for me. nice try, nevertheless.

« First   ‹ Prev
1 2