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

docs: add a "FAQ" or "Common questions & troubleshooting" section to the manual #640

Closed
fingolfin opened this issue Aug 30, 2021 · 2 comments · Fixed by #744
Closed

docs: add a "FAQ" or "Common questions & troubleshooting" section to the manual #640

fingolfin opened this issue Aug 30, 2021 · 2 comments · Fixed by #744

Comments

@fingolfin
Copy link
Member

fingolfin commented Aug 30, 2021

... which could discuss things like:

  • that on Windows, one must install WSL and Julia for Linux
  • for WSL users: to access Unix files from Explorer: Type \\wsl$ in the address bar
  • Build issues caused by Linux distros shipping crippled Julia versions (e.g. on Debian one has to install libjulia-dev or something like that)
  • C++ issues as in libstdc++.so.6: version `GLIBCXX_3.4.26' not found GAP.jl#553
  • why there is fmpz
  • why Julia matrices are not sufficient for our needs
  • how to install/access custom GAP packages (e.g. unpublished ones)
  • .... ?
@HechtiDerLachs
Copy link
Collaborator

HechtiDerLachs commented Sep 9, 2021

It would be nice if we had a coherent, recursive and Oscar-wide policy on how to copy structs and expose this to the user.

For instance: I'm implementing a mutable struct for morphisms of affine schemes f : X -> Y. This struct has as one of its member variables the pullback homomorphism of the associated rings which is an instance f* of AlgebraHomomorphism.

Now I would like to implement my own copy constructor for morphisms of affine schemes which needs to take care of the internals. Therefore, at some point, I would like to call Base.copy(...) on the stored instance of f*. However, as for now, the copy routine is not implemented for AlgebraHomomorphism.

I'm afraid, this is not only about the FAQ part, but also about the design of Oscar: Which basic methods do we expect the developer to implement for any struct they introduce? So maybe this comment also belongs somewhere else. On the other hand, once such decisions have been taken, they should certainly be communicated somewhere.

@fingolfin
Copy link
Member Author

@HechtiDerLachs I think in general copy or deepcopy "should" work; but this may not be implemented for an object; in that case perhaps you need to report it as a "missing feature". In any case, I don't think this belongs into the FAQ, at least as I have it in mind.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants