আরপিগ্রন , 142 বাইট, অ-প্রতিযোগিতামূলক
function tostack 'b' asoc stack 'a' asoc 0 'v' asoc b pop byte 'o' asoc b len while [ v o b pop byte ] 'o' asoc - + 'v' asoc b len end [ v end
এই প্রতিদ্বন্দ্বিতার সন্ধানের পরে 'টোস্ট্যাক' কমান্ড যুক্ত হওয়ায় প্রতিদ্বন্দ্বিতা করা হয়নি, (যদিও এটিতে একটি ভয়ঙ্কর বাইট গণনা রয়েছে)
পরীক্ষার কেস
Hello, World!
-39
Cool, huh?
-4
ব্যাখ্যা
function # Push the function between this and end to the stack
tostack 'b' asoc # Convert the implicit input to a stack, associate it with 'b'
0 'v' asoc # Push 0 to the stack, associate it with 'v'
b pop byte 'o' asoc # Pop the top value of b (The end of the input), get the byte value, associate it with 'o'.
b len # Push the size of b to the stack
while [ # While the top of the stack is truthy, pop the top of the stack
v # Push v to the stack
o # Push o to the stack
b pop byte # Pop the top value of b, push the byte value of that to the stack
] 'o' asoc # Push a copy of the top of the stack, associate it with 'o'
- # Subtract the top of the stack from one underneith that, In this case, the old value of o and the byte.
+ # Sum the top of the stack and underneith that, that is, the difference of the old value and new, and the total value
'v' asoc # Associate it with 'v'
b len # Push the size of b to the stack (which acts as the conditional for the next itteration)
end [ # Pop the top of the stack, which will likely be the left over size of b
v # Push the value of v to the top of the stack
end # Implicitely returned / printed
আরপিগ্রন একটি বিদ্বেষপূর্ণ ভাষা যা আমি বিপরীত পোলিশ স্বরলিপিটি মাথায় রেখে কাজ করছি। এটি বর্তমানে বেশ ভার্জোজ, এটির ভেরিয়েবল অ্যাসাইনমেন্টটি 4 টি অক্ষর এবং এর মতো, তবে ভবিষ্যতে আমি কিছুটা সিনট্যাটিক চিনি যুক্ত করার পরিকল্পনা করছি।
এছাড়াও, আরপিগ্রোএন স্পষ্টভাবে স্ট্যাক থেকে আর্গুমেন্টগুলি অ্যাক্সেস করে এবং সেগুলি একইভাবে প্রদান করে। প্রোগ্রাম শেষ হওয়ার পরে স্ট্যাকের মধ্যে থাকা কোনও স্ট্রিং ডেটা স্পষ্টভাবে মুদ্রিত হয়।