Skip to main content

simple python module for KoiLang parsing

Project description

Kola

Simple python module for KoiLang parsing.

License PyPI Python Version

Installation

From pip:

pip install KoiLang

From source code:

python setup.py build_ext --inplace
python setup.py install

What is KoiLang

KoiLang is a markup language while is easy to read for people. There is an simple example.

#hello KoiLang
I am glad to meet you!

In KoiLang, file is divided into 'command' part and 'text' part. The formation of command part is like C preprocessor directive, using '#' as starting. And text is surrounding commands.

#command "This is a command"
This is a text.

Each command can have several arguments behind the command name. Valid argument type include integer, float, literal and string.

#arg_int    1 0b101 0x6CF
#arg_float  1.0 2e-2
#arg_literal __name__
#arg_string "A string"

Here "literal" is a valid python variety name containing letter,digit, underline and not starting with digit. Usually it is same as a string.

There is another kind of arguments -- keyword arguments which formation is as this:

#kwargs key(value)

And another format:
#keyargs_list key(item0, item1)

And the third:
#kwargs_dict key(x: 11, y: 45, z: 14)

All the arguments can be put together

#draw Line 2 pos0(x: 0, y: 0) pos1(x: 16, y: 16) \
    thickness(2) color(255, 255, 255)

What can Kola module do

Kola module provides a fast way to translate KoiLang command into a python function call.

Above command #draw will convert to function call below:

draw(
    "Line", 2,
    pos0={"x": 0, "y": 0},
    pos1={"x": 16, "y": 16},
    thickness=2,
    color=[255, 255, 255]
)

Kola mudule just create a bridge from kola file to Python script. The bridge, the main class of Kola module, is KoiLang class. There is a simple example.

Example

Let's image a simple situation, where you want to create some small files. Manual creating is complex and time-consuming. Here is a way to solve that. We can use a single kola file to write all my text. Then use commands to devide these text in to different files.

#file "hello.txt" encoding("utf-8")
Hello world!
And there are all my friends.

#space hello

    #file "Bob.txt"
    Hello Bob.

    #file "Alice.txt"
    Hello Alice.

#endspace

Then, we make a script to explain how to do with these commands:

import os
from typing import Union
from kola import KoiLang, BaseLexer, kola_command, kola_text


class MultiFileManager(KoiLang):
    def __init__(self) -> None:
        super().__init__()
        self._file = None
    
    @kola_command
    def space(self, name: str) -> None:
        path = name.replace('.', '/')
        if not os.path.isdir(path):
            os.makedirs(path)
        os.chdir(path)
    
    @kola_command
    def endspace(self) -> None:
        os.chdir("..")
        self.end()
    
    @kola_command
    def file(self, path: str, encoding: str = "utf-8") -> None:
        if self._file:
            self._file.close()
        path_dir = os.path.dirname(path)
        if path_dir:
            os.makedirs(path_dir, exist_ok=True)
        self._file = open(path, "w", encoding=encoding)
    
    @kola_command
    def end(self) -> None:
        if self._file:
            self._file.close()
            self._file = None
    
    @kola_text
    def text(self, text: str) -> None:
        if not self._file:
            raise OSError("write texts before the file open")
        self._file.write(text)
    
    def parse(self, lexer: Union[BaseLexer, str]) -> None:
        super().parse(lexer)
        self.end()

And mix them together, just input this in terminal:

Here we assume the two files above is kolafile.kola and script.py

python -m kola kolafile.kola -s script.py

Or directly add in script:

if __name__ = "__main__":
    MultiFileManager().parse_file("kolafile.kola")

You will see new files in your work dir.

<workdir>
│      
│  hello.txt
│      
└─hello
    Alice.txt
    Bob.txt

What happened

It seems amusing? Well, if you make a python script as this:

vmobj = MultiFileManager()
vmobj.file("hello.txt", encoding="utf-8")
vmobj.text("Hello world!")
vmobj.text("And there are all my friends.")

vmobj.space("hello")

vmobj.file("Bob.txt")
vmobj.text("Hello Bob.")

vmobj.file("Alice.txt")
vmobj.text("Hello Alice.")

vmobj.endspace()
vmobj.end() # from parse

the same result will be get. This is the python script corresponding to the previous kola file. What we have done is to make KoiLang interpreter know the correspondence between kola commands and python functions.

So let's go back to the script. Here the first we need is a kola command set class. All commands we want to use will be included in the class. The best way is create a subclass of KoiLang. That is:

from kola import KoiLang

class MultiFileManager(KoiLang):
    ...

The next step is making an exact kola command. So a function is defined:

def space(self, name: str) -> None:
    path = name.replace('.', '/')
    if not os.path.isdir(path):
        os.makedirs(path)
    os.chdir(path)

But it is not enough. Use the decorator @kola_command to annotate the function can be used in kola files. In default case, the name of kola command will be the same to that of the function's. If another name is expected to use in kola files instead of the raw function name, you can use @kola_command("new_name") as the decorator. It wiil look like:

@kola_command("create_space")
def space(self, name: str) -> None:
    ...

Than #create_space hello will be a new valid command, while using #space hello would get a KoiLangCommandError.

You may have notice that there is a special decorator @kola_text. As we know, the text in kola files is a command, too. This decorator is to annotate the function to use to handle texts. Using @kola_command("@text") has the same effect. And another special decorator which is not shown here is @kola_number. It can handle commands like #114 or #1919. The first argument wiil be the number in the command.

File parse

KoiLang class provides several method. Use parse method to parse a string and parse_file to parse a file. It is suggested to use the second way so that KoiLang interpreter can give a traceback to the file when an error occure.

Advanced techniques

In above example, we define two commands to create and leave the space. While, if users use #endspace before creating space, this can cause some problems. To correct user behavior, we can use the environment to restrict the use of some commands. @kola_env decorator can be used to define a environment:

@kola_env
def space(self, name: str) -> None:
    ...

And register the function endspace as the exit command of environment space:

@space.exit_command
def endspace(self) -> None:
    ...

Notice: @kola_env has the similar arguments to the @kola_command, but the first string argument in @kola_env is the environment name, not command name in kola files. Use @kola_env(cmd_name="new_name") to define the command name.

And other commands wanted to use in the space environment can be defined as:

@space.env_command
def foo(self, *args, *kwds) -> Any:
    ...

There is a argument in @kola_command envs, which is also used to limit command uses. But those is not same. envs argument means the top stack of environment must have the same name, while @env.env_command means the commands can be used until the environment is pop from the stack, even though the stack top is other environment.

What is more

The most difference between KoiLang and other markup language like YAML which is data-centric is that KoiLang more pay attention to the command. Yeah, text in Kola file is a special command named @text too. In fact, the core idea of Kola is to separate data and instructions. The kola file is the data to execute commands, and the python script is the instructions. Then Kola module just mix they together. It can be considered as a simple virtual machine engine. if you want, you can even build a Python virtual machine (of course, I guess no one like to do that).

On the other hand, text is also an important feature of Kola, which is a separate part, independent of context during parsing. The text is the soul of a Kola file. Any commands just are used to tell the computer what to do with the text. Though you can make a Kola file with only commands, it is not recommended. Instead, you ought to consider switching to another language.

Bugs/Requests

Please send bug reports and feature requests through github issue tracker. Kola is open to any constructive suggestions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

KoiLang-0.1.0.tar.gz (172.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

KoiLang-0.1.0-cp310-cp310-win_amd64.whl (85.8 kB view details)

Uploaded CPython 3.10Windows x86-64

KoiLang-0.1.0-cp310-cp310-win32.whl (79.1 kB view details)

Uploaded CPython 3.10Windows x86

KoiLang-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (418.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

KoiLang-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (416.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

KoiLang-0.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (421.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

KoiLang-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl (96.7 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

KoiLang-0.1.0-cp39-cp39-win_amd64.whl (86.9 kB view details)

Uploaded CPython 3.9Windows x86-64

KoiLang-0.1.0-cp39-cp39-win32.whl (80.2 kB view details)

Uploaded CPython 3.9Windows x86

KoiLang-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (424.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

KoiLang-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (422.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

KoiLang-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (429.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

KoiLang-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl (97.9 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

KoiLang-0.1.0-cp38-cp38-win_amd64.whl (87.0 kB view details)

Uploaded CPython 3.8Windows x86-64

KoiLang-0.1.0-cp38-cp38-win32.whl (80.2 kB view details)

Uploaded CPython 3.8Windows x86

KoiLang-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (425.9 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

KoiLang-0.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (424.6 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

KoiLang-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (436.1 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

KoiLang-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl (98.2 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

KoiLang-0.1.0-cp37-cp37m-win_amd64.whl (87.4 kB view details)

Uploaded CPython 3.7mWindows x86-64

KoiLang-0.1.0-cp37-cp37m-win32.whl (80.2 kB view details)

Uploaded CPython 3.7mWindows x86

KoiLang-0.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (398.8 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

KoiLang-0.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (396.6 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ ARM64

KoiLang-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (380.2 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

KoiLang-0.1.0-cp37-cp37m-macosx_10_9_x86_64.whl (98.1 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

KoiLang-0.1.0-cp36-cp36m-win_amd64.whl (96.1 kB view details)

Uploaded CPython 3.6mWindows x86-64

KoiLang-0.1.0-cp36-cp36m-win32.whl (85.3 kB view details)

Uploaded CPython 3.6mWindows x86

KoiLang-0.1.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (371.2 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

KoiLang-0.1.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (369.8 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ ARM64

KoiLang-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (361.0 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

KoiLang-0.1.0-cp36-cp36m-macosx_10_9_x86_64.whl (94.1 kB view details)

Uploaded CPython 3.6mmacOS 10.9+ x86-64

File details

Details for the file KoiLang-0.1.0.tar.gz.

File metadata

  • Download URL: KoiLang-0.1.0.tar.gz
  • Upload date:
  • Size: 172.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.14

File hashes

Hashes for KoiLang-0.1.0.tar.gz
Algorithm Hash digest
SHA256 86c34a79e9f51618bf1220c9dea5674a3ef57de04e32da7876c8a26d0443e3af
MD5 7689fc2dc33f351e96c70b7df5780236
BLAKE2b-256 82b8f5f04cb9a837f8b914042b8cf169b783cca71926a0e907fab3e2e24303cc

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 85.8 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 aa6b9adb5c238b35f462ec58338cf0963fa61cc60ab26d9ee27f6f58bd4a5744
MD5 38fabfeb3dfef4ea61a543a1937bc8ef
BLAKE2b-256 989a8a28c4ebc71d64aa356b17b884cc91b03405949443d7141c20f053e2854d

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 79.1 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 1655b0445b48965fef8296e8227abc9e480cc3403b5f0636ef28f36824bab1b7
MD5 bd74c3aae9802ad82b58a8878ca5fb37
BLAKE2b-256 1005c87461069dbcfafb220681004c93d0985d51d5d595cb468385ae9c8a0e95

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 734fa3760173efbe5237067b4d4bec667925b09ea19489ef044c3e893130c1b5
MD5 89be02ff9a5e15a6e80fe7f08f6cdf49
BLAKE2b-256 b3aee9b76ea5809b92706d26b57399516c7f3edfbe6e389b8a15ec8c8700bde5

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 840bf01ec6edc22935998ca0f0dc150939b6f1fe02934082091e0200fe85ad38
MD5 c7b813125f4c58390034024504e39411
BLAKE2b-256 7abfc3fe4a9178ea8d8d4e3e32beb9007552e64dd5a33e24b4624eaca964cfef

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 5a80984b5e99fb96c61d60157dcde21b1650bc894562dfe3b8ca8a05897f8b82
MD5 375004c84cc41fb101b290eb1d914b45
BLAKE2b-256 d80136731b7e4f9604d2eab8299a20e6791b2fb6963490ef7744e1ed56c25e49

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e13d84e693740d1a10e90196937d72585d027885bd306463e3349d5a4d3e787e
MD5 de96de20e9d07bd58511713e79c0f50d
BLAKE2b-256 58bafd5f682905f092012cac68e58b6cf1a626f253381f9465ebd6efe50370e4

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 86.9 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 324f073da3270e6ffca3dede987b1d63f24339bb2fc126679062e982305346f5
MD5 a07c7729b8ce8470483c4d34fee3778c
BLAKE2b-256 0f41da1c3b51512c6c1660c789b76316099b46a861781a7290af1086c5b3934d

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 80.2 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 f4b842d61cbcf46fb977db015904c0fca810e96c670031a99d2be1bf1822f1eb
MD5 336ed229212a30109f18e0c9785f9941
BLAKE2b-256 711d7dc6aad1a8549a2a775b93f4dcd850037fb2bf13c2bebe738845544dafab

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 baefa3568bbe6b08c180071375fd39ce477db8e381749af88afe10e910e58538
MD5 bffd54684a69d500706cfc57b92c878d
BLAKE2b-256 6fe51aa49994e784da87be5b0eb52af2b84d10241f42ef0b69d93d6b0b7744b4

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 71593f4f5063cfcd8e86390aafb7bd51eab0532ce6f0fed26c07ed6be5aafd02
MD5 2115e94ee403aa2d943ffb674ab6c188
BLAKE2b-256 b059fee3031d0675ab79a8295672abc25c117c04b9ffa2a8163bc3a851250452

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 8202b50e5e5e88202d452ffd2cef38a6fb7e206dfb8f7810bd5f0069f7208d64
MD5 3ceb944401b891f9337790b83ed3715b
BLAKE2b-256 bc31150335c907e0ada62abb7895fabe7ce13e9ba8e75e8218d7e45ea7f24ff9

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8de2ab7510e6c5af698a09afbd9c59ebbd9e68410ecd578415f576d7b0ad4678
MD5 c6fa015e8d8eba55663e95c17a028767
BLAKE2b-256 57e6ffddf11324afef80824c4c022bacf516689226857ea2fce83b3bdba1dc88

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 87.0 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 7280a2383ff988d6275725b1e3bda5ba4add9229fd915aaff2c8315eda17ab98
MD5 ca65666832b71d68e8c257d188c14133
BLAKE2b-256 4ba2574595c53c1f311d6bdf0e8109ee00714b464bae56c05875d68147ca85f9

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 80.2 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 0fb6a3bdf2031a90203962277007ceec0eaacceebd91e77f1be1cf3a67ceba93
MD5 84a1f82a2303eff0f5ba2a3531238869
BLAKE2b-256 38070498c283907f38bc32cca9dcd38b6bff0be1dcbf077f54d770aa4c8c0e57

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6681febd8881e285bb5f04ff244be31180e642a9358feff0885c3901b178985f
MD5 6aabd416d8b0aced88ca34b70ee935dc
BLAKE2b-256 e9a7c9317397cea45306b7f57cb5e909650e42b8e1ad837b6cb77503e3112fe8

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a6336087cf77e4faa478638e12167668c5e0794660915f518b84a8fb8fe553c0
MD5 a41259aadad0c2fb752850d5bee3decb
BLAKE2b-256 d758d776a9fb29e1964ca9920f6777e3d3571af4e6d3a7c7dc219bfe905cd1f5

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 60a7c0f9ec00edaa11ceba42d37f01869e5b19ffd457935e305cdb42982101e3
MD5 2332057dde8aa9058ac7261983231ba9
BLAKE2b-256 acbc8dd76f20db5554200f5bc17cf100ac240ae92867c8da8b23b2d9c4568219

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 17057bbab38e56b8b44ad982bca158acda50b46d5bb328acc840413fb5eb3497
MD5 65da943527a8bcdacf65facd5feb9073
BLAKE2b-256 6f57b3a1578c9b5468b3598c357745350925eb994ee7f49d3a80fa194ec42d5b

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 87.4 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 822cc323ca9eecdf179a5bf2e30b01eeed9915241edac42bc06b97efb8bb556e
MD5 4605893d2c7f131b758463556f50905c
BLAKE2b-256 d08ef128cfc07c054440821cedc1e55a033bbd0d3fa07b3efe1245ed60d6a4c3

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp37-cp37m-win32.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 80.2 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 1dc4b824006587bca5b38d06c7693162dc92bb53e62c97bcf67581ab26f8890a
MD5 30755fb71e387098038a9513b9b77c1b
BLAKE2b-256 3ffb404ad7164788f55340d27d5be80aa579623a02ee86768be64c7b96e87f88

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 80b2980d84df21d9936f7dbee2ac67e360895ff9c1e6bc698c4f336073ee5688
MD5 29f08933b11a68c1f642d29e9c9eb7ce
BLAKE2b-256 6d5b9d06ce3c5c0e58b21fcd7165bc88b03bf06eb70c761c7f702e1ec3f40d16

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 69f1454294dfef5f1299a9cbecca31865cd0a637f1572c48b137d3a49c422b68
MD5 237f5f0442b9de35a5b18d5a72f2a6bf
BLAKE2b-256 a909112b67b43b1d8bb130b94e0f2f66e38f92c0a97b20f5a71364bd95e64ca2

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6bac743a252449fa5d87730f0e4e14aa2eefd6dc3472d9f64a2319903c1312f9
MD5 14b839b329687abd643a268aeea61289
BLAKE2b-256 f79495b56cbfb41352e23a991bbfca08ca97768645d0abbbb329fca23b8250d9

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c5a51dee1e446953b9356c1a6f1e1fd2925392e88c7fa4734162c84e2d23fe94
MD5 1fe461f5bbec6294e0c8aebde01850f0
BLAKE2b-256 c0db9e99cf4ec163f76ffd8b93beff94d7c895bf85f52d81b57a1c88313ca327

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 96.1 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 1715f2ae2bcafe2bbeba1e013606d3291673de1fffc5d2f5c62a1fad69404747
MD5 5e2db445af4fbbafd4119c462d1bc3a5
BLAKE2b-256 86988e2d9a9b6c8ba4d7b097a5683fde5ab3e2dec44eceae90c9f3d32d10602c

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp36-cp36m-win32.whl.

File metadata

  • Download URL: KoiLang-0.1.0-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 85.3 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for KoiLang-0.1.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 d10a92baa4059bfb22b1920560a94b89cf7dbe39ff7a283cc8aff45fb270f2e0
MD5 bca5644dc569045eea3a52551a51b338
BLAKE2b-256 baed3df41bc660058e59e2bb2c025ae21a1c5242e533c9ae5aa00cdda2d5fa2e

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 34f81082d0f993bef322b1eb079f3b29bf52cd3abf10f3d6f9ca7b52d0db0ccb
MD5 684c2948bfdb6c247af54dc5a73b4c5a
BLAKE2b-256 f4a437a811654868e866dea35b618a8b043e5ec4986e98271e0f6b3adee95bf5

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ac084fd96b39a5c4fcc72ff6d96a8b5980b4e5a23e09e223d954c532917517fa
MD5 3dbfd2f4c7bcfc4ff62e310fb6644a8f
BLAKE2b-256 4009bdef634c12ee1423245e0fef1194d9fcb5e4e521201f3bfb247fb1048dc1

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 4db8084d5ccaf00c0fc7b6c9fae589edc5289aab702cae277ef71a924c6f0557
MD5 b1fcad1c9a9d0475d1d7d23dcfcd1e4d
BLAKE2b-256 6e7605f6bcb7a413ef6022c0d6d6eb8720e78cfb08089c44dfdc2496c2881cfd

See more details on using hashes here.

File details

Details for the file KoiLang-0.1.0-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.1.0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 05d2172ee067d15edec1d5b92bcaf0334af3a209a138d15584ebc9e540fb0a9e
MD5 4835b873a22c6efcfcea2f7675aa14ab
BLAKE2b-256 05f1ebd4aa75f2c2b843f193e4b8e22c51fbdcb4e20eb1bc2efd6f799e5442f8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page