lua-compat-5.3 - Compatibility module providing Lua-5.3-style APIs for Lua 5.2 and 5.1

  •        8

Lua-5.3-style APIs for Lua 5.2 and 5.1. This is a small module that aims to make it easier to write code in a Lua-5.3-style that is compatible with Lua 5.1, Lua 5.2, and Lua 5.3. This does not make Lua 5.2 (or even Lua 5.1) entirely compatible with Lua 5.3, but it brings the API closer to that of Lua 5.3.

https://github.com/keplerproject/lua-compat-5.3

Tags
Implementation
License
Platform

   




Related Projects

browser-compat-data - This repository contains compatibility data for Web technologies as displayed on MDN

  •    Javascript

This repository contains compatibility data for Web technologies. Browser compatibility data describes which platforms (where "platforms" are usually, but not always, web browsers) support particular Web APIs. This data can be used in documentation, to build compatibility tables listing browser support for APIs. For example: Browser support for WebExtension APIs.

es5-compat-table - ECMAScript 5 compatibility table

  •    Javascript

ECMAScript 5 compatibility table

eslint-plugin-compat - Lint the browser compatibility of your code

  •    Javascript

See the Road Map for the details. Add "compat" to .eslintrc "plugins" section, add "browser": true to "env", then configure the "compat/compat" rule.

react-lifecycles-compat - Backwards compatibility polyfill for React class components

  •    Javascript

React version 17 will deprecate several of the class component API lifecycles: componentWillMount, componentWillReceiveProps, and componentWillUpdate. (Read the Update on Async rendering blog post to learn more about why.) A couple of new lifecycles are also being added to better support async rendering mode. Typically, this type of change would require third party libraries to release a new major version in order to adhere to semver. However, the react-lifecycles-compat polyfill offers a way to use the new lifecycles with older versions of React as well (0.14.9+) so no breaking release is required. This enables shared libraries to support both older and newer versions of React simultaneously.

compat-table - ECMAScript 5/6/7 compatibility tables

  •    HTML

Edit the data-es5.js, data-es6.js, data-esnext.js, or data-non-standard.js files to adjust the tests and their recorded browser results. Run node build.js to build the HTML files from these JavaScript sources.The ES6 tests themselves should be written in pure ES3, except for the sole ES6 feature being tested (as well as any ES5 features strictly required to use the ES6 feature). ES Next tests may use any ES5 features that they wish, and only the ES6 features strictly required to use the ES Next feature.


scala-java8-compat - A Java 8 compatibility kit for Scala.

  •    Scala

A Java 8 compatibility kit for Scala. The API is currently still experimental: we do not yet guarantee source or binary compatibility with future releases.

UniLua - A pure c# implementation of Lua 5.2 focus on compatibility with Unity

  •    CSharp

A pure C# implementation of Lua 5.2 focus on compatibility with Unity3D. To demonstrate the basic use of UniLua, a sample project is included. Open Assets\Stages\GameMain.unity with Unity3D, and just click the "Play" button. An icon will appear in the screen, and you can move it around with WSAD keys.

es5-shim - ECMAScript 5 compatibility shims for legacy JavaScript engines

  •    Javascript

ECMAScript 5 compatibility shims for legacy JavaScript engines

PREACT - Fast 3kB alternative to React, with the same ES2015 API

  •    Javascript

PREACT is a fast 3kB alternative to React, with the same ES2015 API. It provides the thinnest possible Virtual DOM abstraction on top of the DOM. The web is a stable platform, it's time we stopped reimplementing it in the name of safety. Preact is also a first-class citizen of the web platform. It diffs Virtual DOM against the DOM itself, registers real event handlers, and plays nicely with other libraries.

0.30000000000000004 - Floating Point Math Examples

  •    HTML

Your language isn't broken, it's doing floating point math. Computers can only natively store integers, so they need some way of representing decimal numbers. This representation comes with some degree of inaccuracy. That's why, more often than not, .1 + .2 != .3. Why does this happen? It's actually pretty simple. When you have a base 10 system (like ours), it can only express fractions that use a prime factor of the base. The prime factors of 10 are 2 and 5. So 1/2, 1/4, 1/5, 1/8, and 1/10 can all be expressed cleanly because the denominators all use prime factors of 10. In contrast, 1/3, 1/6, and 1/7 are all repeating decimals because their denominators use a prime factor of 3 or 7. In binary (or base 2), the only prime factor is 2. So you can only express fractions cleanly which only contain 2 as a prime factor. In binary, 1/2, 1/4, 1/8 would all be expressed cleanly as decimals. While, 1/5 or 1/10 would be repeating decimals. So 0.1 and 0.2 (1/10 and 1/5) while clean decimals in a base 10 system, are repeating decimals in the base 2 system the computer is operating in. When you do math on these repeating decimals, you end up with leftovers which carry over when you convert the computer's base 2 (binary) number into a more human readable base 10 number.

