Ikiwekiwow
Introduction
Ikiwekiwow is a programming language. The name comes from what it's creator describes as "the sound of the discs that those DJs make when they spin them around". The creator was disappointed that the use of Boolean in computers is only really in it's truest form in some instances of file storage. Thus, he created Ikiwekiwow to extend this towards computer operation.
Use
Operations
There are 2 operations.
Operation | Note |
---|---|
! | Creates a 1 or 0 in a cell. |
+- | Creates a positive-negative CONNECTION between two cells. If Location A is true, then make Location B false. |
-+ | Creates a negative-positive CONNECTION between two cells. If Location A is false, then make Location B true. |
-- | Creates a negative-negative CONNECTION between two cells. If Location A is false, then make Location B false. |
-+ | Creates a positive-positive CONNECTION between two cells. If Location A is true, then make Location B true. |
Using !
!(0 or 1)(location in memory)
Using -
(Location A)-(Location B)
Using --
(Location A)--(Location B)
Input and Output
Ikiwekiwow does not have any built-in input or output structure. Therefore, it is up to the programmer to come up with a way to intake information into memory and how to output memory.
Complexity class
Ikiwekiwow is decidable in linear time by transforming programs into implication graphs; Ikiwekiwow programs denote instances of 2SAT.
Memory
Memory also varies based on Ikiwekiwow implementation. Usually, locations come in the form of a heap address system. The available memory, by default, should have every memory location set to 0.
Examples
!10001 !10002 10002+-10003 10003--10001 10003--10002
This example stores 1 in location 0001 and 0002. It then checks if 0002 is 1, where it will change 0003 to 0. Afterwards, if 0003 is 0, then 0001 and 0002 gets turned into 0.