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