[Lightning-dev] BOLT #2: wire protocol: YA acknowledgement change.

Rusty Russell rusty at rustcorp.com.au
Mon May 23 21:26:00 UTC 2016

Pierre <pm+lists at acinq.fr> writes:
> I like it! Let's hope it will suit everyone and we can converge on
> something soon.
> FWIW I was able to independently implement a toy version of the
> protocol and pass your scripted tests [*] so I guess there are no
> obvious issues (duh). Maybe it could be the first step towards a LN
> nonreg test set?

Great!  That's a really good idea.  Eventually I'd like to have some
"canned conversations" to go with the BOLTs for testing against.

> Just one thing about the "nocommitwait", I wonder why you make it
> optional in your test: why would you forbid the sending of two
> successive commits, given that the more permissive approach is
> perfectly well defined?

Because it's a little simpler if you don't let yourself do multiple
in-flight commits.  You only need one set of outstanding changes, rather
than keeping them for every commit.  This code makes doubly-sure that is
true (it is true in my C implementation).

> PS: what does YA mean?

Yet Another.  I found a pretty good description on Wikipedia:

  Among programmers, yet another (often abbreviated ya, Ya or YA in the
  initial part of an acronym) is an idiomatic qualifier in the name of a
  computer program, organisation, or event that is confessedly

  Stephen C. Johnson is credited with establishing the naming convention
  in the late 1970s when he named his compiler-compiler yacc (Yet
  Another Compiler-Compiler), since he felt there were already numerous
  compiler-compilers in circulation at the time.


More information about the Lightning-dev mailing list