GithubHelp home page GithubHelp logo

00mjk / voc Goto Github PK

View Code? Open in Web Editor NEW

This project forked from beeware/voc

0.0 0.0 0.0 14.5 MB

A transpiler that converts Python code into Java bytecode

Home Page: http://beeware.org/voc

License: BSD 3-Clause "New" or "Revised" License

Python 53.33% Java 46.67%

voc's Introduction

VOC is currently on hiatus

The BeeWare project has pivoted away from using VOC for Android development. We now use an embedded CPython library to provide Android support.

We still believe there is value in a bytecode compilation approach; however, we're not dedicating any BeeWare resources to VOC development, and we we're not encouraging other to contribute to VOC at this time.

If you're still interested in working on VOC, please get in touch.

VOC

https://beekeeper.beeware.org/projects/beeware/voc/shield

A transpiler that converts Python code into Java bytecode.

This is experimental code. If it breaks, you get to keep all the shiny pieces.

What it does:

  • Provides an API to let you programmatically create Java class files.
  • Compiles Python 3.4 source files into Java class files, enabling you to run Python code on a JVM (including Android's VM).

It isn't a completely compliant Python 3.4 implementation - there are some language features (some builtin functions) that still need to be implemented, and there is only a bare bones standard library implementation. However, it is possible to convert simple Python programs, and even write simple Android applications.

Tutorial

To take VOC for a spin, run through the Getting Started guide, then start with the first tutorial.

If you'd like to contribute to VOC development, we have a guide for first time contributors.

Documentation

Documentation for VOC can be found on Read The Docs.

Why "VOC"?

VOC is a backronym for "Vestigial Output Compiler". Or "Vexing Obtuse Compiler". Or "Valuable Obscure Compiler". Or "Varigated Ocelot Calibrator". It's your choice.

Historically, VOC was the Vereenigde Oostindische Compagnie (VOC), or Dutch East India Company, often considered to be the world's first multinational corporation. It was also the first company to issue shares, and facilitate the trading of those shares. It was granted a 21 year monopoly to carry out trade activities in Asia, primarily the Spice Islands - the Dutch East Indies. They established a major trading port at Batavia - now Jakarta - on the island of Java (now part of Indonesia).

While VOC was a very profitable business for it's shareholders, it operated as a colonial power. Modern historians have expressed criticism of their business practices, which included exploitation of indigenous populations (including use of slave labour), slave trade, use of violence, and environmental destruction (including deforestation).

VOC also played a role in the European discovery of Australia, and there are many VOC shipwrecks on the coast of Western Australia.

The name VOC was chosen by the project because the project founder is from Western Australia, and VOC has a strong non-colonial presence in that state's history. It was also a convenient pun, as VOC was an enterprise Java company.

It should not be considered an endorsement or glorification of the exploitative business practices of the company.

Community

VOC is part of the BeeWare suite. You can talk to the community through:

We foster a welcoming and respectful community as described in our BeeWare Community Code of Conduct.

Contributing

To get started with contributing to VOC, head over to our First Timers Guide.

If you experience problems with VOC, log them on GitHub. If you want to contribute code, please fork the code and submit a pull request.

voc's People

Contributors

ad115 avatar amiryalamov avatar amymok avatar aniket1998 avatar asp1234 avatar bio-boris avatar bpyap avatar bsthorpe742 avatar cflee avatar deep110 avatar eliasdorneles avatar flacode avatar freakboy3742 avatar glasnt avatar goanpeca avatar hcheng761 avatar jonkiparsky avatar jvmaia avatar khoobks avatar mcmasts avatar onyb avatar patiences avatar saurabh--kumar avatar soandrew avatar sohit-nayak avatar soummyaah avatar stummjr avatar svmundada avatar uranusjr avatar whydoubt avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.