Even if you work in permissive langauges like Java, if you start from the position of “this code will need to be thread safe”, its still not hard to do. The problem I’ve seen with more permsissive languages is that external libraries have bad systems built in and even if the code you write is threadsafe the external library csn introduce all sorts of weirdness.
For example in Java, the SimpleDateFormat class which is a fairly standard way of parsing/outputting dates and is the go to example in all number of tutorials is not inherently threadsafe (and that’s part of the JDK!). Someone can write sensible stateless code and get tripped up by this.
Even if you work in permissive langauges like Java, if you start from the position of “this code will need to be thread safe”, its still not hard to do. The problem I’ve seen with more permsissive languages is that external libraries have bad systems built in and even if the code you write is threadsafe the external library csn introduce all sorts of weirdness.
For example in Java, the SimpleDateFormat class which is a fairly standard way of parsing/outputting dates and is the go to example in all number of tutorials is not inherently threadsafe (and that’s part of the JDK!). Someone can write sensible stateless code and get tripped up by this.