ในการเขียนโปรแกรมในการอภิปรายตารางครั้งแรกของLuaพวกเขากล่าวถึง:
เนื่องจากคุณสามารถทำดัชนีตารางด้วยค่าใดก็ได้คุณจึงสามารถเริ่มดัชนีของอาร์เรย์ด้วยตัวเลขใดก็ได้ที่คุณพอใจ อย่างไรก็ตามเป็นเรื่องปกติใน Lua ที่จะเริ่มอาร์เรย์ด้วย 1 (ไม่ใช่ด้วย 0 เช่นเดียวกับใน C) และสิ่งอำนวยความสะดวกหลายอย่างยึดตามแบบแผนนี้
ต่อมาในบทที่เกี่ยวกับโครงสร้างข้อมูลพวกเขาพูดเกือบจะเหมือนกันอีกครั้งนั่นคือสิ่งอำนวยความสะดวกในตัวของ Lua ถือว่าการจัดทำดัชนีแบบ 1 ฐาน
อย่างไรก็ตามมีความสะดวกสองสามประการในการใช้การจัดทำดัชนีแบบ 1 ฐาน ได้แก่ ตัวดำเนินการ#
(ความยาว): t[#t]
เข้าถึงดัชนีสุดท้าย (ตัวเลข) ของตารางและt[#t+1]
เข้าถึง 1 ผ่านดัชนีสุดท้าย สำหรับคนที่ยังไม่เคยสัมผัสกับการจัดทำดัชนีที่อิง 0 #t+1
จะเป็นเรื่องง่ายกว่าที่จะเลื่อนผ่านจุดสิ้นสุดของรายการ นอกจากนี้ยังมีfor i = 1,#t
โครงสร้างของ Lua ซึ่งฉันเชื่อว่าอยู่ในหมวดหมู่เดียวกันกับจุดก่อนหน้าที่ว่า "1 to the length" มีความสมเหตุสมผลมากกว่าการสร้างดัชนี "0 ถึงความยาวลบ 1"
แต่ถ้าคุณไม่สามารถทำลายความคิดของการจัดทำดัชนีที่อิง 0 ได้การจัดทำดัชนีที่อิง 1 ของ Lua อาจเป็นอุปสรรคมากกว่าอย่างแน่นอน ในท้ายที่สุดผู้เขียนต้องการสิ่งที่ทำงานให้กับพวกเขา ; และฉันยอมรับว่าฉันไม่รู้ว่าเป้าหมายเดิมของพวกเขาคืออะไร แต่มันอาจเปลี่ยนไปตั้งแต่นั้นมา