```val x = if (y != null) y else { <http://log...
# getting-started
k
Copy code
val x = if (y != null) y else {
    <http://log.info|log.info>("bla")
    z
}
vs
Copy code
val x = y ?: run {
    <http://log.info|log.info>("bla")
    z
}
a
Copy code
val x = y ?: z.also { <http://log.info|log.info>("bla") }
?
6
e
or
y ?: <http://log.info|log.info>("bla").let { z }
if you want to preserve that ordering, but that's approaching a bit codegolf-y
e
z.also { <http://log.info|log.info>("bla") }
seems more idiomatic.
Copy code
<http://log.info|log.info>(...).let { z }
could suggest that
z
depends on the
<http://log.info|log.info>
k
ty