Skip to main content

Python bindings for Objective-LOL

Project description

Objective-LOL Python Bindings

Python bindings for the Objective-LOL programming language - a modern, strongly-typed language inspired by LOLCODE.

Installation

pip install objective-lol

Quick Start

import objective_lol as olol

# Create a VM instance
vm = olol.ObjectiveLOLVM()

# Execute Objective-LOL code
code = """
I CAN HAS STDIO?
HAI ME TEH FUNCSHUN MAIN
    I HAS A VARIABLE X TEH INTEGR ITZ 42
    SAYZ WIT X
KTHXBAI
"""

vm.execute(code)  # Prints: 42

Features

  • Execute Objective-LOL code: Run complete programs or code snippets
  • Python integration: Call Python functions from Objective-LOL and vice versa
  • Type conversion: Automatic conversion between Python and Objective-LOL types
  • Module system: Import and use custom modules
  • Class definitions: Define and use classes from Python

Advanced Usage

Defining Python Functions for Objective-LOL

vm = olol.ObjectiveLOLVM()

def add_numbers(a, b):
    return a + b

vm.define_function("add_numbers", add_numbers)

code = """
I CAN HAS STDIO?
HAI ME TEH FUNCSHUN MAIN
    I HAS A VARIABLE RESULT TEH INTEGR ITZ add_numbers WIT 10 AN WIT 20
    SAYZ WIT RESULT
KTHXBAI
"""

vm.execute(code)  # Prints: 30

Working with Classes

vm = olol.ObjectiveLOLVM()

class Calculator:
    def add(self, x, y):
        return x + y

    def multiply(self, x, y):
        return x * y

vm.define_class(Calculator)

code = """
I CAN HAS STDIO?
HAI ME TEH FUNCSHUN MAIN
    I HAS A VARIABLE CALC TEH Calculator ITZ NEW Calculator
    I HAS A VARIABLE SUM TEH INTEGR ITZ CALC DO add WIT 5 AN WIT 3
    SAYZ WIT SUM
KTHXBAI
"""

vm.execute(code)  # Prints: 8

Type Mapping

Objective-LOL Type Python Type
INTEGR int
DUBBLE float
STRIN str
BOOL bool
NOTHIN None
BUKKIT (array) list
BASKIT (map) dict

Links

License

MIT License

Changelog

[0.0.2] - 2025-09-16

Changed

  • Modified octal prefix from 0 to 0o

Fixed

  • Fixed a stack corruption crash on Windows by using compatibility function calls with separate goroutines

[0.0.1] - 2025-09-14

Added

  • Initial Python bindings for Objective-LOL interpreter
  • Pre-built wheels for Windows, macOS, and Linux for Python 3.9+

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

objective_lol-0.0.2-cp313-cp313-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.13Windows x86-64

objective_lol-0.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

objective_lol-0.0.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.2-cp313-cp313-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

objective_lol-0.0.2-cp313-cp313-macosx_10_13_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

objective_lol-0.0.2-cp312-cp312-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.12Windows x86-64

objective_lol-0.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

objective_lol-0.0.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.2-cp312-cp312-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

objective_lol-0.0.2-cp312-cp312-macosx_10_9_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

objective_lol-0.0.2-cp311-cp311-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.11Windows x86-64

objective_lol-0.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

objective_lol-0.0.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.2-cp311-cp311-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

objective_lol-0.0.2-cp311-cp311-macosx_10_9_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

objective_lol-0.0.2-cp310-cp310-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.10Windows x86-64

objective_lol-0.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

objective_lol-0.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.2-cp310-cp310-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

objective_lol-0.0.2-cp310-cp310-macosx_10_9_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

objective_lol-0.0.2-cp39-cp39-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.9Windows x86-64

objective_lol-0.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

objective_lol-0.0.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.2-cp39-cp39-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

