pike.git
/
CHANGES
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/CHANGES:16:
been deployed during the last year. Manual dumps are published on http://pike.ida.liu.se/docs/reference/. o pike -x When starting pike with the -x parameter, the pike process will run the named script in Tools.Standalone, giving the rest of the arguments as command-line switches. This is a convenient way of running rsif (replace string in file) and pv (the image viewer you may be familiar with from Tools.PV).
+
o pike -e scope
+
When running command line one liners with pike -e you can now
+
access the numer of arguments, the actual arguments and the
+
environment variables through the variables argc, argv and env.
+
o unbug Embryo of a Pike debugger. Not stable nor finished. o Unicode 3.2.0 All charts have been updated to Unicode 3.2.0. This applies both to the Unicode module as well as to Pike-global functionality such as upper_case/lower_case. unicode_to_string() also has support for surrogate and byteorder mark handling. o Extended random()
pike.git/CHANGES:45:
Both of these methods now handle both looking for strings and integers (the unicode number for a single character). Examples: search("hi, ho!", '!'), has_value("Nope.", ' ') o Expanded Charset module The character set module now has support for the character sets Shift_JS, UTF-7.5, EUC, Big5, CP950, UTF-16, UTF-16BE, UTF-16LE. It is now also easier to get the right charset codec since the names are normalized internally.
+
o sprintf("%O", foo) is more descriptive
+
If foo is a program or an object then Pike will try to find the
+
resolved name instead of returning just "program" or "object".
+
However, if an object contains an _sprintf function it will still
+
be called in this case.
-
+
o basetype(foo)
+
Returns a string with the basic type of foo as opposed to
+
typeof(foo) that returns the actual type. Also available as
+
sprintf("%t", foo).
+
+
o getenv()/putenv()
+
The environment variable functions getenv and putenv is now is now
+
both case insensitive on Microsoft Windows systems. This should
+
make your programs more portable.
+
+
Language additions: ------------------- o foreach(X; Y; Z) The foreach statement has been extended to allow iterations over mappings, multisets and any object that implements the iterator interface (see below). To make it possible to use this conveniently, a new syntax has been added to get both the index and the value in each iteration:
pike.git/CHANGES:225:
o UNDEFINED To generate a 0 (zero) with a zero_type(var) == 1, you previously had to use constructs like ([])[0]. This is now available as the globally available symbol UNDEFINED. o _m_delete A class can now define a function mixed _m_delete(mixed index) to make the objects work like mappings with m_delete(). (This feature has been added to later 7.2 releases too.)
-
o sprintf("%O", foo) is more descriptive
-
If foo is a program or an object then Pike will try to find the
-
resolved name instead of returning just "program" or "object".
-
However, if an object contains an _sprintf function it will still
-
be called in this case.
-
-
o basetype(foo)
-
Returns a string with the basic type of foo as opposed to
-
typeof(foo) that returns the actual type. Also available as
-
sprintf("%t", foo).
-
+
o Constant objects An object can now be constant, allowing for better
-
performace. For example used for Gmp.Bignum, Math.Matrix and
-
Image.Color.
+
performace
and better dumping
. For example used for Gmp.Bignum,
+
Math.Matrix and Image.Color.
New modules / classes / methods / functionality added: ------------------------------------------------------ o ADT.History ADT implementation of a "leaking stack". Hilfe example: > object h=ADT.History(3); > for(int i=17; i<22; i++) h->push(i); Ok.
pike.git/CHANGES:300:
o Debug.Tracer o Debug.Subject Helper classes that helps in understanding what Pike is doing. o DVB Access to DVB (digital sat) resources. Controls tuner, MP2 audio and video decoders. Allows extract multiple channels at once. Note: Only old 0.9.4 DVB API is supported.
+
o Gz.File
+
Pike can now compress and decompress the Gzip format. This is
+
still a bit experimental but the basic functions should work
+
just fine.
+
+
o HTTP.Server
+
A simple HTTP Server.
+
+
o Image.Dims
+
Can extract the dimensions of an image with a minimal amount of
+
data loading. Currently handles JPEG, GIF and PNG images. Hilfe
+
example:
+
> Image.Dims.get(Stdio.File("test.gif"));
+
(1) Result: ({ /* 2 elements */
+
1412,
+
1120
+
})
+
+
o Image.DWG
+
Decodes the thumbnail images embedded in AutoCAD drawings.
+
+
o Image.Fonts
+
High level API for font handling. Should be used instead of
+
accessing the FreeType, TTF and Image.Font modules directly.
+
+
o Image.Image
+
Added two new methods: blur() and grey_blur().
+
+
o Image.JPEG
+
Support for lossless transforms and handling of metadata.
+
+
o Image.PVR
+
VQ compression/decompression added.
+
+
o Image.SVG
+
Support for Structured Vector Graphics through the Gnome SVG
+
library. Requires Gnome 2.
+
o Locale.Language FIXME: nilsson? o Math.Matrix Methods sum(), max(), min(), convolve() and dot_product() added. o Math.Transforms Glue for supporting FFT and iFFT via libfftw and librfftw. o Math
pike.git/CHANGES:321:
o MIME.Message Guess mode added. *FIXME: expand on this* o Parser.Python Splits Python source code into text tokens. o Parser.RCS Extracts data from RCS or CVS repositories.
-
o
HTTP
.
Server
-
A
simple HTTP Server.
+
o
Parser
.
XML.NSTree
+
FIXME:
Nilsson?
o Protocols.X.KeySyms
-
+
o Standards.CIFF
-
+
o Standards.FIPS10_4 FIXME: remove? o Standards.ID3 ID3 tags decoder/encoder. Supports versions: 1.0, 1.1, 2.2-2.4. Frequently used in MP3 files for encapsulating metadata. o Standards.RDF FIXME: nilsson?
pike.git/CHANGES:351:
o System.Memory Handles read/write from mmap'ed or allocated memory. system.normalize_path system.gettimeofday system.get_netinfo_property (Max OS X) system.usleep/nanosleep FIXME: per?
+
o Stdio
+
Moved get_all_active_fd() from spider to Stdio.
+
Added methods to Stdio.File: sync(), line_iterator()
+
+
o Stdio.expand_symlinks(string path)
+
Expands all symlinks along a path (returns 0 for broken links).
+
(Only available on systems with readlink.)
+
o Stdio.FakeFile Wraps a string and exports a Stdio.File interface. o Stdio.File->grantpt() can now allocate a VTY on systems with /dev/ptmx support. Minimal example: fd = Stdio.File("/dev/ptmx", "rw" ); Stdio.File fd2 = Stdio.File( fd->grantpt(), "rw" ); Process.create_process( ({ "/bin/bash" }), ([ "stdin":fd2, "stdout":fd2, "stderr":fd2, "setsid":fd2, ]) );
-
o Stdio
-
Moved get_all_active_fd() from spider to Stdio.
-
Added methods to Stdio.File: sync(), line_iterator()
-
-
o Gz.File
-
Pike can now compress and decompress the Gzip format. This is
-
still a bit experimental but the basic functions should work
-
just fine.
-
-
o Stdio.expand_symlinks(string path)
-
Expands all symlinks along a path (returns 0 for broken links).
-
(Only available on systems with readlink.)
-
+
o Tools.PV Convenience tool that sets up a canvas with GTK, presents a picture on it and delivers a number of image inspection and manipulation options. This is a great tool for image work in Hilfe. > object i=Image.Image(32,32)->random(); > Tools.PV(i); The Pike Viewer tool is also accessible via "pike -x pv".
-
o Image.Dims
-
Can extract the dimensions of an image with a minimal amount of
-
data loading. Currently handles JPEG, GIF and PNG images. Hilfe
-
example:
-
> Image.Dims.get(Stdio.File("test.gif"));
-
(1) Result: ({ /* 2 elements */
-
1412,
-
1120
-
})
-
-
o Image.Fonts
-
High level API for font handling. Should be used instead of
-
accessing the FreeType, TTF and Image.Font modules directly.
-
-
o Image.DWG
-
Decodes AutoCAD thumbnail images.
-
-
o Image.JPEG
-
Support for lossless transforms and handling of metadata.
-
-
o Image.SVG
-
Support for Structured Vector Graphics through the Gnome SVG
-
library. Requires Gnome 2.
-
-
o Image.Image
-
Added two new methods: blur() and grey_blur().
-
-
o Image.PVR
-
VQ compression/decompression added.
-
+
o Shuffler o Gmp.mpq and Gmp.mpf Multi precision fractions. o String.SplitIterator FIXME: grubba o String.Replace, String.SingleReplace FIXME o SDL Wrapper for a subset of Simple DirectMedia Layer functionality. Useful for writing games, movie players and other graphically intensive applications.
-
o XML.NSTree
-
FIXME: Nilsson?
-
+
o Oracle CLOB and BLOB support. o Return value from catch blocks. The return value from catch blocks that exit normally has been changed from a normal zero (i.e. zero_type 0) to UNDEFINED (i.e. zero_type 1). Optimizations:
pike.git/CHANGES:677:
o It is possible to inherit pike programs from C programs. o Separate weak flags for indices and values in mappings o Added low lowel glue for the Ffmpeg library. o Calendar.verify *FIXME: remove?* Nilsson does lib: master.pike
-
- Better %O print outs for objects and programs. /* DONE */
-
- pike -x /* DONE */
+
- add_predefine/remove_predefine
-
- argc, argv and env are available when using pike -e
-
- getenv/putenv is now case insensitive on NT.
+
- Improved handling of module cross dependencies. Array.common_prefix Array.count Array.greedy_diff Array.oid_sort_func Array.arrayify Array.uniq2 Array.sum