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