### Disclaimer
dutc = Don't Use This Code (!!)
# Compatibility
* Python 3.5 or higher
* Linux or OS X
* need build toolchain (prob. need `gcc`)
# Read Watches in Python
```python
>>> import rwatch # enable functionality
>>> from sys import setrwatch, getrwatch
>>> x, y, z = object(), object(), object()
>>> def view(frame, obj):
... print(frame, obj)
... return obj
...
>>> setrwatch({id(x): view, id(y): view})
>>> getrwatch()
{139825758638208: <function view at 0x7f2bb89a59d8>, 139825758638224: <function view at 0x7f2bb89a59d8>}
>>> x
<frame object at 0x7f2bb8ad9ba8> <object object at 0x7f2bb8ac9080>
<object object at 0x7f2bb8ac9080>
>>> y
<frame object at 0x7f2bb8ad9d48> <object object at 0x7f2bb8ac9090>
<object object at 0x7f2bb8ac9090>
>>> z
<object object at 0x7f2bb8ac90a0>
```
# Lessons:
* read watches are a very useful tool for debugging
* it's actually very useful for a language to have a runtime
* there are some hidden equivalencies between, e.g., read watches and perfect proxy objects
dutc = Don't Use This Code (!!)
# Compatibility
* Python 3.5 or higher
* Linux or OS X
* need build toolchain (prob. need `gcc`)
# Read Watches in Python
```python
>>> import rwatch # enable functionality
>>> from sys import setrwatch, getrwatch
>>> x, y, z = object(), object(), object()
>>> def view(frame, obj):
... print(frame, obj)
... return obj
...
>>> setrwatch({id(x): view, id(y): view})
>>> getrwatch()
{139825758638208: <function view at 0x7f2bb89a59d8>, 139825758638224: <function view at 0x7f2bb89a59d8>}
>>> x
<frame object at 0x7f2bb8ad9ba8> <object object at 0x7f2bb8ac9080>
<object object at 0x7f2bb8ac9080>
>>> y
<frame object at 0x7f2bb8ad9d48> <object object at 0x7f2bb8ac9090>
<object object at 0x7f2bb8ac9090>
>>> z
<object object at 0x7f2bb8ac90a0>
```
# Lessons:
* read watches are a very useful tool for debugging
* it's actually very useful for a language to have a runtime
* there are some hidden equivalencies between, e.g., read watches and perfect proxy objects
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dutc-rwatch-0.1.1.tar.gz
(45.9 kB
view details)
File details
Details for the file dutc-rwatch-0.1.1.tar.gz.
File metadata
- Download URL: dutc-rwatch-0.1.1.tar.gz
- Upload date:
- Size: 45.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa860827fb26911719cd93f085bfca7eab06e89eb89e181cd40a0e238d2815fd
|
|
| MD5 |
d5bfaee0e85d952a1c4d6efd799a4208
|
|
| BLAKE2b-256 |
1e97883396bf85c3885ae192228a72a31eb7aea47bc18b5a89083bce456d7413
|