I tried for hours and haven't find the way yet. I invoked a Magmas() instance and got a kind of set containing "category of magmas", then I don remember how, I added another element to it, but still doesen't resemble a magma.
I also tryied creating a finite set A and a functor acting over it, but when I type R1.<x>=A[] I get some TypeError: '<' not supported between instances of 'str' and 'int'.
So far so good, it seems that sage is focused on specific interest areas, like graphs, symetry groups and all that curricular stuff, but I don't find the way to open up to my means. It seems like it lacks enough modularity and that everything comes pre-contructed. I'm totally new in sage and may be also in math. I'm still ignorant about the correct syntax of the language also. So please tell me what I'm doing wrong and if it is there any way to achieve what I want in sage.