Thank you for the report. The issues in this ticket have been resolved:

- "tmpdir doesn't appear to change directories"
  - &tmpdir has been removed
- "Should I be able to change the temporary directory"
  - Yes, by assigning to $*TMPDIR directly; simply do `my $*TMPDIR = 
'foo/bar'.IO`.
    The issue that blocked assignment was fixed[^1] and tested[^2] in 2017.04 
release
- "Can only use 'temp' on a container"
  - This too was fixed[^1] and tested[^2] in 2017.04 release

Side note:
- "What's the point of it being dynamic if it can't change?"
  - There's no connection between dynamics and the ability to change
    them. Their point is scoping and not mutability; a change done to a dynamic
    var in some sub would still be visible up the call stack, which is why
    you'd usually use a `temp` or `my` on these global dynamic variables,
    like $*TMPDIR, to prevent your changes affecting other stuff. We do
    have immutable (or rather, containerless) dynamics (e.g. $*THREAD)
    and being unable to assign to them isn't a bug.

[1] https://github.com/rakudo/rakudo/commit/b62d1a7
[2] https://github.com/perl6/roast/commit/1d4e881

-- IO grant

Reply via email to