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

Document Metamodel::TypePretense and Metamodel::MethodDelegation #3352

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

Kaiepi
Copy link
Collaborator

@Kaiepi Kaiepi commented Apr 30, 2020

The problem

Metamodel::TypePretense, Metamodel::MethodDelegation, and Metamodel::CoercionHOW are undocumented. While documentation for the latter isn't terribly important IMO, the former two are very useful when implementing your own HOWs and really need documentation. Documenting them also helps explain some behaviours of roles that may not be entirely clear.

Solution provided

Document the metaroles and metaclasses mentioned, and update roles' HOWs' documentation.

Copy link
Contributor

@JJ JJ left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please check comments out.


In signatures, I<type coercions> may be used to change the types of
arguments or return values from one type to another:

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe link the corresponding explanation?

doc/Type/Metamodel/CoercionHOW.pod6 Outdated Show resolved Hide resolved
Coercions L<pretend to be|/type/Metamodel::TypePretense> of types C<Any>
and C<Mu>, and L<delegate|/type/Metamodel::MethodDelegation> methods to
C<Any>.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe provide an use case for this?

doc/Type/Metamodel/CurriedRoleHOW.pod6 Show resolved Hide resolved
doc/Type/Metamodel/MethodDelegation.pod6 Show resolved Hide resolved
doc/Type/Metamodel/MethodDelegation.pod6 Outdated Show resolved Hide resolved
doc/Type/Metamodel/TypePretense.pod6 Show resolved Hide resolved
doc/Type/Metamodel/TypePretense.pod6 Outdated Show resolved Hide resolved
doc/Type/Metamodel/CurriedRoleHOW.pod6 Show resolved Hide resolved
@Kaiepi
Copy link
Collaborator Author

Kaiepi commented Nov 19, 2022

Metamodel::TypePretense and Metamodel::MethodDelegation haven't changed since writing this. There are a ton of changes to Metamodel::CoercionHOW that have happened between then and now though. Is it alright if I just remove changes to do with that type to revisit another time?

@coke
Copy link
Collaborator

coke commented Nov 20, 2022

Metamodel::TypePretense and Metamodel::MethodDelegation haven't changed since writing this. There are a ton of changes to Metamodel::CoercionHOW that have happened between then and now though. Is it alright if I just remove changes to do with that type to revisit another time?

Yes that would be fine; maybe create a ticket to track any remaining work.

@coke
Copy link
Collaborator

coke commented Nov 20, 2022

Of the three, only Metamodel::CoercionHOW seems to be spec'd.

@Kaiepi
Copy link
Collaborator Author

Kaiepi commented Nov 22, 2022

Metamodel::CoercionHOW-related changes have been removed. There don't look to be references to coercions in Metmoadel::TypePretense or Metamodel::MethodDelegation.

@Kaiepi Kaiepi changed the title Document Metamodel::TypePretense, Metamodel::MethodDelegation, and Metamodel::CoercionHOW Document Metamodel::TypePretense and Metamodel::MethodDelegation Nov 22, 2022
@coke coke self-assigned this Feb 2, 2023
@coke coke added this to the 2023-First Quarter milestone Feb 7, 2023
@coke coke removed their assignment Mar 4, 2023
@coke coke modified the milestones: 2023-Quarter 1, 2023-Quarter 2 Apr 1, 2023
@coke coke modified the milestones: 2023-Quarter 2, 2023-Quarter 3 Jul 12, 2023
@coke coke modified the milestones: 2023-Quarter 3, 2023-Quarter 4 Oct 8, 2023
@coke coke removed this from the 2023-Quarter 4 milestone Mar 31, 2024
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 this pull request may close these issues.

3 participants