mswp, a decorator that clears temporary local variables upon function execution, preventing clutter and mitigating memory leaks
mswp is a Python decorator designed to enhance code cleanliness and mitigate potential memory leaks by automatically clearing temporary local variables after function execution.
Python functions often create temporary variables for intermediate computations, which can clutter the local namespace and potentially lead to memory leaks if not properly managed. mswp addresses this issue by providing a simple yet powerful decorator that automatically cleans up temporary local variables, ensuring an efficient execution environment.
You can install mswp via pip:
pip3 install mswp
To use mswp, simply decorate your functions with @mswp. This ensures that any temporary local variables used within the function are cleared upon completion, promoting code cleanliness and efficient memory usage.
from mswp import clear
@clear
def my_function():
temp_var = 10
# Your code here
return result
In this example, my_function is decorated with @clear, ensuring that any temporary local variables used within it are cleared upon completion.
func
: The function to be decorated.
function
: The decorated function.
-
Automatic Cleanup: mswp automatically clears temporary local variables after function execution, preventing clutter and potential memory leaks.
-
Simplified Syntax: With a simple decorator, mswp streamlines code maintenance and promotes readability.
-
Error Handling: mswp provides robust error handling to ensure reliable execution even in the presence of exceptions.
If you use this code in your research, please use the following BibTeX entry.
@misc{louisbrulenaudet2023,
author = {Louis Brulé Naudet},
title = {mswp, a decorator that automatically clears temporary local variables upon function execution, effectively preventing clutter and mitigating memory leaks},
howpublished = {\url{https://github.com/louisbrulenaudet/mswp}},
year = {2024}
}
If you have any feedback, please reach out at louisbrulenaudet@icloud.com.