Where have you seen that "JSON actually has brought true, indexed arrays as well as associated arrays AND nesting to LSL"
It s wrong .
With an indexed array , get operations or set operations are O(1) time .Time is independant of the size of your datas.
With map arrays , get operations or set operations are O(k) time . Time is proportionnal to the size of the index of your datas. Time is independant of the size of the values of your datas
With a true list from an another language ( not LSL list ), get operations or set operations are too proportinnal to the sum of the size of node pointers or references . Time is independant of the size of the values of your datas
With JSON string inside LSL , get operations or set operations are O(n) time . Time is proportionnal to the size of your FULL datas ( keys and values ) , because it s as simple silly string. It s the worst case who can happen .
I dont consider JSON as a solution to replace indexed arrays and associated arrays , and nested arrays . The goal to use indexed arrays , associated arrays , nested arrays is to have a better data structure more efficient for some kind of algorithms , not a better syntax . And binary searchs can t be implemented efficiently , by instance , because there is no string operators to compare s1 < s2 or s1 >s2 . The "keys" of the JSON string are only strings . JSON strings in LSL are the worst efficient to use algorithms
You have talked too about nested data structures : same problem . a real data structure cfrom an another language could implement AVL , or binary trees and to be able to do search in O(ln(n)) time . With JSON String, as it s implmented , it will be never possible