I created a calculator only using the scripting commands in the video game Counter-Strike, bind (for input) echo (for output) and alias (for the logic). Bind is to connect keys to a command or string of specified commands, echo is to output text to the console, and alias is a command that allows you to create a new command out of a string of specified commands. Basically, I can do math without using math. This is pure connectionism, where there are no values, no logic operators and no measurements in the logic. It is purely making, breaking and using connections and nothing else.

The first few paragraphs from my paper that I am working on:

How To Compute Without Variables, Logic Operators or Measurements

Work in progress

I have come up with what I believe is a new type of logic, it is mechanical in nature, but because I could maybe see it done on the quantum level it could be far more complex than any mechanical machine has ever been, in ways not seen in physical mechanical devices.

This logic is pure connectionism, only using connections and nothing else. I look at it as a geometry of logic. My system performs the logic only using one command without numeric variables, without logic operators, and without measurements. This is neither digital nor analog logic.

This is not theory, I have built a working model using this logic that demonstrates if-then, do-while, a randomizer, a relational database and other logic, including a rudimentary calculator that adds/subtracts/multiplies/divides. In the working model I only use one command for hooking in the input, a few commands for output, but all the logic in between is one command that does nothing but link commands together.

The logic demonstrated in this model uses the command “alias”, which is used in a FPS video game called Counter-Strike, which is a modification for a video game made by Valve called Half-Life, which is based on id Software's QuakeWorld engine. This command is used to link various commands together creating a new command that executes a command string, to provide a way for customizing the interface of the game. This logic requires input and output provided in the game - which, no doubt, uses Boolean logic to perform, but the logic itself is contained to using the one command “alias” and does not use Boolean logic.

You can also find the paper here, but you have to download it to read it: https://github.com/johnvlilley/Stateless-Computer

I suggest you start with the simple version of the calculator that does just add and subtract: https://github.com/johnvlilley/Stateless-Computer/blob/master/calculator_simple.cfg

And the complex calculator has much better inline commenting: https://github.com/johnvlilley/Stateless-Computer/blob/master/calculator_complex.cfg

I am interested in taking some of the logic, perhaps the most complicated part - the grenade throwing script, and visually re-creating it in Minecraft. This part of the logic performs the permutations of a math question I came up with and was answered by using the ancient Chinese Pascal's Triangle in a new way. It is similar to the question of how many combinations of 4 hats on 4 pegs you can have, and I just had to count the pegs as part of the permutation where they did not.

Here is the question:

"You have a combination padlock with four dials on it. Each dial has the numbers 0 through 4 on them. The lock can have as many 0s as dials, and is set to 0000 by default. The lock does not allow you to use any number between 1 and 4 two or more times in the combination. The following combinations are valid: 0123 1234 0103 0010 4031. The following combinations are invalid: 0113 4014 0202 4444. How many possible combinations are there?"

The solution to this word problem is here, notice that it is a new use for Pascal’s Triangle, because it values nothing as something:

http://mathhelpforum.com/discrete-math/17147-combination-lock.html

I desperately need help writing the paper, it is obvious I never have written one before. I can't offer any money, because I plan to put this in the public domain. I will certainly give credit where credit is due, though. Please contact me at johnphantom@hotmail.com or the more reliable johnvlilley@gmail.com

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, learning, and sharing knowledge.