 
       defrecord User, name: "José", age: 25
 
-  Notice that, different to `defrecordp`, `defrecord` expects an
+  Notice that, unlike `defrecordp`, `defrecord` expects an
   alias as first argument. This is because `defrecord` is going
   to create a module named `User` with all the relevant metadata.
   This module can then be imported and we can manipulate the user

      user.update(age: 26)
      #=> User[name: "Hello", age: 26]

  All the calls above are happening at runtime. It gives Elixir
  records a lot of flexibility at the cost of performance since
  there is more work happening at runtime.

  To sum it up, `defrecordp` should be used when you don't want
  to expose the record information while `defrecord` should be used
  whenever you want to share a record within your code or with other
  libraries or whenever you need to dynamically set or update fields.

  You can learn more about it on `Kernel.defrecord/2` docs. Now
  let's discuss the usefulness of using records with protocols.

  ## Protocols


  are replaced by brackets. When the shortcut syntax is used, there
  is no need to import the record.

  Before we sum up the differences between `defrecord` and
  `defrecordp`, there is one last functionality introduced by
  `defrecord` that we need to discuss.