ZeroBraneStudio - Lightweight Lua-based IDE for Lua with code completion, syntax highlighting, live coding, remote debugger, and code analyzer; supports Lua 5

  •    Lua

ZeroBrane Studio is a lightweight cross-platform Lua IDE with code completion, syntax highlighting, remote debugger, code analyzer, live coding, and debugging support for various Lua engines (Lua 5.1, Lua 5.2, Lua 5.3, LuaJIT, LÖVE, Moai, Gideros, Corona, Marmalade Quick, Cocos2d-x, OpenResty/Nginx, Torch7, Redis, GSL-shell, Adobe Lightroom, Lapis, Moonscript, and others). No compilation is needed for any of the installation options, although the scripts to compile required libraries for all supported platforms are available in the build/ directory.

six - Python 2 and 3 compatibility library

  •    Python

Six is a Python 2 and 3 compatibility library. It provides utility functions for smoothing over the differences between the Python versions with the goal of writing Python code that is compatible on both Python versions. See the documentation for more information on what is provided. Online documentation is at http://six.rtfd.org.

Atari - Persistent advantage learning dueling double DQN for the Arcade Learning Environment

  •    Lua

Work In Progress: Crossed out items have been partially implemented. Prioritised experience replay [1] persistent advantage learning [2] bootstrapped [3] dueling [4] double [5] deep recurrent [6] Q-network [7] for the Arcade Learning Environment [8] (and custom environments). Or PERPALB(triple-D)RQN for short...

ravi - Ravi Programming Language is a derivative of Lua 5

  •    Assembly

Ravi is a derivative/dialect of Lua 5.3 with limited optional static typing and features LLVM and Eclipse OMR powered JIT compilers. The name Ravi comes from the Sanskrit word for the Sun. Interestingly a precursor to Lua was Sol which had support for static types; Sol means the Sun in Portugese. Lua is perfect as a small embeddable dynamic language so why a derivative? Ravi extends Lua with static typing for greater performance under JIT compilation. However, the static typing is optional and therefore Lua programs are also valid Ravi programs.

luafilesystem - LuaFileSystem is a Lua library developed to complement the set of functions related to file systems offered by the standard Lua distribution

  •    C

LuaFileSystem is a Lua library developed to complement the set of functions related to file systems offered by the standard Lua distribution. LuaFileSystem offers a portable way to access the underlying directory structure and file attributes. LuaFileSystem is free software and uses the same license as Lua 5.x (MIT).

tauthon - Fork of Python 2.7 with new syntax, builtins, and libraries backported from Python 3.

  •    Python

Tauthon is a backwards-compatible fork of the Python 2.7.15 interpreter with new syntax, builtins, and libraries backported from Python 3.x. Python code and C-extensions targeting Python 2.7 or below are expected to run unmodified on Tauthon and produce the same output. But with Tauthon, that code can now use some of the new features from Python 3.x. Caveat: As you can see, to maintain backwards compatibility nonlocal is not a keyword, unlike in Python 3.x. So it can still be used as an identifier.

secure_headers - Manages application of security headers with many safe defaults

  •    Ruby

master represents 6.x line. See the upgrading to 4.x doc, upgrading to 5.x doc, or upgrading to 6.x doc for instructions on how to upgrade. Bug fixes should go in the 5.x branch for now. The 3.x branch is moving into maintenance mode. See the upgrading to 3.x doc for instructions on how to upgrade including the differences and benefits of using the 3.x branch.

laravel5-3-example - Simple laravel 5-3 example for tutorial

  •    Javascript

Laravel 5-3 example is a tutorial application. It's an upgrade of this repository for Laravel 5.3 with big code cleaning and refactoring and application tests.

RaspberryMatic - :house: A lightweight, Linux/buildroot-based distribution for running a HomeMatic CCU on single board computers (SBC) like the RaspberryPi, Tinkerboard, etc

  •    Makefile

The RaspberryMatic project is a collaborate effort to provide a lightweight, Linux/buildroot-based HomeMatic compatible distribution for embedded devices like the RaspberryPi or Tinkerboard. It is based on the Open-Central-Control-Unit-SDK (OCCU) provided by eQ-3 as part of the HomeMatic home automation platform. The RaspberryMatic distribution is provided as a full operating system image that can be flashed and then used in a RaspberryPi/Tinkerboard as the main operating system for controlling all HomeMatic compatible devices with full compatibility to a CCU device directly sold by eQ-3. As the RaspberryMatic project is an open source based project everyone is invited to contribute to this project. Please note, however, that functionality within the corresponding eQ-3 OCCU binaries can not be modified as the main HomeMatic services (rfd, ReGaHSS, HMServer, etc.) are provided in binary format by the OCCU project and not compiled from sources. Nevertheless, if you are a talented developer and want to contribute to the success of RaspberryMatic feel free to send over pull requests or report issues / enhancement requests.