How do you describe a language that is generated by Context Free Grammer I am familiar with describing Regular Expressions but when it comes to describing CFG I get confused. Do you describe it in words like you would regular expressions or do you do something like this ?

this is the CFG I am trying to describe

S -&gt; SS 
S -&gt; XXX 
X -&gt; aX| Xa| b


I was thinking something like this

S-&gt; SS
  -&gt;XXXS
  -&gt;aXXXs
  -&gt;abXXS
  -&gt;abXXS
  -&gt;abXAXS
  -&gt;abbaXS
  -&gt;abbabS
  -&gt;abbabS
  -&gt;abbabXXX
  -&gt;abbabbXX
  -&gt;abbabbbX
  -&gt;abbabbbb
  -&gt;abbabbbb
Hint: How many $b$s are there in each word generated by this grammar?

Guidance: What is the language generated by $X$? What is the language generated by $XXX$? What is the language generated by $S$?