- Allows for classical OO programming with multiple inheritance using pure Python syntax, parsed by CPython’s native parser
- Hierarchical URL based module system to prevent name conflicts
- Compact downloads, kB’s rather than MB’s
- Operator overloading can be switched on and off locally to facilitate use for numerical math that’s both readable and efficient
Request to early adopters
While work on Transcrypt will continue, what’s most important now for Transcrypt to become a permanent, well-maintained asset for the programmer community is mindshare! This can only be achieved with your help. Do you think it deserves a lasting place under the sun? Do you want it to be at your disposal, evolve and have an active community to answer your questions? Then let the world know it exists! Do you know someone who can blog about it? Please ask that person to do so… Want to show your discovery to your colleagues, classmates or friends? Go ahead…
For me this is about having pleasure in ones job. I’ve enjoyed laying the groundwork for Transcrypt. And I hope many will enjoy using it.
Jacques de Hooge, Rotterdam, Netherlands
Transcription once used to be manual labour
Documentation with code examples and forum
Take a look at the documentation with code examples at the Transcrypt website: http://www.transcrypt.org . Some people have contacted me personally with ‘howto’ questions and feature requests. While that’s quite alright, if you want others to benefit from the answers, use the forum: http://transcrypt.boards.net .
- On static checker internal error: report and skip checks for that module
- Bug in ‘break’ handling fixed
- Optional -s (–parent) command line option to facilitate compilation for e.g. node.js
- “Saving…” message now shows result location
- Fix for string.replace bug
- Bugfix release: debug switch set to False
- Tuple stripping optimization added for simple indices
- For loops optimized for contiguous ranges
- Code formatting of __pragma__ (‘js’) improved
- Extended slices tested on Linux
- Extended slices completed (pfff…), autotest added, not yet tested on Linux
- Module search for Transcrypt -r and Transcrypt [-b] now both use same sys.path contents
- Setup.py adapted to Linux’ case sensitivity
- Unload preloaded org module, since it may be shadowed by a Trancrypt-specific one
- Package name changed to lowercase
- Extended slices added to support Numscrypt, not yet finished
- Tuple representation made more compact
- Slices return list rather than array
- Methods insert and pop added to list
- Python pass statement now translates to /* pass */
- Superfluous semicolons removed when in compiling with static check switch
- nonlocal implemented + testcase.
- Missing com.fabricjs module added.
- Fix for missing getsitepackages () of virtualenv, tested.
- Fix for missing global and nonlocal, only partially tested.
- Core is feature complete for first release.
- Status moved to Beta.
- Not all methods of builtin types are there by default. This results from a deliberate choice to keep Transcrypt lean. Such things can be distributed in separate libs.
- No eval and exec of Python code. This is again part of the concept. Transcrypt code is compiled, optimized and minified in advance to warant fast page loads.
Other packages you might like
- Multi-module Python source code obfuscator: https://pypi.python.org/pypi/Opy
- PLC simulator with Arduino code generation: https://pypi.python.org/pypi/SimPyLC
- A lightweight Python course taking beginners seriously (under construction): https://pypi.python.org/pypi/LightOn
- Event driven evaluation nodes: https://pypi.python.org/pypi/Eden
Copyright 2014, 2015, 2016 Jacques de Hooge, GEATEC engineering, www.geatec.com
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.