← Back to context

Comment by IshKebab

11 hours ago

It's not conceptually simple. No other object creation API works by copying an existing thing and then modifying it. You don't create a new file by copying an existing one and then modifying it. You don't create a new window by copying an existing one and modifying it.

Attempting to justify clone/exec as a reasonable design is just Stockholm syndrome.

> No other object creation API works by copying an existing thing and then modifying it.

Clone-and-modify is pretty common in CAD.

> You don't create a new file by copying an existing one and then modifying it.

Clone-and-modify is almost universal in version control systems.

  • > Clone-and-modify is almost universal in version control systems.

    It's closer to copy-on-write. Also, it actually makes sense there because in 99.999% of cases a commit actually is a modified copy of its parent. That isn't true for process spawning.