Sreekanth
Sreekanth
  • Видео 22
  • Просмотров 342 946
Internals of Interfaces in Golang | Intermediate level
This video covers the internal of the interface types in Go language.
0:00 Basics of Interfaces
0:54 Changes in interfaces due to Generics
1:52 Interface elements
3:50 Identical interfaces
4:36 Type description structures
6:04 Memory layout of interfaces
11:17 Empty interface - runtime type representation
11:43 Type assertion
12:12 Type switch
12:41 why nil error is not nil
13:31 Benchmarking overhead of interface method call
17:23 Devirtualization
References:
research.swtch.com/interfaces
go101.org/article/interface.html
Просмотров: 2 171

Видео

Visualizing memory layout of Rust's data types
Просмотров 19 тыс.Год назад
Covers how a binary is executed, what segments are mapped to memory, the purpose/working of stack and heap memory, and how values of Rust's data types are laid out in memory. The data types that we cover here are integers, char, Vector, slice, String, string slice, structs, enums, smart pointers like Box, Rc, Arc, Trait object and Fn traits like FnOnce, FnMut and Fn. We also cover the differenc...
How variables works in Python | Explained with Animations
Просмотров 7 тыс.Год назад
This video tries to explain how variables or name bindings work in Python and their internal representations like PyObject and PyVarObjects, using animations. Intermediate level concepts like reference counting, garbage collection, how lists work internally, why python is a dynamically typed language, interning, None objects, equality operators like ' ' and 'is', how 'del' works, how variables ...
Methods in Golang | Intermediate level
Просмотров 2,1 тыс.Год назад
Explains how methods work in Go, things like method normalization, method value evaluation, gotchas and best practices. It also explains the reasons for choosing between pointer and value receiver. 0:00 Basics of Methods 1:21 Value vs Pointer receivers 2:55 Methods on nil values 3:44 Pass by copy 5:54 Pass by copy with slices 7:58 Method normalization 9:25 Method value evaluation 11:01 Gotcha -...
Inspecting the map header in Golang
Просмотров 966Год назад
When you create a map variable, the variable stores a pointer to a map header struct. The fields of this struct can not be accessed in normal Go programs. This video will cover the procedure to inspect fields of this map header struct. Details regarding internals of map data type in Golang was covered in: ruclips.net/video/ACQs6mdylxo/видео.html
Internals of Maps in Golang
Просмотров 6 тыс.Год назад
Internal implementation details of the map data type in Go programming language.
Maps in Golang | Intermediate level
Просмотров 1,6 тыс.Год назад
In this Golang programming tutorial, we will be learning some intermediate level concepts around the usage of the map data type. 0:00 Key types must be comparable 1:25 Composite literal types as keys/values 2:06 Empty vs nil map 3:36 Maps are pointers 4:21 Elements are unaddressable 5:34 Iteration 6:57 Deletion 8:02 Set data type
Strings, Bytes and Runes | Golang | intermediate level
Просмотров 7 тыс.Год назад
Covers memory layout of string data type, its relationship with rune slices and byte slices in Golang. We also discuss the conversion between these types, the compiler optimizations on these conversions and the strings.Builder object. Ascii, unicode and UTF-8 : ruclips.net/video/wIVmDPc16wA/видео.html 0:00 Raw vs Interpreted string literals 1:40 String header & Memory Layout 2:37 Rune data type...
ASCII, Unicode, UTF-32, UTF-8 explained | Examples in Rust, Go, Python
Просмотров 9 тыс.Год назад
This video explains ASCII, Unicode, UTF-32 and UTF-8 string encodings. 0:00 Introduction 0:30 ASCII 2:31 Unicode standard 4:37 UTF-32 Encoding 6:16 UTF-8 Encoding 7:15 Strings in Golang 8:11 Strings in Python 9:29 Rust example 9:41 Graphemes with multiple unicode points
Memory layout and mechanics of arrays and slices | Golang | intermediate level
Просмотров 6 тыс.2 года назад
We discuss the memory layout of arrays and slices in Golang. This provides a good mental model for writing efficient and bug free Go code that includes slices. 0:00 Intro 0:27 Arrays 1:35 Slices 4:19 Initializing a slice 4:48 Passing slice as function arguments 7:05 working of append operation 10:35 Gotcha with slicing large slices 11:36 Nil vs Empty slices 12:22 range loop variable semantics R...
Special/magic methods | Python OOP | Part 7
Просмотров 2,8 тыс.2 года назад
Covers Python's special or magic methods, their purpose and the overall pattern. This is the 7th video of tutorial series on Object oriented programming in Python: ruclips.net/p/PLSozy2hb5kKO7mWMQX5vLBuK3uxE3ggMV 0:00 Introduction 1:04 Documentation 1:15 repr 2:25 str 3:18 repr vs str 4:39 len 5:09 bool 6:50 Arithmetic Operators 8:38 Reflected arithmetic operators 10:06 Augmented arithmetic ope...
property decorator - deep dive | Python OOP | Part 6
Просмотров 7 тыс.2 года назад
We will be discussing about Python's properties class, it's purpose and usage as decorator. This is the 6th video of tutorial series on Object oriented programming in Python: ruclips.net/p/PLSozy2hb5kKO7mWMQX5vLBuK3uxE3ggMV 0:00 Introduction 0:56 Advantages of having getters and setters 2:18 Using property object 4:18 Attribute lookup order with property objects 4:56 property class signature 5:...
classmethod and staticmethod | Python OOP | Part 5
Просмотров 3,4 тыс.3 года назад
We will be learning about classmethods and staticmethods. This is the 5th video of tutorial series on Object oriented programming in Python: ruclips.net/p/PLSozy2hb5kKO7mWMQX5vLBuK3uxE3ggMV 0:00 Bound methods 1:08 Purpose of "self" in bound methods 3:03 class methods 6:52 Wrong use of class attributes 7:36 Static methods Credits: The contents of this video are mostly from my notes on Dr. Fred B...
Visualizing memory layout of Rust's data types [See description/first comment]
Просмотров 98 тыс.3 года назад
*UPDATE: This video is re-uploaded with a better audio here ruclips.net/video/7_o-YRxf_cc/видео.html* Covers how a binary is executed, what segments are mapped to memory, the purpose/working of stack and heap memory, and how values of Rust's data types are laid out in memory. The data types that we cover here are integers, char, Vector, slice, String, string slice, structs, enums, smart pointer...
Instance Initializer "__init__" method | Python OOP tutorial - Part 4
Просмотров 3 тыс.3 года назад
Explains the purpose of Python's init method in the context of Object-Oriented programming. 0:00 working of bound methods 1:42 Purpose of init 3:10 Initializer Vs constructor Playlist: ruclips.net/p/PLSozy2hb5kKO7mWMQX5vLBuK3uxE3ggMV Credits: The contents of this video are mostly from my notes on Dr. Fred Baptiste's course www.udemy.com/course/python-3-deep-dive-part-4/
Instance Methods & self | Python OOP - Part 3
Просмотров 3,2 тыс.3 года назад
Instance Methods & self | Python OOP - Part 3
class & instance dictionaries in Python | __dict__ | OOP - Part 2
Просмотров 8 тыс.3 года назад
class & instance dictionaries in Python | dict | OOP - Part 2
Object-oriented Programming in Python - part 1 [Introduction]
Просмотров 8 тыс.3 года назад
Object-oriented Programming in Python - part 1 [Introduction]
Python's Import System - Module object|Regular/Namespace Packages|Finders & Loaders|Relative imports
Просмотров 52 тыс.3 года назад
Python's Import System - Module object|Regular/Namespace Packages|Finders & Loaders|Relative imports
Closures in Python | Explained with animations
Просмотров 25 тыс.3 года назад
Closures in Python | Explained with animations
Python tutorial: Variable Scopes & Namespaces - global/local/nonlocal | Explained with animations
Просмотров 23 тыс.3 года назад
Python tutorial: Variable Scopes & Namespaces - global/local/nonlocal | Explained with animations
How variables work in Python | Explained with Animations [See description/first comment]
Просмотров 50 тыс.3 года назад
How variables work in Python | Explained with Animations [See description/first comment]

