This package brings invariable variables or single assignment variables to Python (like in Erlang and other functional programming languages).
Examples
one = 1
two = 2
...
two += one # invalid!
total = 0
for i in range(4):
total += i # invalid!
$ pip install invars
$ invars my_script.py
In functional programming, assignment is discouraged in favor of single assignment. [...] Imperative assignment can introduce side effects while destroying and making the old value unavailable while substituting it with a new one
Single assignment variables simplifies a lot of things because it takes out the "time" variable from your programs.
- Integrate with
flakes8