gorgonia / tensor

package tensor provides efficient and generic n-dimensional arrays in Go that are useful for machine learning and deep learning purposes
Apache License 2.0
359 stars 49 forks source link

README examples don't reflect proper usage #131

Open stkrzysiak opened 2 years ago

stkrzysiak commented 2 years ago

The readme gives the following example:

a := New(WithShape(2, 2), WithBacking([]int{1, 2, 3, 4}))
fmt.Printf("a:\n%v\n", a)

I think this should be:

a := tensor.New(tensor.WithShape(2, 2), tensor.WithBacking([]int{1, 2, 3, 4}))
fmt.Printf("a:\n%v\n", a)

This is how gorgonia uses it currently.
I think the readme was probably using dot imports where the package name wasn't necessary but it is not recommended to do that.

Dot imports. If a program imports a standard package using import . "path", additional names defined in the imported package in future releases may conflict with other names defined in the program. We do not recommend the use of import . outside of tests, and using it may cause a program to fail to compile in future releases.

yati-sagade commented 8 months ago

As a new Go user, I also ran into this. But I appreciate the reduced clutter with the current style. Maybe the docs could just mention the import statement one needs at the top, and then assume the user adds the package prefix thereafter?