Skip to content

A programming language that can be programmed like momone-chan.

License

Notifications You must be signed in to change notification settings

Seigenkousya/kinako-chan

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kinako-chan

License: MIT Build Status Version S.I.N

kinako-chan is a programming language that can be programmed like momone-chan.

Install

kinako-chan needs a g++ or clang.
See Travis ci for details.

$ git clone https://github.com/Seigenkousya/kinako-chan.git
$ cd kinako-chan
$ make install

Usage

$ ./kinako-chan -(h|n|c|s=) terget_file  
	--help(-h) :show help  
	--no-visualize(-n) :only print result  
	--convert(-c) (knk2bf|bf2knk):convert kinako-chan to brainfuck or brainfuck to kinako-chan    
	--speed=(-s=) :demo speed[ms]  

example

$ ./kinako-chan -n terget_file

kinako-chan defaults to Visualize mode.
Visualize mode show memory, datapointer, source, brainfuck code, and output.

kinako-chan

$ ./kinako-chan -n terget_file

kinako-chan show only result.

$ ./kinako-chan -s=100 terget_file

kinako-chan stepping every 100ms.

$ ./kinako-chan -c knk2bf terget_file.knk

convert kinako-chan to brainfuck.

$ ./kinako-chan -c bf2knk terget_file.bf

convert brainfuck to kinako-chan.

Language specifications

kinako-chan is a multibyte programming language.
It consists of only eight simple token like brainfuck and an instruction pointer.

kinako-chan is fully Turing complete.

kinako-chan Meaning brainfuck C language
黄奈子ちゃん黄奈子ちゃん increment the data pointer + (*ptr)++;
黄奈子ちゃん黃奈子ちゃん decrement the data pointer - (*ptr)--;
黃奈子ちゃん黄奈子ちゃん increment the byte at the data pointer > ptr++;
黃奈子ちゃん黃奈子ちゃん decrement the byte at the data pointer < ptr--;
黃奈子ちゃん黄奈孑ちゃん output the byte at the data pointer . putchar(*ptr);
黃奈子ちゃん黃奈孑ちゃん accept one byte of input , *ptr=getchar();
黄奈子ちゃん黄奈孑ちゃん jump to '黄奈孑ちゃん黄奈子ちゃん'
if the byte at data pointer is zero
[ while(*ptr){
黄奈孑ちゃん黄奈子ちゃん jump to '黄奈子ちゃん黄奈孑ちゃん'
if the byte at data pointer is zero
] }

kinako-chan is a sequence of these commands, possibly interspersed with other characters (which are ignored).
The commands are executed sequentially, with some exceptions: an instruction pointer begins at the first command, and each command it points to is executed, after which it normally moves forward to the next command. The program terminates when the instruction pointer moves past the last command.

hello world

黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈孑ちゃん
黃奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黃奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黃奈子ちゃん黃奈子ちゃん黃奈子ちゃん黃奈子ちゃん黃奈子ちゃん
黃奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん
黃奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黃奈子ちゃん黄奈孑ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黃奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黃奈子ちゃん黃奈子ちゃん
黃奈子ちゃん黃奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黄奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん
黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黃奈子ちゃん黄奈孑ちゃん
黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん
黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈子ちゃん黃奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黃奈子ちゃん黄奈子ちゃん
黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん黃奈子ちゃん黄奈子ちゃん黄奈子ちゃん黄奈子ちゃん黃奈子ちゃん黄奈孑ちゃん

License

The code is released under the MIT License.
See LICENSE.

Author

正弦工社 S.I.N
Twitter:@Seigenkousya
homepage:https://seigenkousya.github.io/

Released

ver 1.0.0

kinako-chan released.

ver 1.0.1

Added command option.
Fixed page scroll function.

ver 1.0.2

Fixed terminal flush.
Added example.

ver 1.0.3

Fixed set locale.
kinako-chan now works on macOS.

ver 1.0.4

Fixed a bug about symbols '[' and ']'.
Added FizzBuzz to example.

ver 1.0.5

Fixed code display at jump.

Thanks

Utau Aizaki (HOUBUNSHA CO.LTD), どうして私が美術科に!?(Why did I enter the Art Course!?)

About

A programming language that can be programmed like momone-chan.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 84.9%
  • Brainfuck 10.4%
  • Makefile 4.7%