3 ms·
Interesting to see how Swift-inspired this feature is.
by chhum 6y ago
Interesting to see how Swift-inspired this feature is.
- pulse7 6y agoJava has been inspired by many other languages... and continues to take good features and ideas from other languages...
- masklinn 6y agoIt seems to be using a somewhat similar concept it calls "incidental white space", in order to limit the embedding of leading whitespace (unlike Python which just stores the entire triple-quoted string as-is), but is more permissive: Text content can be indented less than the trailing delimiter, which I understand is an error in Swift String html = """ ..............<html> .............. <body> .............. <p>Hello, world</p> .............. </body> ..............</html> .............. """; The trailing delimiter can also be on the same line as the final content, which suppresses the final (new)line: """ line 1 line 2 line 3""" translates to "line 1\nline 2\nline 3" whereas """ line 1 line 2 line 3 """ translates to "line 1\nline 2\nline 3\n" I believe this requires escaping the newline in Swift instead (nb: according to the JEP this would also work in Java).
- _old_dude_ 6y agoSlash at the end of the line serve the same purpose in Java
- masklinn 6y ago> Slash at the end of the line serve the same purpose in Java As I wrote in my comment, yes.
- imglorp 6y agoMore likely from Kotlin. The only difference is % instead of $. They also grabbed Kotlin's data classes (records in java). Lots of cross pollination.
- angus_gh 6y agoAs the article says, they examined lots of languages, not just Kotlin (it would be arbitrary to confine their research to JVM languages..) >> While Java could not adopt the Swift approach wholesale because of existing language constraints, the Java approach took as much inspiration from the good work that the Swift community did as we could -- and left room to take more in the future.
- therealdrag0 6y agoSeen this in Scala too.