Not getting why this 2 lines of code behave the same

Hi all,

LiveView novice question here:

I don’t get why the line socket.material_events
ans the one above (the commented one) behave the same exact way?

defmodule ...

  def mount(_params, _session, socket) do
    if connected?(socket), do: PubSub.subscribe(Msa.PubSub, "some-topic")

    {:ok, assign(socket, :events, get_latest_events())}
  end

  def handle_info(
        %Some.Struct{event: %{primary_resource: "Some.Schema.Resource"} = e},
        socket
      ) do
    {:noreply,
     assign(
       socket,
       :events,
       # [format_event(e) | socket.assigns.material_events] |> Enum.take(@material_events_n)
       socket.material_events
     )}
  end

  def render(assigns) do
    ~H"""
    <.main_layout_default>
      <.live_component
        module={SomeModule}
        id="some-id"
        events={@events}
      />
    </.main_layout_default>
    """
  end

  defp get_latest_events(n \\ @material_events_n) do
    ...
end