My goal is to redraw the following diagram (by the way taken from the famous Structure and Interpretation of Computer Programs book) in some way preserving semantic structure.

https://i.imgur.com/8UQRj7U.jpg

PlantUML seems to adhere to the UML standard, and thus to preserve the information quite closely. I wonder what would be the best way to draw such a diagram in PlantUML. For me it seems that the Component diagram is the correct choice. There are two difficulties, however: (a)one would be the point marked "integral", a connector splits there, but this doesn't seem to be supported; (b) the shape of "add" and "cons" would be another problem, as far as I understand, all components have the same shape in the UML standard, but what about at least placing a triangle at the corner of a shape?

My initial attempt is the following:

@startuml skinparam monochrome true skinparam componentStyle uml2 component [scale: dt] as scale component [add] as add component [cons] as cons interface input as input interface "initial-value" as initialvalue interface " " as fake interface integral as integral input -> scale scale -> add add -> cons initialvalue ..> cons cons - fake fake -> add fake -> integral @enduml