D 2015/2016 Vision?

Paulo Pinto via Digitalmars-d digitalmars-d at puremagic.com
Thu Oct 8 06:20:49 PDT 2015


On Thursday, 8 October 2015 at 11:15:35 UTC, Ola Fosheim Grøstad 
wrote:
> On Wednesday, 7 October 2015 at 17:02:51 UTC, Paulo Pinto wrote:
>> On Wednesday, 7 October 2015 at 15:42:57 UTC, Ola Fosheim 
>> Grøstad wrote:
>>> Are you thinking about Rust, or some other language?
>>
>> All of the ones that explore this area. Rust, ATS, Idris, 
>> F*....
>
> Oh, yeah, sure. I wondered more if you were looking to adopt a 
> language with substructural typing (beyond library types like 
> unique_ptr) for production.


Not a chance.

In my little universe it is all about JVM and .NET languages, 
JavaScript for the browser and C++ for when there isn't any other 
way.

Those languages is where I am having fun now, besides mobile 
coding. But it is
just dabbling and reading papers about them, nothing serious.

It is really hard to keep up with JVM, .NET and occasional look 
into C++. The languages are easy when compared to the whole 
ecosystem, hence why I went silent.

Just decided to comment, as an explanation of what resource 
management is possible in modern versions of Java/.NET.

>
> I personally think that they future is with actor-based 
> programming in combination with substructural/behavioural 
> typing since it lends itself to distributed computing, multi 
> core etc. The challenge is making a good language for it that 
> is sufficiently performant and still allows breaking out actors 
> to other computational units (computers/CPUs).

Microsoft Research had an actor-based language for awhile, Axum.

Many of the ideas are now in .NET.
http://blogs.msdn.com/b/maestroteam/archive/2011/02/28/the-state-of-axum.aspx

https://en.wikipedia.org/wiki/Axum_%28programming_language%29

http://download.microsoft.com/download/B/D/5/BD51FFB2-C777-43B0-AC24-BDE3C88E231F/Axum%20Programmers%20Guide.pdf

>
> But yeah, I think there is a paradigm shift coming in ~10-15 
> years maybe?

Substructural typing for sure as it is coming slowly mainstream 
now.

Several years ago it was just Agda, now there are several 
projects, including
companies like Microsoft looking at it.

>
>>> Are you thinking about more lintish tools that can give false 
>>> positives, or something with guarantees that can be a 
>>> language feature?
>>
>> What Herb Sutter demoed at CppCon as compiler validation to 
>> CoreC++.
>
> I've only seen the talks on youtube. I was under the impression 
> that Microsoft had accurate and inaccurate analysers, but that 
> the accurate ones were too slow on current C++ code bases. With 
> more annotations to guide the analyser... yes, maybe.
>
> I assume Microsoft use analysers based on Boogie:
>
> http://research.microsoft.com/en-us/projects/boogie/

They use it on their driver validation tools.

>
>> I can imagine that depending on how well the community takes 
>> those guidelines, they might become part of C++20.
>
> I think this is needed, but adoption probably won't happen 
> without IDE benefits.

Yep, but for all of us that aren't shaving off ms or squeezing 
one more byte into the cache line, it doesn't matter much.

--
Paulo


More information about the Digitalmars-d mailing list