karelpeeters
02/06/2018, 5:29 PMy
for bytes? I skimmed the linked JDK proposal, couldn't really find any justification there either.Ruckus
02/06/2018, 5:32 PMb
causes issues (see above) and y
is the next letter in byte
ianbrandt
02/06/2018, 6:43 PMval b = 0xBy // Byte (11)
karelpeeters
02/06/2018, 6:44 PMy
came from...ianbrandt
02/06/2018, 6:48 PMRuckus
02/06/2018, 6:53 PMi8
and u8
fred.deschenes
02/06/2018, 6:55 PM0x2o
)Ruckus
02/06/2018, 6:57 PM0x2O
fred.deschenes
02/06/2018, 6:57 PMianbrandt
02/06/2018, 7:06 PMRuckus
02/06/2018, 7:07 PMbenleggiero
02/07/2018, 4:06 AMi8
and u8
are currently valid names for variables, and could easily make existing code not compile. Despite my distaste for it, @ianbrandt’s ideas are consistent and non-breakingMorgan Ramsay
02/08/2018, 8:20 AM0b
for binary literals, and 0x
for hex literals. They are signed by default. The u
suffix is used for unsigned, l
for long, and ul
for ulong. What issues would b
cause in Kotlin? I looked through the previous thread and didn't see the explanation.Ruckus
02/08/2018, 5:21 PM0x1b
supposed to be a byte value of 1, or an int value of 27?Morgan Ramsay
02/08/2018, 9:29 PM0x
denotes hex, and 1B
is 27 in hex.Ruckus
02/08/2018, 9:38 PMb
to a number specified it as a byte. That can't work because it would make hex literals ambiguous (i.e. you couldn't declare hex byte literals).
val a1 = 1 // (Int) 1
val a2 = 1b // (Byte) 1
val a3 = 0x1 // (Int) 1
val a4 = 0x1b // Is this (Int) 27 or (Byte) 1?
Ruckus
02/08/2018, 9:40 PMy
were used, all of the above would be unambiguous
val a1 = 1 // (Int) 1
val a2 = 1y // (Byte) 1
val a3 = 0x1 // (Int) 1
val a4 = 0x1b // (Int) 27
val a5 = 0x1y // (Byte) 1
val a6 = 0x1by // (Byte) 27
jkbbwr
02/12/2018, 8:40 AM