[noise] rev32b (Release Candidate)

Alex alex at centromere.net
Sat May 13 11:14:35 PDT 2017


On Sat, 13 May 2017 17:40:19 +0000
Trevor Perrin <trevp at trevp.net> wrote:

> It's a good question how general-purpose libraries should handle the
> combinatorics of pattern modifiers.  For example, should a library
> hardcode all the patterns listed in this (and future) specs, or should
> it only hardcode the base patterns (XX, IK, etc), and then apply
> user-specified modifiers?
> 

What if the user wants to add their own Noise extension that introduces
a new token? Will they be required to fork your library, or would there
be an interface for adding new tokens? How would the code that applies
user-specified modifications take in to account user-specified
extensions?

For instance, how do you communicate to a library your intention to add
a `foo` token right before the `bar` token in the second message
pattern of some arbitrary handshake? That sounds like a very complex
API.

I think I may have no choice but to have the user to write their own
handshake patterns. Ideally a Noise library would perform static
analysis on the handshake pattern before even starting, as opposed to
waiting until some assertion is violated half way through a handshake.

-- 
Alex


More information about the Noise mailing list