disallow default parameter
This commit is contained in:
parent
c6b9f620d2
commit
31c688b4c8
14
README.md
14
README.md
@ -51,17 +51,9 @@ class Foo(EnvExperiment):
|
|||||||
* No implicit coercion, require implicit cast. Integers are int32 by default,
|
* No implicit coercion, require implicit cast. Integers are int32 by default,
|
||||||
floating point numbers are double by default.
|
floating point numbers are double by default.
|
||||||
* RPCs: optional parameter type signature, require return type signature.
|
* RPCs: optional parameter type signature, require return type signature.
|
||||||
* Value of the optional parameter would be created by the caller, and
|
* Function default parameters are not allowed, as changes to the default value
|
||||||
independent between different invokations. The following code would always
|
would not be kept across kernel calls, and that is a potential source of
|
||||||
output 2 `1`, instead of `1` and `2` for actual Python:
|
confusion.
|
||||||
```py
|
|
||||||
def test(a = [1]):
|
|
||||||
print(a)
|
|
||||||
a[0] += 1
|
|
||||||
|
|
||||||
test()
|
|
||||||
test()
|
|
||||||
```
|
|
||||||
|
|
||||||
## Generics
|
## Generics
|
||||||
We use [type variable](https://docs.python.org/3/library/typing.html#typing.TypeVar) for denoting generics.
|
We use [type variable](https://docs.python.org/3/library/typing.html#typing.TypeVar) for denoting generics.
|
||||||
|
Loading…
Reference in New Issue
Block a user