Hi Chapel Users --

Following up on this mail from just over a month ago, the initializers team is sprinting to get our new initializer approach onto master quickly in order to switch over to it as much as possible for the upcoming 1.17 release of Chapel. As we do so, we want to minimize pain and suffering for users who are currently using initializers, particularly those who are working from the master branch.

To that end, if you have actively used/developed Chapel code outside of the main repository that currently relies on initializers (as opposed to constructors) to create records or classes, would you reply to me and let me know:

1) whether you're working from master or the release,

2) the degree to which you would like help and/or guidance in
   transitioning your code from old initializers to new initializers.


Thanks very much,
-Brad



---------- Forwarded message ----------
Date: Thu, 25 Jan 2018 13:23:44
From: Brad Chamberlain <[email protected]>
To: Chapel Users Mailing List <[email protected]>
Subject: Constructors -> Initializers -> New Initializers


Hi Chapel Users --

For those who've been following the Chapel project recently, you know that in striving to harden the core language, one of the things we've been working on has been to replace the original class/record constructor design with a more flexible and robust approach called initializers. Unfortunately, towards the end of 2017, we ran into an unanticipated "gotcha" in the initializer proposal that has caused us to rethink aspects of it. The result of that effort is that we are emerging with a revised initializer proposal, referred to loosely as "new initializers."

This mail has two goals:

(1) to point those who are interested in the topic to the following GitHub issue which provides a high-level description of this new approach, with links to a CHIP and presentation for more details, along with related
issues:

        https://github.com/chapel-lang/chapel/issues/8283

If you are interested in reviewing the revised proposal and providing feedback on it, this GitHub issue is the place to do so.


(2) to give those users who may have already started adopting initializers a heads-up that changes are coming -- and potentially quite soon for those of you who work from the master branch. As the transition takes place, if you need help converting your code over, please let us know.


In any event, our goal remains to get initializers to the point that they can completely replace constructors, at which point we will deprecate constructors and then retire them (timeline TBD).

In advance, sorry for any hassle this causes, and thanks for any feedback,
-Brad

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Chapel-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-users

Reply via email to