So I get that Robot has 3 types of variable
Scalar which are like ${}, List Which are like @{} and Dictionary which are like &{} but I dont understand it completely how they get treated in framework.
Like I created dictionary variable like
*** Variables ***
&{D} A=a 'B'=b
And then can use it like
${new_D}= Copy Dictionary ${D}
${var}= Get From Dictionary ${New D} MGMT_IP
Since D and new_D are of dictionary type why they should not always be prefixed by &. Same goes for list.