« first day    last day (200 days later) » 

1:18 AM
Is there any way to get user input in the language? If not, do you have plans to add it, or do you want to keep it free of user interactions?
 
 
2 hours later…
3:30 AM
@TehPers Not yet. I have plans to add it but progress is slow, I'll explain why.
My input idea is that when input is read, it will turn the cube such that :0+125 will set the notepad to the ASCII value of the character read.
So, for example, if a (ASCII 97) was read, it would perform U1B3F1R1, and :0+125 would set the notepad to 97.
Here are all the algorithms I've found so far; problem is, 66 is the lowest you can get, and 120 is the highest.
That might be confusing (cough just like Cubically), let me know if so
 
4:21 AM
It's pretty simple to prove that there isn't any fixed number of sides you can sum to represent the full range of ASCII values. At the very least, numbers from 0 to 8 absolutely cannot be represented by anything more than a single face because only nine 0 values exist on the cube, and similarly numbers 82 and up absolutely cannot be represented by a single face because no values greater than 9 exist.
 
4:38 AM
Perhaps instead of accepting a full range of ASCII values it could instead be limited to decimal values from 0 to 72, with the input format being algorithms to set the sum of side 0 to the input value, copying to the notepad simply with :0. Alternatively, values 1 to 73 with algorithms to store the values into side 1.
Maybe that would be more of a version 0.2 thing than the final form of input, but I think even an incomplete feature could be beneficial
 
4:55 AM
@KamilDrakari Hmm, that might work
Or some sort of fixed character set, maybe its own codepage
Wait - there's no way to get the face sum of the UP face to 72, because the highest value is 5, and 5 * 9 is 45
 
 
2 hours later…
7:23 AM
@MDXF Why not make a command that compares the argument (face or notepad) to the current input character's ASCII value, and commands for moving forwards (and backwards maybe) through the input?
For example, you could do I6 to compare the notepad to the current character, and it returns 1 or 0 depending on if it matched
 
 
6 hours later…
1:30 PM
@MDXF That's a good point, I guess my math was even further off than I thought. I guess the range would be 0 to 40 then.
Or we can look for more complex algorithms using some amount of multiplication and division.
Or, the final possibility is to try and come up with an algorithm that solves an arbitrary cube while doing some operations on the notepad, and then try to find cubes that end up with the right result at the end of it.
 
 
4 hours later…
5:39 PM
@TehPers returns 1 or 0 how would I use the return value, if the notepad is occupied?
@KamilDrakari That sounds like the best idea
 
6:05 PM
@MDXF Do you happen to have an algorithm for solving a cube already? It might be worth going in and just seeing what comes out for various starting configurations if you just throw a +1 somewhere in the middle.
 
@MDXF I'm not sure, but your = operator already does that so I assumed you had a way in mind. Personally I think a > operator that jumps back to the associated ( if the notepad > 0 would be nice to have for control flow, but I'm not really sure.
Anyway, I like @KamilDrakari's idea as well.
 
 
6 hours later…
11:53 PM
Oh, I misread the spec... I thought that ] allowed "jump to the preceding ( unless the cube is solved" when it actually is "jump to the preceding ( ONLY if the cube is solved". There are some pretty simple algorithms that would perform a potentially useful large cycle if it could continue through each iteration, but a loop which only happens if the cube is solved at the end of each iteration seems to me like it can only either be an infinite loop or execute exactly once or exactly twice.
 

« first day    last day (200 days later) »