PengZheng commented on PR #726: URL: https://github.com/apache/celix/pull/726#issuecomment-1928958124
As mentioned in #612, the purpose of this netstring lib is to serialize/deserialize properties. After reading netstring's spec([1]), I noticed that netstring is used to encoding byte string, for which we still lack an efficient in-memory representation like [ccan/bytestring](https://github.com/rustyrussell/ccan/tree/master/ccan/bytestring). A second issue I found is related to our current efforts to add typing support to `celix_properties`: there is no typing support in netstring. This can be fixed by adopting "tagged netstrings" ([2]). Then I have the third issue: by having a separate netstring library, what's the in memory representation of a tagged netstring? A bold thought turns up: what if we combine this nestring library into utils, and have `celix_array_list`, `celix_properties`, to-be-added `celix_bytestring`, and other types as the in memory representations of tagged netstrings? I just record some thoughts here, which should not be viewed as anything like request for changes. But I do think the second issue is worth considering before merging this PR. @pnoltes @xuzhenbao [1] https://cr.yp.to/proto/netstrings.txt [2] https://tnetstrings.info/ -- 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: dev-unsubscr...@celix.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org