       # Import helpers for defining supervisors
       import Supervisor.Spec
 
-      # We are going to supervise the Stack server which will
-      # be started with a single argument [:hello]
+      # We are going to supervise the Stack server which
+      # will be started with a single argument [:hello]
+      # and the default name of :sup_stack.
       children = [
-        worker(Stack, [[:hello]])
+        worker(Stack, [[:hello], [name: :sup_stack]])
       ]
 
       # Start the supervisor with our one child
       {:ok, pid} = Supervisor.start_link(children, strategy: :one_for_one)
 
-  Notice that when starting the GenServer, we have registered it
+  Notice that when starting the GenServer, we are registering it
   with name `:sup_stack`, which allows us to call it directly and
   get what is on the stack:
 

  Let's try it:

      GenServer.call(:sup_stack, :pop)
      =ERROR REPORT====

  Luckily, since the server is being supervised by a supervisor, the
  supervisor will automatically start a new one, with the default stack

      defmodule Stack do
        use GenServer

        def start_link(state, opts) do
          GenServer.start_link(__MODULE__, state, opts)
        end

        def handle_call(:pop, _from, [h|t]) do
