The stately := operator feature proposal

Timothee Cour thelastmammoth at gmail.com
Thu May 30 09:59:30 PDT 2013


In this:
auto:
   x = 1;
   y = 2;
   f = a => a+1
   writeln(f(x) + y);

where do you delimit the end of the 'auto:' scope?
Actually this is already possible like that:
auto
  x=1,
  y=2;


On Thu, May 30, 2013 at 9:18 AM, Diggory <diggsey at googlemail.com> wrote:

> On Thursday, 30 May 2013 at 15:05:40 UTC, monarch_dodra wrote:
>
>> On Thursday, 30 May 2013 at 14:55:38 UTC, someone wrote:
>>
>>> Please think about the huge math and science community. Most of them I
>>> came across like D for its speed and efficiency. But D can never replace
>>> Matlab/Octave/Ipython/Scipy because ....
>>>
>>> .. of the messy syntax compared to almost math like syntax above
>>> languages offer.
>>>
>>> For example, if I want to quickly want to plot something, in Octave I
>>> would do:
>>>
>>> x = linspace(0, 2*pi, 1000);
>>> y = sin(x);
>>> plot(x, y)
>>>
>>
>> I could be mistaken, but those languages don't have the notion of
>> declaration, do they? (honest question)
>>
>> Last time I tried a similar language, basically, any variable name that
>> is not yet used is resolved to null. Which is why the syntax work.
>>
>> D on the other hand has a strong notion of declaration, and construction.
>>
>> I'm not sure it's just a matter of "messy syntax", and more of different
>> paradigms. In D, it is more important to make the distinction of
>> construction/assignment. The syntax is messy, but the new syntax blurs that
>> line.
>>
>
> There's another alternative that fits more with D style which is also very
> mathsy.
>
> It would be possible to make storage classes work with the colon syntax,
> ie:
>
> auto:
>    x = 1;
>    y = 2;
>    f = a => a+1
>    writeln(f(x) + y);
>
> Also:
>
> immutable:
>    x = 3;
>    y = 4;
>
> Kind of like option explicit: off in VB
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20130530/07e55193/attachment.html>


More information about the Digitalmars-d mailing list