Req #69738 [Opn]: Declare immutable variables
| From: | chx@php.net | Date: | Mon, 01 Jun 2015 11:13:56 +0000 |
| Subject: | Req #69738 [Opn]: Declare immutable variables | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-193047@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=69738&edit=1
ID: 69738
Updated by: chx@php.net
Reported by: ugoren at interwise dot co dot il
Summary: Declare immutable variables
Status: Open
Type: Feature/Change Request
-Package: PHP Language Specification
+Package: Variables related
PHP Version: Irrelevant
Block user comment: N
Private report: N
New Comment:
The language specification describes the language as it is. This is a feature request against the
language itself.
Previous Comments:
------------------------------------------------------------------------
[2015-06-01 11:06:02] ugoren at interwise dot co dot il
Description:
------------
I would like to have an option to declare immutable variables,
for example
$a=1;// is a mutable variable
#b=1;// is an immutable variable
The advantages of immutable variables are numerous:
1. caching function return values
2. parallelism (no shared memory)
3. pass variables by reference
4. Testability, just record a pure function's input and outputs, and you have automatically
generated unit-tests.
Test script:
---------------
//sample code:
#a=array(1,2);
#a=array(1,3);//ok
#a[1]=4;//error: modifying immutable variable
//pure functions:
function #pure_function(#a,#b)
{
return #a+#b;
}
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=69738&edit=1