S-expressions. In addition to that it contains an extremely useful
preprocessing module for Camlp4, which can be used to automatically generate
code from type definitions for efficiently converting OCaml-values to
S-expressions and vice versa. In combination with the parsing and
pretty-printing functionality this frees the user from having to write his own
I/O-routines for datastructures he defines. Possible errors during automatic
conversions from S-expressions to OCaml-values are reported in a very
human-readable way. Another module in the library allows you to extract and
replace sub-expressions in S-expressions.
Author: Markus Mottl <mmottl@janestcapital.com>
WWW: http://www.janestcapital.com/ocaml/index.html
PR: ports/101221
Submitted by: Stanislav Sedov <ssedov at mbsd.msk.ru>
does. See sample.ml for examples.
Author: Gerd Stolpmann
WWW: http://www.ocaml-programming.de/packages/
PR: ports/101219
Submitted by: Stanislav Sedov <ssedov at mbsd.msk.ru>
This is mostly to fill in some gaps in the standard and unix
libraries, either for completeness or because they're things I find
myself needing a lot of the time, and a few modules that aren't worthy
of being their own releases. Enjoy. Most of this used to be part of an
old library (stew) that I broke up into a couple of smaller ones. This
one /was/ extlib, now annexlib. Its companion is mathlib.
See supplied documentation for additional info.
Author: Shawn Wagner <shawnw@speakeasy.org>
WWW: http://raevnos.pennmush.org/code/extlib/
PR: ports/101207
Submitted by: Stanislav Sedov <ssedov at mbsd.msk.ru>
- Use new ocaml framework (depepends on ports/101100)
- Install info as well
- Install docs with correct permissions
- Pass maintainership to submitter
PR: ports/101173
Submitted by: Stanislav Sedov
interface based on the following schema:
Caml/C interface JNI (Java Native Interface)
Caml <------------------> C <-----------------------------> Java
Currently, CamlJava provides a low-level, weakly-typed OCaml interface
very similar to the JNI. Java object references are mapped to an
abstract type, and various JNI-like operations are provided to allow
Java method invocation, field access, and more. A basic callback
facility (allowing Java code to invoke methods on Caml objects) is
also provided, although some stub Java code must be written by hand.
In the future, a higher-level, strongly-typed interface will be
provided, whereas Java classes are mapped directly to Caml classes.
This raises fairly delicate type mapping issues, though, so don't hold
your breath.
WWW: http://caml.inria.fr/
PR: ports/101147
Submitted by: Stanislav Sedov <ssedov at mbsd.msk.ru>
This commit should largele be a NOOP as it only adds support
for DESTDIR undefined. This does allow us to start testing
ports with DESTDIR set, but this is as of yet not supported.
Although this has been extensively tested on pointyhat, this
is a very intrusive change and some cases may have been
overlooked. Please contact Gabor and me if you find any.
PR: 100555
Submitted by: gabor
Sponsored by: Google Summer of Code 2006
A module that implements the Discordian calendar made popular(?) in the
"Illuminatus!" trilogy by Robert Shea and Robert Anton Wilson and by the
Church of the SubGenius.
Very useful during codefreeze to tell the testing-team why the build is
failing or why there are regressions. :-)
- introduce LIB_VRS variable at Makefile (to be used at LIB_DEPENDS and
PLIST_SUB);
- create some variables at PLIST_SUB and change plist accordingly;
- make "portlint -a" happy (delete quotes from a BROKEN message);
- change my email to the FreeBSD.org one.
Approved by: netchild (mentor, implicit)
description:
TRE is a lightweight, robust, and efficient POSIX compliant regexp
matching library supporting:
- approximate (fuzzy) matching,
- strict standards conformance,
- predicable and modest memory consumption,
- wide-character and multibyte character support,
- binary pattern and data support,
- thread-safe implementation.
At the core of TRE is a new algorithm for regular expression matching
with submatch addressing. The algorithm uses linear worst-case time
in the length of the text being searched, and quadratic worst-case
time in the length of the used regular expression.
implements a genetic algorithm to find the "best" options for
compiling programs with the GNU Compiler Collection (GCC) C and C++
compilers. "Best", in this context, is defined as those options
that produce the fastest executable program from a given source
code. Acovea is a C++ framework that can be extended to test other
programming languages and non-GCC compilers.
WWW: http://www.coyotegulch.com/products/acovea/index.html
PR: ports/101211
Submitted by: trasz <trasz at pin.if.uz.zgora.pl>
The Readonly module (q.v.) is an effective way to create non-modifiable
variables. However, it's relatively slow.
The reason it's slow is that is implements the read-only-ness of variables
via tied objects. This mechanism is inherently slow. Perl simply has to do
a lot of work under the hood to make tied variables work.
This module corrects the speed problem, at least with respect to scalar
variables. When Readonly::XS is installed, Readonly uses it to access the
internals of scalar variables. Instead of creating a scalar variable object
and tying it, Readonly simply flips the SvREADONLY bit in the scalar's
FLAGS structure.
Readonly arrays and hashes are not sped up by this, since the SvREADONLY
flag only works for scalars. Arrays and hashes always use the tie interface.
Why implement this as a separate module? Because not everyone can use XS.
Not everyone has a C compiler. Also, installations with a statically-linked
perl may not want to recompile their perl binary just for this module.
Rather than render Readonly.pm useless for these people, the XS portion was
put into a separate module.
WWW: http://search.cpan.org/dist/Readonly-XS/
Justification: socialtext dependency
in many of my programs, but which aren't "big enough" to warrant
an individual library.
Key features of Coyotl include:
-- A polymorphic collection of the best psuedorandom number generators,
including the Mersenne Twister and Marsaglia's favorites.
-- Utilities for floating-point numbers, including additional functions
for trigonometry, least common multiple, greatest common denominator,
rounding, and other purposes.
-- A simple cross-platform command-line parser.
-- A framework for generating random rectangular mazes.
-- A template for fixed-point math based on different integer sizes
and decimal point locations.
-- Templatized sorting utilities (designed before Std. C++'s <algorithms>,
but still useful)
-- Validation tools for "Design by Contract" programming.
WWW: http://www.coyotegulch.com/products/libcoyotl/index.html
PR: ports/101209
Submitted by: trasz <trasz at pin.if.uz.zgora.pl>
Why should one use a module to get the PID and the PPID of a process
where there are the $$ variable and the getppid() builtin? (Not
mentioning the equivalent POSIX::getpid() and POSIX::getppid()
functions.)
In fact, this is useful on Linux, with multithreaded programs. Linux'
C library, using the linux thread model, returns different values of
the PID and the PPID from different threads. (Other thread models such
as NPTL don't have the same behaviour). This module forces perl to
call the underlying C functions getpid() and getppid().
WWW: http://search.cpan.org/dist/Linux-Pid/
that strikes only in multithreaded programs on Unix platforms, if:
* Multiple threads construct regexes concurrently, or
* Multiple threads perform search and replace operations concurrently.
- Bump PORTREVISION (threads are enabled in the port's default configuration)
Submitted by: John Maddock <john@johnmaddock.co.uk> via boost-announce
Found by: Aleksey Sanin
See also: http://lists.boost.org/boost-announce/2006/08/0097.php
Class::Field exports two subroutines, field and const. These
functions are used to declare fields and constants in your class.
Class::Field generates custom code for each accessor that is
optimized for speed.
WWW: http://search.cpan.org/dist/Class-Field/
PiKdev is a simple graphic IDE for the development of PIC-based applications.
It currently supports assembly language. C language is also supported for PIC
18 devices. PiKdev is developed in C++ under Linux, FreeBSD and is based on
the KDE environment.
WWW: http://pikdev.free.fr/
Approved by: garga (mentor)
PEAR install.
* The format for the page is similar to that for phpinfo() except using PEAR
colors.
* Has complete PEAR Credits (based on the packages you have installed).
* Will show if there is a newer version than the one presently installed
(and what its state is)
* Each package has an anchor in the form pkg_PackageName - where PackageName
is a case-sensitive PEAR package name
With a few parameters, the entire package.xml is automatically updated with a
listing of all files in a package.
WWW: http://pear.php.net/package/PEAR_Info/
PR: ports/101102
Submitted by: chinsan <chinsan.tw at gmail.com>
FT232BM and FT245BM type chips including the popular bitbang mode.
Note: When you get a -5 error "can't claim usb device" during
ftdi_usb_open(), make sure the kernel ftdi_sio driver is unloaded.
WWW: http://www.intra2net.com/de/produkte/opensource/ftdi/
PR: ports/100982
Submitted by: Olexandr Davydenko <o.davydenko at gmail.com>
some fpc ports.
- Added PORTREVISION for each port
- Fixed pkg-plist on fpc-gtk2 and fpc-gtk ports
- Fixed the gtk, glib and gdk libraries linking for fpc-gtk
- Removed obsolete patches from fpc-gtk. Now it's using ${REINPLACE_CMD}
- Removed post-extract from fpc-fcl. I just added it to makefiles.units file
Approved by: garga (mentor)
- give the user an idea of the components of otrs that need manual
configuration after the port/package has been installed.
PR: ports/100702
Submitted by: Nick Barkas (maintainer)