Made with KolourPaint and screenshots from Kate (with the GitHub theme).

  • sph@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    12 days ago

    This obviously just illustrates a point, but callbacks and decorators are not uncommon. And iterators are exactly like that:

    type (
    	Seq[V any]     func(yield func(V) bool)
    	Seq2[K, V any] func(yield func(K, V) bool)
    )
    

    Which is very readable.

    • phlegmy@sh.itjust.works
      link
      fedilink
      arrow-up
      1
      ·
      12 days ago

      Callbacks and decorators are fine, but callbacks/decorators to a function which itself takes a function pointer and returns another function pointer are crazy.

      I’ve thankfully never had to use recursive callbacks or decorators, but it seems like it could very quickly become difficult to keep track of.