Linked by Owen Anderson on Mon 19th Apr 2004 05:43 UTC
General Development For years the development scene has been dominated by the C family of languages, primarily C itself and its immediate successor C++. Recent years have given rise to other C-descendents, however, such as Sun's Java and Microsoft's C#.
Permalink for comment
To read all comments associated with this story, please click here.
A,b,C,D,....F, Z soup
by JJ on Mon 19th Apr 2004 15:41 UTC

With all this spagetti soup, I don't think it helps to just pick a letter like D as a name. Although the D author credentials look good, the company behind C++,Java,C# have far more resources to makes their langs stand out and get books written and mass marketing, education & so on.

Still there is room for minority languages that serve a purpose where the above don't, but D seems to be a fairly small improvement with some losses. I don't like having my #preprocessor taken away, stops me dead from any language without it.

In my work on chip design, I would like in the language basic int types of any size upto millions of bits if need be with all operators valid on them and quite a few more. That forces me to use C like HDLs which generally run slower than C by 10-100 fold. I would die to be able to write C with some HDL syntax, best of both worlds, speed & conciseness.

For instance a group of wires on the left is assigned a group of results on the right but not of same width pattern.

{ a,b,c } = { <expr>,..... }
all the right sides are evaluated and the bitwise concatted result is assigned to the bit wise concatenation of a,b,c

Of course you can do this in C indirectly but it introduces >>, &ing to pull groups apart, do work and rejoin and on lots of separate assigns. The total widths maybe far greater than basic int type size.

{ a,b,c } <= { <expr>,..... }
In this form the <= assignment means nonblocking, the result is assigned to the left side not just after the eval, but is held over until the enclosing block ends.

There are plenty of other HDL ideas I could take from Verilog too, such as the parallelism model, such a language might be called V or V++, but another V already exists, guess I'l have to be more creative.

So a hybrid of HDL with C would seem valuable to me but not perhaps to most C users unless you want arbitrary width math too.