
substack.com/@chienpham/note/c-52996400
Preview meta tags from the substack.com website.
Linked Hostnames
2Thumbnail

Search Engine Appearance
Chien Pham (@chienpham)
Thanks for great writing, below is my understanding, pls let me know if I'm wrong 🙏 1. inline / precomputing (dispatch) - execute directly, no jump - well know info at compile time - e.g: simple struct, enum definition 2. static dispatch: - 1 jump to execute address - execute memory address is knowable at compile time 3. dynamic dispatch (virtual table / witness table dispatch) - inheritance / polymorphism (method override, protocol conforms …) - method execute address is stored in function table - 2 jumps when execute: (1) jumps to the function table, (2) access `vTable[method_name]` to get the execute access 4. message dispatch - powered by Objective-C runtime , pure swift don’t have message dispatch - using `objc_msgSend` to determine the implementation of a given `selector` , - complier search through class (NSObject subclass) hierarchy bottom up, - each class can provide the implementation at runtime using several method level: `resolveInstanceMethod`, `forwardingTargetForSelector` , `forwardInvocation` (similar for class method)
Bing
Chien Pham (@chienpham)
Thanks for great writing, below is my understanding, pls let me know if I'm wrong 🙏 1. inline / precomputing (dispatch) - execute directly, no jump - well know info at compile time - e.g: simple struct, enum definition 2. static dispatch: - 1 jump to execute address - execute memory address is knowable at compile time 3. dynamic dispatch (virtual table / witness table dispatch) - inheritance / polymorphism (method override, protocol conforms …) - method execute address is stored in function table - 2 jumps when execute: (1) jumps to the function table, (2) access `vTable[method_name]` to get the execute access 4. message dispatch - powered by Objective-C runtime , pure swift don’t have message dispatch - using `objc_msgSend` to determine the implementation of a given `selector` , - complier search through class (NSObject subclass) hierarchy bottom up, - each class can provide the implementation at runtime using several method level: `resolveInstanceMethod`, `forwardingTargetForSelector` , `forwardInvocation` (similar for class method)
DuckDuckGo

Chien Pham (@chienpham)
Thanks for great writing, below is my understanding, pls let me know if I'm wrong 🙏 1. inline / precomputing (dispatch) - execute directly, no jump - well know info at compile time - e.g: simple struct, enum definition 2. static dispatch: - 1 jump to execute address - execute memory address is knowable at compile time 3. dynamic dispatch (virtual table / witness table dispatch) - inheritance / polymorphism (method override, protocol conforms …) - method execute address is stored in function table - 2 jumps when execute: (1) jumps to the function table, (2) access `vTable[method_name]` to get the execute access 4. message dispatch - powered by Objective-C runtime , pure swift don’t have message dispatch - using `objc_msgSend` to determine the implementation of a given `selector` , - complier search through class (NSObject subclass) hierarchy bottom up, - each class can provide the implementation at runtime using several method level: `resolveInstanceMethod`, `forwardingTargetForSelector` , `forwardInvocation` (similar for class method)
General Meta Tags
14- titleChien Pham (@chienpham): "Thanks for great writing, below is my understanding, pls let me know if I'm wrong 🙏 1. inline / precomputing (dispatch) - execute directly, no jump - well know info at compile time - e.g: simple struct, enum definition 2. static dispatch: - 1 jump to execute add…"
- title
- title
- title
- title
Open Graph Meta Tags
9- og:urlhttps://substack.com/@chienpham/note/c-52996400
- og:imagehttps://substackcdn.com/image/fetch/$s_!XCt4!,w_400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Freader%2Fnotes-thumbnail.jpg
- og:image:width400
- og:image:height400
- og:typearticle
Twitter Meta Tags
8- twitter:imagehttps://substackcdn.com/image/fetch/$s_!XCt4!,w_400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack.com%2Fimg%2Freader%2Fnotes-thumbnail.jpg
- twitter:cardsummary
- twitter:label1Likes
- twitter:data11
- twitter:label2Replies
Link Tags
17- alternatehttps://substack.com/@chienpham/note/c-52996400
- apple-touch-iconhttps://substackcdn.com/icons/substack/apple-touch-icon.png
- canonicalhttps://substack.com/@chienpham/note/c-52996400
- iconhttps://substackcdn.com/icons/substack/icon.svg
- manifest/manifest.json
Links
5- https://substack.com/@chienpham/note/c-52996400?
- https://substack.com/@chienpham?
- https://substack.com/@chienpham?utm_source=substack-feed-item
- https://substack.com/home?
- https://swifthub.substack.com