objective_lol-0.0.2-cp39-cp39-macosx_10_9_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file objective_lol-0.0.2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a21f7f865bfa6254b35e1d6c5160bf7019cf0c22f7a2297edb56180baeba3a88
MD5 b2110c6cdd9035ab43fefe6c155d375b
BLAKE2b-256 13fdedf51deb659be418f30851c600229e078fd81fc7b4481ef368d001aa9244

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 368957efefae77935a9cea9554ebfb727df65c39f760cf4df4fa0b25bdf3742a
MD5 a7f87689c4c6899b9342101598a47e03
BLAKE2b-256 e6ec16859a26050e68c609094be81f7470bea3891db470547d0a78bfbbd14c43

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 46bb1955823dc0d858536a2e07a81a21c3947ae1d129120990f317e5a408b8ca
MD5 4f36c55285c4ad3abaef60e719013d4f
BLAKE2b-256 615e8d9daa8f7b2340f6df02eb4561e395ec4036d5636c708914b66688a7d5f3

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 164bb54a437148988de9d26dff238be36acd6088fff2cb827599151dc7996be9
MD5 1c84d2e90aa48be70aa9ec2ae849d595
BLAKE2b-256 a1e769eecd9bb3b414cb0862cce8665c8276f3b5d4aa09b969d6109b8f2bbb22

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d7eab0914accaee0c2e1aa7d1292d401976cbb8d2be911e82c3a35013a683cb1
MD5 60d363f90dd803806fde86e6185c61a4
BLAKE2b-256 9c83e003bfcf35c99ec319f5ae8a909fe437bdcef74923f6315d00ee6bbf8cb4

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0d9b5089a171be0ed1b246b94f2db9e88d73ff75fea4e89a658abc4a64033df4
MD5 dccb020dfcf1c435fa515b47edb2cc24
BLAKE2b-256 ab309963a75b3bf7aa9bf5c6d2a780ebbc29c58d91bc892c3f230a2a35a2a8c9

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 07329ac4ae715292504e2c77b28396a3c4659995bfbe900e397c50844e3492da
MD5 836b47205de3cdcc4f09c1b84df514c6
BLAKE2b-256 d836df45fc05c2390d9679d88aed782e1656c9557c10d1c44f1ab53beef0e5c2

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fb38b6fb7a39e18788911e4e4a261f068dc0efe9c44e421021abfe0fb2204dd8
MD5 283f95db6c708613906295aa9d47c046
BLAKE2b-256 f3299a8de157a1c1362ac88e5d09eb9f4f0994312c7b664ca803a8d66f7ce4e3

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 60c6494d6d12f751b7cd20f9f9d5da8733754a969528f3f766c2fd07f6ed80fa
MD5 b6b410b01602b6ad131607882e6568cf
BLAKE2b-256 80d7ae259edd5ec7049bfcebc41736e271d58356ca80a010f7b33a4486417a1c

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 33026e0a4316782cac3196fc154faba6651df4be4ffa3aba3e1f70b457d7c573
MD5 98300b3ed11c7b42bd0829b297782b1d
BLAKE2b-256 5ed0788d873137da1b399205345f7524920586c1c079403535bc67a47f831d10

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 232fe104ca05cb270cfd29cc70b088f875ea3f7dc1a5b80e57c4dc2ea4dca0dd
MD5 95bd4bad0b9420a17ba19de63d19565d
BLAKE2b-256 8b9a6841ef1df0dbdb1f225d5ad186ebfd04f20221265ef7cba71b847220aea9

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0f52066e2e3764b4274a5da945372831e01c5fb39f1ee99c8c80dfd6c89bc555
MD5 b904d2c4282a73886e91e37e3b3ab5ad
BLAKE2b-256 2345cf9dd4b28a79b80ff2aad5919a2080d4f261e1b6cc4e00b471aa8393d7d1

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6fb8e4d85bf4e2a17b59d87fc612eccb84475a51c3b453571d5588646dab6dda
MD5 5300f19817e1bcaec1844fe84bd26e7a
BLAKE2b-256 287dd276b369a2bfc74bf0021c986da57d7720174a4fac1862912be40fb7736c

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7a93ebef3b81dc4871098aa358906b6f473e875f59756f4141364091db5475aa
MD5 cb7f2bed0eb8357243e6032a4689a4e0
BLAKE2b-256 d813257e45be7fdd875a10f7f606d3b1a1ca6e2f14fa5c8703f96ca98e57fad2

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a521c5f41df4a324d4c69c0699615d385e3876e36640b17e97b97386643fc68e
MD5 35e5d3a98cc8a8288034226ad3e79a03
BLAKE2b-256 edb854f41fcfd334d5662aa35bf8d4c52ea02b12e79faf6c28f20e4d610e37ff

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 25e69355d02a961e30e4b6e67b55a717ec0672266ee25ba93742a73f3aa983dd
MD5 190bae2265402012a65e49ddb8dff967
BLAKE2b-256 a2a0d09b9889eb6f9e38448e52c2ce9f3d1fddd467cc61545623c15f55d2d3c7

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 44e07fb9b014655972e89b3c51b8e78743d98d7b86df5eff909a13d6e5c3b21c
MD5 dbd076b0025622b50d5b639c1c4b429b
BLAKE2b-256 7e76b0ff701d7e4ecc4cbb8f3b2a7facfef083e3eb3622db911b1ed50b3529d1

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0a4782600df726dc8282fc39250d72214e47951520857c1494890dc726f3257c
MD5 1571b08bd0451db3798471a753cac6af
BLAKE2b-256 a24d058b27b2ae01b269a9fe4d0ffc7f45410147672a06735e30f4190dbd60d8

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4df8d81403a755b0c5805e4645d3331405b871f64bf03bccc0fe4777b3f31fa3
MD5 c2fe2e7bf279fe2500789b5dcc96c44a
BLAKE2b-256 b33d12752f57d6528793c83edf6c292ce907d2f7e118140c0017627d5d33b76e

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b2c48b7434713f82eba59a3ab5ad93bb02dd16cc236ae3b4424447b865906d86
MD5 3e6773b9a6837fae436c258e4cf3cce9
BLAKE2b-256 cf1932c3c8624015cbc9edd834c1c4d4af8f40c9a89ed896bec629e1250feef8

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 48c472afd36f72e954ceea76455c4d09240fdc118a5c27d3ac61636bb6460d64
MD5 529d91d2206e56e9a1e7a25ff65f0dd6
BLAKE2b-256 4bc4fa48ae15106cc4fbb9bb439f8bff1737dd84e99d15014eb677d81a67b9ee

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c3461d703713bb36541d3a4f9f14a543e118832970e7af85e6ae5de42e427cee
MD5 bd7b38c43bc71063398bcc4752b946db
BLAKE2b-256 231eb373737f328fac41b5404847cb3a728d223bfbb1792f68541fcd9b7dbdbb

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 319ba6c2313c787d28ba02511bb7837907415244d443a536cbbe121c07ad055e
MD5 327fe9d32db91b4f2599115d55077818
BLAKE2b-256 73c94ecfc25206ad119a6aa120b9bcecb171f58a085bec8d55d4974bb6de0612

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 866d22b14696987716d26f602dc0ee2975d8859664c70755bd2db12221b6f10a
MD5 a4c45639099d02bb39c823e3c816f1d6
BLAKE2b-256 4e27169438fd272933e14416f6f0419ae5a92b3add171c3351f64e314b8a3bb5

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.2-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4a562b0f39dc95987c27797af16764d9e3e460bb5c915ef9fa98650d1c26e783
MD5 37c7cef6dcbaa1eb1195183ebf7aa53c
BLAKE2b-256 ac198ca349dc083e18c27896354168d6c57ee610a1c3192cf620f33cf48d2f36

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