Skip to content

Add tutorial for executor design #4361

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

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

shrijitsingh99
Copy link
Contributor

@shrijitsingh99 shrijitsingh99 commented Aug 27, 2020

TODO:
Add references

@shrijitsingh99 shrijitsingh99 marked this pull request as ready for review August 29, 2020 00:27
@SergioRAgostinho SergioRAgostinho added module: tutorials priority: gsoc Reason for prioritization needs: code review Specify why not closed/merged yet labels Aug 29, 2020
@kunaltyagi kunaltyagi added needs: more work Specify why not closed/merged yet and removed needs: code review Specify why not closed/merged yet labels Aug 29, 2020
@shrijitsingh99
Copy link
Contributor Author

I have resolved all issues. PTAL once.

Copy link
Member

@kunaltyagi kunaltyagi left a comment

Choose a reason for hiding this comment

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

LGTM. If there are more issues, we can have another PR to resolve them.

(Also I would like to see this on RTD to read in a better environment than broken lines on GitHub issue)

Copy link
Member

@SergioRAgostinho SergioRAgostinho left a comment

Choose a reason for hiding this comment

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

I just had an idea. To prevent us from spending time with grammatical issues and allow us to solely focus on the technical explanations, would you mind running this text through grammarly or some other similar service?

@shrijitsingh99
Copy link
Contributor Author

shrijitsingh99 commented Aug 29, 2020

Yeah, sorry about that. I should have run it through Grammarly once :(.

Ran it through Grammarly now. The remaining task is to add references.

Rendered Preview:

screencapture-file-home-shrijit-pcl-doc-build-doc-advanced-html-executor-design-html-2020-08-29-20_39_23

@kunaltyagi kunaltyagi added needs: code review Specify why not closed/merged yet and removed needs: more work Specify why not closed/merged yet labels Aug 30, 2020
Comment on lines +378 to +379
being able to reference any derived executor. Basic properties of all executors like
copy constructors, overloaded equality operators. The CRTP mechanism had some restrictions in the sense that
Copy link
Member

Choose a reason for hiding this comment

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

Basic properties of all executors like copy constructors, overloaded equality operators.

Should this be part of the sentence before it?

to the base class using CRTP as it was felt to be unnecessary. Having inheritance also introduces runtime polymorphism
as the derived executor would override some of the base executors' method, and the call to the overridden function is
resolved at run time. This is opposed to one of the design consideration i.e., have everything compile-time and avoid
any overhead. The base executor didn't add a lot besides allowing code sharing of a few common functionalities and
Copy link
Member

Choose a reason for hiding this comment

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

...and avoid runtime overhead.

You still pay the price in compilation time.
Something to watch in case you're feeling lazy at some point:
https://www.youtube.com/watch?v=rHIkrotSwcc

Copy link
Member

Choose a reason for hiding this comment

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

Something to watch in case you're feeling lazy at some point:

Links to a 1 hour info-dense video by Chandler. I wonder how Sergio relaxes 😆

@kunaltyagi kunaltyagi added needs: author reply Specify why not closed/merged yet and removed needs: code review Specify why not closed/merged yet labels Sep 12, 2020
@stale
Copy link

stale bot commented Dec 19, 2020

Marking this as stale due to 30 days of inactivity. Commenting or adding a new commit to the pull request will revert this.

@stale stale bot added the status: stale label Dec 19, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
module: tutorials needs: author reply Specify why not closed/merged yet priority: gsoc Reason for prioritization status: stale
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants