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.

#background Street
    #camera on(Orga)
    #character Orga
        Huh... I'm a pretty good shot, huh?
    #camera on(Ride, Ched)
    #character Ride
        B- boss...
    #character Orga
        #action bleed
    #camera on(object: blood, source: Orga)

    #camera on(Ched, Orga, Ride)
    #character Orga
        How come you're stammering like that... Ride!

    #playsound freesia

    #character Orga
        #action stand_up speed(slowly)

    #character Ride
        But... but!
    #character Orga
        I'm the Boss of Tekkadan, Orga Itsuka, this is nothing to me.
    #character Ride
        #action shed_tear
        No... not for me...

    #camera on(Orga)
    #character Orga
        Protecting my members is my job!
    #character Ched
        #action shed_tear

    #character Ride
        But...!
    #character Orga
        Shut up and let's go!

        #camera on(Orga)
        #action walk direction(front) speed(slowly)
        Everyone's waiting, besides...

        I finally understand now, Mika, we don't need any destinations, we just need to keep moving forward.
        As long as we don't stop, the road will continue!

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 kola import KoiLang, kola_command, kola_text, kola_env


class MultiFileManager(KoiLang):
    @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 at_start(self) -> None:
        self._file = None
    
    def at_end(self) -> None:
        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.at_start() # begin parsing
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.at_end() # end parsing

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:
    ...

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.2.1b0.tar.gz (301.0 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.2.1b0-cp310-cp310-win_amd64.whl (154.2 kB view details)

Uploaded CPython 3.10Windows x86-64

KoiLang-0.2.1b0-cp310-cp310-win32.whl (139.5 kB view details)

Uploaded CPython 3.10Windows x86

KoiLang-0.2.1b0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (862.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

KoiLang-0.2.1b0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (858.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

KoiLang-0.2.1b0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl (650.1 kB view details)

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

KoiLang-0.2.1b0-cp310-cp310-macosx_10_9_x86_64.whl (182.3 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

KoiLang-0.2.1b0-cp39-cp39-win_amd64.whl (155.9 kB view details)

Uploaded CPython 3.9Windows x86-64

KoiLang-0.2.1b0-cp39-cp39-win32.whl (141.1 kB view details)

Uploaded CPython 3.9Windows x86

KoiLang-0.2.1b0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (871.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

KoiLang-0.2.1b0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (867.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

KoiLang-0.2.1b0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl (658.2 kB view details)

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

KoiLang-0.2.1b0-cp39-cp39-macosx_10_9_x86_64.whl (184.3 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

KoiLang-0.2.1b0-cp38-cp38-win_amd64.whl (156.7 kB view details)

Uploaded CPython 3.8Windows x86-64

KoiLang-0.2.1b0-cp38-cp38-win32.whl (141.2 kB view details)

Uploaded CPython 3.8Windows x86

KoiLang-0.2.1b0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (877.6 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

KoiLang-0.2.1b0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (873.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

KoiLang-0.2.1b0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (842.1 kB view details)

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

KoiLang-0.2.1b0-cp38-cp38-macosx_10_9_x86_64.whl (184.7 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

KoiLang-0.2.1b0-cp37-cp37m-win_amd64.whl (156.4 kB view details)

Uploaded CPython 3.7mWindows x86-64

KoiLang-0.2.1b0-cp37-cp37m-win32.whl (140.4 kB view details)

Uploaded CPython 3.7mWindows x86

KoiLang-0.2.1b0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (807.1 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

KoiLang-0.2.1b0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (802.4 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ ARM64

KoiLang-0.2.1b0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (759.4 kB view details)

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

KoiLang-0.2.1b0-cp37-cp37m-macosx_10_9_x86_64.whl (183.0 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

KoiLang-0.2.1b0-cp36-cp36m-win_amd64.whl (172.8 kB view details)

Uploaded CPython 3.6mWindows x86-64

KoiLang-0.2.1b0-cp36-cp36m-win32.whl (150.1 kB view details)

Uploaded CPython 3.6mWindows x86

KoiLang-0.2.1b0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (774.7 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

KoiLang-0.2.1b0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (770.7 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ ARM64

KoiLang-0.2.1b0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (710.7 kB view details)

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

KoiLang-0.2.1b0-cp36-cp36m-macosx_10_9_x86_64.whl (179.3 kB view details)

Uploaded CPython 3.6mmacOS 10.9+ x86-64

File details

Details for the file KoiLang-0.2.1b0.tar.gz.

File metadata

  • Download URL: KoiLang-0.2.1b0.tar.gz
  • Upload date:
  • Size: 301.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for KoiLang-0.2.1b0.tar.gz
Algorithm Hash digest
SHA256 d223534778f129c129ad8862f1b047cebaa2da9fca0630e8e79c79ddb40a0e06
MD5 4c1c4b58f0bcce6b428aceeb493a606c
BLAKE2b-256 24785e2202813b0fd313bd69071792ca6eaa89f75e1d5d8f1d5646b16bbc0c17

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp310-cp310-win_amd64.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 358c902595c6dba3b50e413b3cfa4d9494aaa674096a130f10ac801cde942420
MD5 d8ecbd3bbe4012cc1184f53e7f09fde0
BLAKE2b-256 73ca7c4876cbe0e228dc22d6b225434970df6567dff7b294763d9d83fbca5d91

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp310-cp310-win32.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 3359b404ddc5eda95c008848a259c6debda452b4cef8aed713f2eea929732042
MD5 5a961b1619c1d10dae2abbc67230572e
BLAKE2b-256 a1e742204bc4d6ceec7857db17aabdfabb810a31b79ee1c34e9b776de023c57e

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a7e8e8c65cf4e88ced5bc6592841056be737047899617b38396a07b56fd8d388
MD5 5e822bf9c9e7d3509a580d2cbdf52b4b
BLAKE2b-256 a2b22beff11c2c56e3339339ff94acd2cb47ebe749dbbf2655a8abf1861a4dc2

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e2c34a4e1d1406c12ccc017f4d1f7e8ec5edf65284ef9e4d58b086be23e7eb3d
MD5 5fd448ed6f3a29b6571db8369b7f1246
BLAKE2b-256 dd9ea2d13fd1cdad0a472b0e6de69680f1d49fa34d852579daed9d17d0d65f0e

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl
Algorithm Hash digest
SHA256 50e04d324b0769bab806f12808c0cb2eed40549e625bbbfe7b6099ba4d4b7ec1
MD5 c26c9c0fb8eed1830bfb3b1006fdb665
BLAKE2b-256 a67122897b9c075d9c9e40b08f883da8a79323fbb52d2eb39b336e4e87f3bcd5

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dc33cd43abc6b1b2a5d7fd2e7a23c0a222566cc9e0f76a8a958bcaa0bbfab984
MD5 8346629d6994cbf90b1960edaefaa04d
BLAKE2b-256 dc68bcd4d9824f90806a706b9026b351759622f9e3b9e5606f8e62c8a4226225

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp39-cp39-win_amd64.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 345aaec82d899f9b28cd96b395f62e6427414b324fbbbe168f68acc730fdd874
MD5 44f23ace7cc58b1f9a64c8dfa817beab
BLAKE2b-256 5cf5ad307278bbae12363f9eee2023cf79edec7c3c65454f4deca1461999cd78

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp39-cp39-win32.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 9a9cc89ea19d67f695fbb805b9e2dcc94cba432abeb1f8d5d93d03f369e15049
MD5 6f868032d053bc99986144e204b2f6d9
BLAKE2b-256 2b09f1b4eb55133cc3926506f977ecdf83e74a86a53c160388236265c86883f9

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c9f67cfedc9387fbb0f82f8c10695de0ddbdd4d86ff4d4e1c1d665ee02c18051
MD5 963b91ef7db9bf25d1905ed627ba8381
BLAKE2b-256 97bb94f2a500562853efa3ec667de809814809dc72796b817ac95eb139585689

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 597865dd40b285623f8a8b4fb0be6829894f87cf062166322839d740c9ecc5d3
MD5 f64b6886d9defae993a583cf865b040c
BLAKE2b-256 9e6ee304ccdd1419171f4d6f278ee435a8a5fab00b54650c8343b773b71d17af

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl
Algorithm Hash digest
SHA256 4b1e3dceab26c85c413e2e6f03e9f84cf80c8bfe1574022ba14afcab600a78c1
MD5 80ab572489b3e51555f0fba1c9ad95c4
BLAKE2b-256 e85bf92723f8a2246b2a3c47e49b316eace3e674a8bab271c326859755ebd22b

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 94de21a7284a868696bafbe95ee48716ee2686ae83415459e42780a5ef6d89ba
MD5 1cc646f688d0cd9fae43aad3a66926a2
BLAKE2b-256 b72c293c4c45295e3e79a9b05234ff6bbff50a219f13e2694575965438bedd36

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp38-cp38-win_amd64.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 7f838ddd756e47d9e1da077ef813a1ae662763c2cbfc041bbc61ecae093bb932
MD5 ff19a05ca9770c221ed104b39e05fcf1
BLAKE2b-256 04acb376c0aba1ad2a87c64316953b809da0947025adc4072178c91c89cc5d80

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp38-cp38-win32.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 9271f4706e48e83990cc28581785229b116c4f26d3aa3a5b5cd7f8595b178067
MD5 dfe3c9c06f196dd44cc55c77483d1b20
BLAKE2b-256 6c4aaf81f337bd81eaa2dba5a72092a0ce233fb4b98aacb4bd2b4dd700b364c3

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cee439329d83b6133d726f5588dcb33dab4d15530f07f01833d970e88b2fba80
MD5 d07fe6c2d19db6fb562e97367bc015b8
BLAKE2b-256 3f6d62bd26b1366c079a7b97cb809194d920d244b9b61eaefbbb89c18159c689

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 02b85160c66d767f0fa909c8446748fb336f18a5f8f03a6d26e93bc3e72a14eb
MD5 3696a3ece5eaf89681866fc2e71172a6
BLAKE2b-256 e4c6cfda900470b09c8c2c4c2327f71b7be6013b31f0866d172a655c1bd91100

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 c4b7b922042b7c6e63ed4f80ed588cae22b74297cd771212c55aa675d1b618a2
MD5 76343f70d8fdbe5477530134e70cae84
BLAKE2b-256 601dbfa52235a1e4cf6c24ab28ba56d2ba85ace9518a085731f1279faac1ea3e

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 21b087679321ecd04051b963b0533bf4aa5be8631ddc1669fa1dd90a2010785f
MD5 b319935dce66b410196cfc5b396a5e22
BLAKE2b-256 c294017fbd539155eeace201b52140dffd6a3035f23e2a84b19ce84951fbc96b

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp37-cp37m-win_amd64.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 7d0c6b836e70a989a28a3b54a7a3e9367bd76f2e1d607c4079457502d6a08678
MD5 bf654a5282e0f0cb393dc76f6ead722c
BLAKE2b-256 e7912a45e4e5352e4b76df12db41fbcadfebe0afb9b898f49675c6f466c1fe68

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp37-cp37m-win32.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 ffac8262c2b30d6ededfec99cc7cee345b5f09f420e81890dc618e3b7be26ee3
MD5 1dd6b1799dba54e71f29415392b39bae
BLAKE2b-256 ef703dae21264b90617613a0b70c154aa9a10929231655e475017b0ddd9bd71d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7346f6e604827e5e377ec6d6426e45061048bc3d555a310ec62617ab4d2665b1
MD5 2dc37a9da3f3384c70f51024ce82da4a
BLAKE2b-256 ba418c2eaa0e4ebe77707629235c8141a669bd18d318142e5e708522ca7af349

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 92133f0befdd14f0a12b42fe6a8e265649816e939005382a5b0ba07c49a6cfdd
MD5 dae45a0b4d8944533ede4f5186f842b4
BLAKE2b-256 d3856db34e8aade5cd18862376cd44315e146b5c8bce11b221754a774944c57d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 4468049d2f7e9a69cd4a7e3eb34f89632f8959d38ff32d75e4bbc799464948e1
MD5 801c9032b396ee3baa3045f706ffc2fd
BLAKE2b-256 66ee91398b4a4426047bbae2ecfd225bb872dceeecbfcae77d6f21dba26511ba

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dad95db15e338da9e55541305c5128e6366c0fbbcb5d1fe6ef8149a0d84a6bcf
MD5 f45ceabf390ca689fc9ce6fd5b99336c
BLAKE2b-256 104319bab8be9e21895888897b9371260fb98ca2074c89fb3a957bcbeb2b4a5d

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp36-cp36m-win_amd64.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 7362b1f062dce7f41421f7675e6647ec4be0b13b4c5c486533cd9421effd6911
MD5 57de4f3f2a3da8686c0466f4a8d78c08
BLAKE2b-256 2bbc62ca76028ddfdd0e06488682177177cbcd28cf49785f3bb1d957d6b761fc

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp36-cp36m-win32.whl.

File metadata

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

File hashes

Hashes for KoiLang-0.2.1b0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 df9cc2ad0526d247a377e18eb69a2c5b8223375a8db7e71a3ca1de671236eb32
MD5 44e5ad3f9a7e1e57a05986857b38109e
BLAKE2b-256 7286e176a9655ac53f503219d31aa83c46df8417d9b7f1fb861ec0eb521306c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 27a8e80d714f7c3063e571b7c2ec7689dc28874037421bec83638b687623edb8
MD5 0aeeae458069bac9f40838ac61d8b5a5
BLAKE2b-256 8cb9b3b2266b1ac7bef2b0026696f292ff5e50603e3f7277468036525a1c5417

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b317edd1004483a8b997aefdeefa2208d5e509715d5c4d04f71accfd22de414d
MD5 43126e24fd8d59dc799deac9260c8ceb
BLAKE2b-256 89825fcf489726712aacec89d99aeb129963e9ce93d3e75c5787a36f6e2f9422

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 5c5c226c4c9219b025a13d28e6ef2f7a75f8311803e53c925cdee271e0660abe
MD5 85307f85c5375437b629226b31bd7762
BLAKE2b-256 d1a892bd0ca047f4ec6bf7493a0f571bfaacee52bfd763bd8bbadb48dd023e0d

See more details on using hashes here.

File details

Details for the file KoiLang-0.2.1b0-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for KoiLang-0.2.1b0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8f28ca00e6c20e803a8487b976dce488e5ef5b8a6a4238a314002bacc05b51ed
MD5 894a7c3fde47596253d8f79f7fd48cda
BLAKE2b-256 ae538427fb57edae9424fecd66abc95636280113c1cf8a9d9a52028ef6da074b

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