The main reason to implement algebraic varieties is support the computation of sheaf cohomology of coherent sheaves, which doesn't have an immediate description in terms of graded modules.
In this example, we use cotangentSheaf to produce the cotangent sheaf on a K3 surface and compute its sheaf cohomology.
i1 : R = QQ[a,b,c,d]/(a^4+b^4+c^4+d^4);

i2 : X = Proj R
o2 = X
o2 : ProjectiveVariety

i3 : Omega = cotangentSheaf X
o3 = cokernel {2}  c 0 0 d 0 a3 b3 0 
{2}  a d 0 0 b3 c3 0 0 
{2}  b 0 d 0 a3 0 c3 0 
{2}  0 b a 0 d3 0 0 c3 
{2}  0 c 0 a 0 d3 0 b3 
{2}  0 0 c b 0 0 d3 a3 
6
o3 : coherent sheaf on X, quotient of OO (2)
X

i4 : HH^1(Omega)
20
o4 = QQ
o4 : QQmodule, free

Use the function
sheaf to convert a graded module to a coherent sheaf, and
module to get the graded module back again.
i5 : F = sheaf coker matrix {{a,b}}
o5 = cokernel  a b 
1
o5 : coherent sheaf on X, quotient of OO
X

i6 : module F
o6 = cokernel  a b 
1
o6 : Rmodule, quotient of R