Комментарии

  • @rkvcherry5535
    @rkvcherry5535 День назад

    Super useful information every python programmer need to see this you are great man and you rocked it🎉🎉

  • @Gabriel_Bento
    @Gabriel_Bento 2 дня назад

    I'm really impressed, what a great content avaliable for FREE! Please keep up uploading videos.

  • @sobhanashrafi6368
    @sobhanashrafi6368 8 дней назад

    so great👌

  • @terryliu-1989
    @terryliu-1989 11 дней назад

    Wonderful work!! Just Wondering how did you make thes code animations? Which Tool did you use?

  • @WoWManiak1696
    @WoWManiak1696 11 дней назад

    Please do this extended explanation also for containers such as deque hashmap btreemap etc. Thank you for effort put in this video.

  • @mrshodz
    @mrshodz 12 дней назад

    Great explanation.

  • @jubiaj2672
    @jubiaj2672 15 дней назад

    This was great

  • @devlogschannel
    @devlogschannel 23 дня назад

    Thank you so much

  • @WilsonMar1
    @WilsonMar1 25 дней назад

    This is among the most insightful videos on RUclips. Well illustrated. I'm working on a quiz from the transcript of this video.

  • @SomerWarren-b1z
    @SomerWarren-b1z Месяц назад

    Bill Keys

  • @murodalinarzullaev5955
    @murodalinarzullaev5955 Месяц назад

    thanks for class, can you share used Presentation?

  • @tommyphillips1030
    @tommyphillips1030 Месяц назад

    @5:25 When the PyVarObject gets its refcnt inremented to 2, should the objects contained in the list also have their refcnt incremented?

    • @tommyphillips1030
      @tommyphillips1030 Месяц назад

      I guess it's sufficient to not increment their refcnts. In that case, all CPython needs to do is ensure that when the PyVarObject refcnt becomes 0, it decrements the refcnt of the contained objects

  • @minhphamvan8993
    @minhphamvan8993 Месяц назад

    much help video, thanks guys

  • @focker0000
    @focker0000 Месяц назад

    around 11:00 isn't it a move instead of copy?

  • @user-jm6gp2qc8x
    @user-jm6gp2qc8x Месяц назад

    this feels like i now know something that I'm not supposed to know

  • @user-jm6gp2qc8x
    @user-jm6gp2qc8x 2 месяца назад

    what the actual fuck

  • @actuallyStryder
    @actuallyStryder 2 месяца назад

    AI uncanny valley voices are bad and you should feel bad.

  • @MohammadLsk
    @MohammadLsk 2 месяца назад

    Awesome

  • @ElkeDecourley-m4x
    @ElkeDecourley-m4x 2 месяца назад

    Bechtelar Radial

  • @PrinceKumar-u4k4y
    @PrinceKumar-u4k4y 2 месяца назад

    This video should be part of "The Rust Book". This really explains why rust has so many data types. We need more rust videos. Thank You Sreekanth 👏👏

  • @johndavies729
    @johndavies729 2 месяца назад

    Hey! Great video! I’d love to do a voiceover for this to make it easier to listen to.

  • @DhavalAhir10
    @DhavalAhir10 2 месяца назад

    How to contact you bro? I have 2 question in Python. If you can able to answer.

  • @sandrokavlashvili8617
    @sandrokavlashvili8617 2 месяца назад

    Is this presentation available anywhere?

  • @matthias2447
    @matthias2447 2 месяца назад

    Fantastic. Especially showing the implementations through programming languages.

  • @HereIsZane
    @HereIsZane 2 месяца назад

    Amazing content, please do more rust themed deep dives

  • @VikramBhaskaran
    @VikramBhaskaran 2 месяца назад

    Personally I find this video extremely valuable @Sreekanth not just for Rust for compiled languages internals. Question I have what is the font used ? It looks like Jetbrains Mono but with some font ligatures turned on. Not sure what are the values

    • @sreekanthpr
      @sreekanthpr 2 месяца назад

      I use github.com/be5invis/Iosevka

  • @暴打麻薯
    @暴打麻薯 2 месяца назад

    这个视频实在讲的太好了,解答了我好多关于Rust的疑惑以及Java中的一些疑惑!!追过来点赞

  • @OzWannabe
    @OzWannabe 3 месяца назад

    Excellent video. I just wish animation of the stack to show chunks of memory allocated like a stack (one on top of the other) and freed the same way. I find it more intuitive.

  • @jkjoker777
    @jkjoker777 3 месяца назад

    i love this video so much do you have sources for this material?

  • @MuscleTeamOfficial
    @MuscleTeamOfficial 3 месяца назад

    this video was such a pleasure, <3 Sreekanth

  • @MuscleTeamOfficial
    @MuscleTeamOfficial 3 месяца назад

    subbed 4 this 1

  • @Maximus98245
    @Maximus98245 3 месяца назад

    I hate the computer generated voice. Please use a human voice it doesn’t matter if you have heavy accent

  • @denjiuzumaki4309
    @denjiuzumaki4309 3 месяца назад

    this video is just amazing!!!

  • @iamworstgamer
    @iamworstgamer 3 месяца назад

    terminator is teaching us rust.

  • @longstoryveryshort
    @longstoryveryshort 4 месяца назад

    what about CPP memory layout playlist

  • @DrIT-qv1ek
    @DrIT-qv1ek 4 месяца назад

    Thanks for dealing with a neglected topic. Great job!

  • @DrIT-qv1ek
    @DrIT-qv1ek 4 месяца назад

    Simply Great!

  • @DrIT-qv1ek
    @DrIT-qv1ek 4 месяца назад

    Exceptional!

  • @DrIT-qv1ek
    @DrIT-qv1ek 4 месяца назад

    Beyond exceptional. This is the only channel I have found that is non-trivial. Great job! The animations are great.

  • @dixztube
    @dixztube 4 месяца назад

    Wow this is awesome

  • @Zmey5656
    @Zmey5656 4 месяца назад

    For me map is the most useful thing in GoLang that they could come up with.

  • @sheldoncoooper4664
    @sheldoncoooper4664 4 месяца назад

    Not even go documentation has this much content 😅😅

  • @favio9454
    @favio9454 4 месяца назад

    Great video, love the layout of the content

  • @AnantaAkash.Podder
    @AnantaAkash.Podder 4 месяца назад

    Thank You Sir...

  • @AnantaAkash.Podder
    @AnantaAkash.Podder 4 месяца назад

    You really do have an Unique way of Explaining things to others

  • @AnantaAkash.Podder
    @AnantaAkash.Podder 4 месяца назад

    This by far the Best... In terms of explaining how Python Variables are Stored

  • @maxfraguas
    @maxfraguas 4 месяца назад

    Thank so much! 👏

  • @jcollins519
    @jcollins519 4 месяца назад

    Fantastic content. Nothing fancy, just straight to the point.

  • @jooonmantv
    @jooonmantv 4 месяца назад

    amazing

  • @fresonn
    @fresonn 4 месяца назад

    the best explanation on RUclips