alessandrobenedetti commented on PR #13399: URL: https://github.com/apache/lucene/pull/13399#issuecomment-2122364895
> Does it actually improve readability? I know some Java projects like to be very granular in how they organize packages, but I've come to like Lucene's relatively flat package structure, like Java's. This way, we can more often take advantage of pkg-private visibility, and packages tend to be more meaningful and have proper javadocs. While preparing the workshop, it took some time to understand that we have now formats dedicated to storing the graph and that internally use other formats to store the actual vectors. With such a flat structure it was hard to understand where there was a choice (like a quantized or not quantized format) or where the formats were solving different problems (storing the graph vs storing the actual vectors). And I am also quite familiar with the vector-based search in Lucene. I can imagine a newcomer, even decently expert in Lucene or Java to struggle to reconcile a huge package with a lot of classes, where it's not clear who does what. Also some of the formats, have a minimal difference (like the HNSW quantised vs not quantised), but the decently big overlapping code make it harder to read (there for example the only difference is basically one instance variable) Anyway, as I progress in preparing the workshop I may add here additional considerations and tweaks. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org