ideas:php6

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
ideas:php6 [2014/02/16 10:16] – created pajoyeideas:php6 [2014/02/17 05:32] – add specific sections pajoye
Line 9: Line 9:
   * OpCache integraton   * OpCache integraton
   * Unicode support   * Unicode support
 +  * Improve OPcodes, compilation and runtime (perf, features, jit, fixed address jump usage, etc) 
   * internals API Cleanup   * internals API Cleanup
 +  * Improve cleanup stream APIs
 +  * HTTP2 support (avoid our own implementation, nghttp2?)
   * Reliable, userfriendly RNG APIs (internally and userland)   * Reliable, userfriendly RNG APIs (internally and userland)
   * Getter/Setter   * Getter/Setter
Line 16: Line 19:
   * JIT compiler (libjit?)   * JIT compiler (libjit?)
   * C++ Usage   * C++ Usage
 +  * inclusion of the new crypto extension (maybe support other backends than openssl)
 +  * bundle pecl's http (add http2 support too)
  
 +===== OpCache integraton =====
 +
 +Opcache has been bundled with 5.5.0. A real integration did not happen yet while stabilizing it was the highest priority.
 +
 +Integration may mean to merge in the engine, partially or totally.
 +
 +Questions:
 +  * Change opcodes to ease opcodes caching and optimization
 +  * Add necessary changes to support JIT compilation to native, most likely only partial part of the running code (a function/method or a portion of a function method). This part is totally undefined now, see the JIT section
 +
 +===== Unicode support =====
 +
 +Unicode is one of the most requested feature. Our last attempt failed and we should be very careful  about how we design and implement unicode support.
 +
 +UTF-16 has been shown to be a failure (also confirmed by many other projects usage). UTF-8 seems to be the best choice as default (or unique?) encoding for string values, besides binaries string (basically what we have now).
 +
 +Questions:
 +
 +   * Use of a fast and lite UTF-8 procession libraries for all core string operations
 +     * Possible libraries:
 +       * http://www.public-software-group.org/utf8proc
 +       * https://github.com/josephg/librope
 +
 +   * Use of intl for any advanced operations, localization or conversion?
 +   * Support of UTF-8 for the language itself, as PHP currently allows non ascii encoding in scripts, I would recommend to stop supporting it, except in comments.
 +
 +
 +     
ideas/php6.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1