Eger kelimeler sunuculara gore ayrilirsa, ayirabilirsin.
QR1: abc -> server1
QR2: abd -> server2
Tarayici okuyunca, bi resolvera istek atar;
resolve.qrserver.org/code/abc -> server1.qrserver.org
resolve.qrserver.org/code/abd -> server2.qrserver.org
Yukaridaki gibi olursa, ayirirsin. Ancak bu durumda zaten var olan seyleri arttirmis olmayacaksin. Asagidaki gibi olursa ayiramazsin metadata olmaksizin;
QR1: abc
QR2: abc
Tarayici okuyup istek atinca, eger undefined behaviour istemiyorsak asagi yukari soyle bir sey hayal edebiliriz;
resolve.qrserver.org/code/abc -> Error: ambigious code. Has 2 candidates.
Eger hata verdirtmezsen, arada bir s1, arada bir s2 yada her zaman s1 yada her zaman s2 ile sonuclanabilir. Bunu da kestiremezsin acik bir sekilde tanimlamazsan davranisi. Bu da yine ayirt edememenle sonuclanmis olacak.
Metadata olmaksizin ayirt edilemez. Metadata icin de yine ekstra bir pattern, yada ekstra bir sey ekleyeceksin ki bu da sonlu olacak ve sonsuza kadar buyuyemez. Ama mevcut kodlarin tekrar etmesine (tam olarak tekrar olmasa da) olanak saglamis olursun. Ornegin;
QR1: abc; Resolver Context: ctx123
QR2: abc; Resolver Context: ctx122
Tarayici okuyup istek atinca atarken soyle atar mesela;
resolve.qrserver.org/code/abc/context/ctx123 -> server1.qrserver.org
resolve.qrserver.org/code/abc/context/ctx122 -> server2.qrserver.org
Direkt server yazmadim cunku serverlari degistirmek isteyebilirsin vs. Bu durumda resolver her zaman hedef sunucuyu dogru bir sekilde saglar.
Gunun sonunda sonsuzlugu elde edemeyeceksin. Sonsuzluga giden yolda, sonsuz bir boyutun olmak zorunda. Basindan beri anlattigim sey bu.
Ek not: Benim bir seyi de buyuttugum yok bu arada. "Senden cok biliyorum.", "Anlama problemin var." vb cumleleri de ben kurmadim.