Talk:Ivory
i dont believe that this esolang is turing complete, since you while you can theoretically store infinite amounts of data, you cant work with all of it since the tape is bounded to 30000 bytes, so this is a Bounded-storage machine, if you really want it to be Turing-complete, specify that the tape is unbounded Dragoneater67mobile (talk) 14:20, 15 February 2026 (UTC)
- well, it has a unbounded stack, so it is a PDA.11:41, 23 February 2026 (UTC)
- Good catch. The version 1.0 backend utilized a 30,000-cell array, which, as you said, restricted it to a bounded-storage machine. So I upgraded the AOT Transpiler to 64-bit Sparce Memory Architecture. The Tape is now a
std::unordered_mapso it provides a bi-directionally infinite, unbounded tape that dynamically allocates cells without bounds checking. It should now fully satisfy the requirements for a Turing-complete machine. Thanks for looking into the memory model! Widuruwana (talk) 13:03, 7 March 2026 (UTC)
Technical clarification on v1.1.0 and Authorship
Corbin, I am writing this to apologize for the revert earilier; I genuinly thought a bot was auto flagging the page and didnt realize it was a manual edit.
I want to clarify that while I used tools to help with documentation formatting and calculating character offsets for 99 bottles script, the core engineering is my own work. I specifically moved from a fixed 30,000-cell array to a 64-bit sparse memory map std::unordered_map in the ivoryc.cpp source to solve the turing-completeness issue raised previously.
I built this project as a personal gift to someone and one would think that just having a way to print a poem wouldve made it past the bar. But I wanted to do it properly without half-assing, that's why I wanted to make it Turing-Complete.
I have spent a lot of time on the C++ transpiler logic and even though the compiler is not the most complicated thing on this planet to write, I still had to learn everything from ground up. I'd appreciate it if the project could be judged on actual compiler architecture.
Thank you for your time. --Widuruwana (talk) 16:08, 7 March 2026 (UTC)
PS: I also want to apologize on the flurry of small edits on the main page I did afterward. Again I thought it was a bot and wanted to re-write sections to better reflect my own voice and intent. I realize that this probably looked sus and I was just trying to clarify my work.
- No worries! It's not the first time that I've been called a bot. Reciprocally, I don't want to miscategorize your work. Many new editors don't know about all of the categories, so they don't even know that category:generated by AI exists. This happens with the year categories too, for example.
- As far as flurries of edits, this is another common behavior from new editors. It's okay, but we do want you to know that you can use the "Show preview" or "Show changes" buttons to proofread your work before saving it. Even experienced editors make typos and have to go back to fix their spelling; it's okay.
- I suppose that this is as good a time as any to let you know that we have some guidelines for editors at esolang:policy and esolang:help. You haven't broken any rules and we're glad that you're here. Also, on a personal note, I think that this was a cute gift. Happy editing! Corbin (talk) 16:46, 7 March 2026 (UTC)
- Thanks for understanding and for the warm welcome. I definitely will make proper use of show preview button from now on. I really appreciate you taking the time to review the page, and thank you for the kind words about the project. Cheers! Widuruwana (talk) 17:03, 7 March 2026 (UTC)