It is sometimes easier to thing of #(fog)(n)# as #f(g(n))#

It might also help to replace #n# in the definition of #f(n)# with some other variable; since #n# is just a variable placeholder there is no problem doing this.

So #f(n)=2n# could equally validly written as

#color(white)("XXX")f(color(red)k)=2color(red)(k)#

Now, if we want to evaluate #f(color(blue)(g(n)))#

we simply replace #color(red)(k)# with #color(blue)(g(n))#

#color(white)("XXX")f(color(blue)(g(n)))=2color(blue)(g(n))#

and since #color(blue)(g(n))color(black)=-n-4#

#color(white)("XXX")f(color(blue)(g(n)))=2(color(blue)(-n-4))=-2n-8#