Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use @property decorators #81

Open
1 task
jorgensd opened this issue Jan 14, 2022 · 5 comments
Open
1 task

Use @property decorators #81

jorgensd opened this issue Jan 14, 2022 · 5 comments

Comments

@jorgensd
Copy link
Member

jorgensd commented Jan 14, 2022

I think we should start using property decorators, as it would make alot of the code more readable.

@wence-
Copy link
Collaborator

wence- commented Jan 17, 2022

A number of the zero-argument property functions currently do some computation to cache expensive results, so it might be worthwhile considering functools.cached_property too.

@jorgensd
Copy link
Member Author

I'm fine with using functools.cached_property as well. I figured a proposal such as this would break quite a lot of code in both DOLFINx and Firedrake, but as long as you, @dham , @garth-wells etc. are happy with this being introduced, Im happy to give it a go over a weekend.

@jhale
Copy link
Member

jhale commented Jan 17, 2022

It would be good to create a release/tag with a last working version before proceeding with large changes.

@dham
Copy link
Collaborator

dham commented Jan 17, 2022

I'm in favour of backward-incompatible API improvements in UFL. However I'd rather they came in a limited number of batches, rather than a constant dribble. Users should understand us changing our API for the better, but their appetite for repeatedly changing their code will be limited.

@jorgensd
Copy link
Member Author

jorgensd commented Jan 17, 2022

It would be good to create a release/tag with a last working version before proceeding with large changes.

The latest version working with DOLFIN (bitbucket) is 1de7f12 (or maybe 7a4303f)
The changes introduced in #77 breaks old ffc as noted in #77 (comment)

@mscroggs mscroggs added this to newFL Sep 12, 2023
@mscroggs mscroggs moved this to Aims & design principles in newFL Sep 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Aims & design principles
Development

No branches or pull requests

4 participants