Alternate declaration syntax
Koroskin Denis
2korden+dmd at gmail.com
Fri Apr 11 11:26:24 PDT 2008
On Fri, 11 Apr 2008 21:26:24 +0400, Hans W. Uhlig
<huhlig at clickconsulting.com> wrote:
> Ok, Posting to the main forum so it doesn't get lost in the const stuff.
>
> Perhaps a slight variation to the C declaration might be in order, since
> I know that multiple return values are wanted, a simple and readable
> syntax for inheritance is needed (using : as an inheritor does not make
> code more readable) try this out and see if it makes it clearer
>
> <modifiers,...> <identifier> <properties,...> {...}
>
> such that:
> const foo(const int, const double) §
> throws barExtension §
> returns const int, const float
> {
> // ... code ...
> }
>
> same for classes:
>
> const class foo § extends bar {
> const int x;
> pure foo(const int, const double) § returns invariant string;
> // ... more code ...
> }
>
> (Note: § is used as a divider because no one uses it for anything in
> programming and I didn't want to start an argument over : or | or ; or
> any other punctuation being used elsewhere and being bad, quite possible
> punctuation wouldn't be neccessary)
>
> It looks like a hideous cross between java and visual basic but it is
> clean, readable, simple to machine parse(I think) and descriptive. using
> slightly longer keywords makes a language a little more verbose, but it
> also makes it readable. if you want to use punctuation for everything
> you get what happened to perl when someone got a little too creative
>
> `$=`;$_=\%!;($_)=/(.)/;$==++$|;($.,$/,$,,$\,$",$;,$^,$#,$~,$*,$:,@%)=(
> $!=~/(.)(.).(.)(.)(.)(.)..(.)(.)(.)..(.)......(.)/,$"),$=++;$.++;$.++;
> $_++;$_++;($_,$\,$,)=($~.$"."$;$/$%[$?]$_$\$,$:$%[$?]",$"&$~,$#,);$,++
> ;$,++;$^|=$";`$_$\$,$/$:$;$~$*$%[$?]$.$~$*${#}$%[$?]$;$\$"$^$~$*.>&$=`
Yeah, except that I (and many others) don't have that sign on my keyboard
<g>
Did you mean $, not §? IMO, colon serves the purpose better.
Other than this, I like Jave-style throwable list. I believe it makes DBC
more powerful.
I would also like to see thread safety attribute as well, but it could be
a pain for compiler to verify.
More information about the Digitalmars-d
mailing list