Main > Free Download Search >

Free reliably repeatable pattern software for linux

reliably repeatable pattern

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 591
Array::PatternMatcher 0.04

Array::PatternMatcher 0.04


Array::PatternMatcher is a pattern matching for arrays. more>>
Array::PatternMatcher is a pattern matching for arrays.

SYNOPSIS

This section inlines the entire test suite. Please excuse the ok()s.

use Array::PatternMatcher;

Matching logical variables to input stream

# 1 - simple match of logical variable to input
my $pattern = AGE ;
my $input = 969 ;
my $result = pat_match ($pattern, $input, {} ) ;
ok($result->{AGE}, 969) ;

# 2 - if binding exists, it must equal the input
$input = 12;
my $new_result = pat_match ($pattern, $input, $result) ;
ok(!defined($new_result)) ;

# 3 - bind the pattern logical variables to the input list

$pattern = [qw(X Y)] ;
$input = [ 77, 45 ] ;
my $result = pat_match ($pattern, $input, {} ) ;
ok($result->{X}, 77) ;
Matching segments (quantifying) portions of the input stream
# 1
{
my $pattern = [a, [qw(X *)], d] ;
my $input = [a, b, c, d] ;

my $result = pat_match ($pattern, $input, {} ) ;
ok ("@{$result->{X}}","b c") ;
}

# 2
{

my $pattern = [a, [qw(X *)], [qw(Y *)], d] ;
my $input = [a, b, c, d] ;
my $result = pat_match ($pattern, $input, {} ) ;
ok ("@{$result->{Y}}","b c") ;

}
# 3
{
my $pattern = [a, [qw(X +)], d] ;
my $input = [a, b, c, d] ;
ok ("@{$result->{X}}","b c") ;
}
# 4
{
my $pattern = [ a, [qw(X ?)], c ] ;
my $input = [ a, b, c ] ;
my $result = pat_match ($pattern, $input, {} ) ;
ok ("$result->{X}","b") ;
}
# 5
{
my $pattern = [ qw(X OP Y is Z),
[
sub { "($_->{X} $_->{OP} $_->{Y}) == $_->{Z}" },
IF?
]
] ;
my $input = [qw(3 + 4 is 7) ] ;
my $result = pat_match ($pattern, $input, {} ) ;
ok ($result) ;
}
Single-matching:
Take a single input and a series of patterns and decide which pattern
matches the input:

# 1 - Here all input patterns must match the input

{
my @pattern ;
push @pattern, [ qw(X Y) ] ;
push @pattern, [ qw(22 Z ) ] ;
push @pattern, [ qw(M 33) ] ;

my $input = [ qw(22 33) ] ;

my $meta_pattern = [ AND?, @pattern ] ;

# if no bindings, add a binding between pattern and input
my $result = pat_match ($meta_pattern, $input, {} ) ;
ok ($result->{Z},33) ;
}

# 2 - Here, any one of the patterns must match the input

{
my @pattern ;
push @pattern, [ qw(99 22) ] ;
push @pattern, [ qw(33 22) ] ;
push @pattern, [ qw(44 3) ] ;
push @pattern, [ qw(22 Z) ] ;

my $input = [ qw(22 33) ] ;

my $meta_pattern = [ OR?, @pattern ] ;

# if no bindings, add a binding between pattern and input
my $result = pat_match ($meta_pattern, $input, {} ) ;
ok ($result->{Z},33) ;
}

# 3 - Here, none of the patterns must match the input

{
my @pattern ;
push @pattern, [ qw(99 22) ] ;
push @pattern, [ qw(33 22) ] ;
push @pattern, [ qw(44 3) ] ;
push @pattern, [ qw(22 Z) ] ;

my $input = [ qw(22 33) ] ;

my $meta_pattern = [ NOT?, @pattern ] ;

# if no bindings, add a binding between pattern and input
my $result = pat_match ($meta_pattern, $input, {} ) ;
ok (scalar keys %$result == 0) ;
}

# 4 - here the input must satisfy the predicate
{
sub numberp { $_[0] =~ /d+/ }

my $pattern = [ qw(X age), [qw(IS? N), νmberp] ] ;
my $input = [ qw(Mary age), thirty-four ] ;

# if no bindings, add a binding between pattern and input
my $result = pat_match ($pattern, $input, {} ) ;
ok (!defined($result));
}

# 5 - same thing, but this time a failing result ---
# not undef because it is the return val of numberp
{
sub numberp { $_[0] =~ /d+/ }

my $pattern = [ qw(X age), [qw(IS? N), νmberp] ] ;
my $input = [ qw(Mary age), 34 ] ;
my $result = pat_match ($pattern, $input, {} ) ;

ok ($result->{N},34) ;
}
Segment-matching:
Match a chunk of the input stream using *, +, ?

# 1 - * is greedy in this case, but not with 2 consecutve * patterns
{
my $pattern = [a, [qw(X *)], d] ;
my $input = [a, b, c, d] ;

# if no bindings, add a binding between pattern and input
my $result = pat_match ($pattern, $input, {} ) ;
warn sprintf "X*RETVAL: %s", Data::Dumper::Dumper($result) ;
ok ("@{$result->{X}}","b c") ;
}
# 2 - X* gets nothing, Y* gets all it can:
{

my $pattern = [a, [qw(X *)], [qw(Y *)], d] ;
my $input = [a, b, c, d] ;

# if no bindings, add a binding between pattern and input
my $result = pat_match ($pattern, $input, {} ) ;
warn sprintf "X*Y*RETVAL: %s", Data::Dumper::Dumper($result) ;
ok ("@{$result->{Y}}","b c") ;

}
# 3 - samething , but require at least one match for X
{
my $pattern = [a, [qw(X +)], d] ;
my $input = [a, b, c, d] ;

my $result = pat_match ($pattern, $input, {} ) ;
warn sprintf "RETVAL: @{$result->{X}}" ;
ok ("@{$result->{X}}","b c") ;
}
# 4 - require 0 or 1 match for X
{
my $pattern = [ a, [qw(X ?)], c ] ;
my $input = [ a, b, c ] ;


my $result = pat_match ($pattern, $input, {} ) ;

ok ("$result->{X}","b") ;
}
# 5 - evaluate a sub on the fly after match
{
my $pattern = [ qw(X OP Y is Z),
[
sub { "($_->{X} $_->{OP} $_->{Y}) == $_->{Z}" },
IF?
]
] ;
my $input = [qw(3 + 4 is 7) ] ;

my $result = pat_match ($pattern, $input, {} ) ;

ok ($result) ;
}
# --- 6 same thing, but fail
{
my $pattern = [ qw(X OP Y is Z),
[
sub { "($_->{X} $_->{OP} $_->{Y}) == $_->{Z}" },
IF?
]
] ;
my $input = [qw(3 + 4 is 8) ] ;

my $result = pat_match ($pattern, $input, {} ) ;
warn sprintf "IF_RETVAL2: *%s*", Data::Dumper::Dumper($result);
ok ($result eq ) ;
}

<<less
Download (0.006MB)
Added: 2007-07-12 License: Perl Artistic License Price:
836 downloads
Knitting Pattern Generator 0.3

Knitting Pattern Generator 0.3


Knitting Pattern Generator is a Python script to convert image files (PNG, GIF, BMP, etc.) into knitting patterns. more>>
Knitting Pattern Generator is a Python script to convert image files (PNG, GIF, BMP, etc.) into knitting patterns.

Usage:

python kpg.py myimage.png

<<less
Download (0.008MB)
Added: 2007-04-25 License: GPL (GNU General Public License) Price:
923 downloads
Isotopic Pattern Calculator 1.4

Isotopic Pattern Calculator 1.4


Isotopic Pattern Calculator is a calculates isotopic distributions. more>>
IPC is a program that calculates the isotopic distribution of a given chemical formula. It gives the rel. intensities and the propability of the masses belonging to a molecule ion, fragment or whatever is represented by the given chemical formula.
Furthernmore it can use GNUPlot to visualize the result. Only masses with a rel. Intensity bigger then 0.009% are shown. Additionaly ipc prints the overall number of peaks and the needed computation time.
The program uses an algorithm which computes the exact isotopic distribution. This leads to a large number of peaks which have very low rel. abundances. Even for a small molecule as Acetylsalicylic acid ( C9H8O4, Mr=180.15) there are 1350 peaks but only nine of them have a rel. abundance higher then 0.01%.
Enhancements:
- A complete list of elements and isotopes is now used.
- The list of elements is taken from the NIST.
<<less
Download (0.070MB)
Added: 2005-08-15 License: GPL (GNU General Public License) Price:
1531 downloads
Regexp::Extended 0.01

Regexp::Extended 0.01


Regexp::Extended is a Perl wrapper that extends the re module with new features. more>>
Regexp::Extended is a Perl wrapper that extends the re module with new features.

SYNOPSIS

use Regexp::Extended qw(:all);

# (?...): named parameters
$date =~ /(? d+)-(? d+)-(? d+)/;
if ("2002-10-30" =~ /$date/) {
print "The date is : $::year->[0]-$::month->[0]-$::day->[0]n";
}

# You can also access individial matches in ()* or ()+
"1234" =~ /(? d)+/;
print "Digit 1 is : $::digit->[0]n";
print "Digit 2 is : $::digit->[1]n";
...

# You can also modify individual matches
"1234" =~ /(? d)+/;
$::digit->[0] = 99;
$::digit->[1] = 88;
print "Modified string is: " . rebuild("1234"); # "998834"

# (?*...): upto a certain pattern
$text = "this is some italic text";
$text =~ /((?*)) /; # $1 = "italic"

# (?+...): upto and including a certain pattern
$text = "this is some italic text";
$text =~ /((?+))/; # $1 = "italic"

# You can also use fonctions inside patterns:

sub foo {
return "foo";
}

"foo bar" =~ /((?&foo()))/; # $1 => "foo"

Rexexp::Extended is a simple wrapper arround the perl rexexp syntax. It uses the overload module to parse constant qr// expressions and substitute known operators with an equivalent perl re.

<<less
Download (0.005MB)
Added: 2007-04-03 License: Perl Artistic License Price:
934 downloads
Pattern-lab 0.4.0

Pattern-lab 0.4.0


Pattern-lab is a pattern recognition program. more>>
Pattern-lab is a pattern recognition program. Pattern-lab project is optimized for OCR, but not constrained to it. The method used is mainly pattern matching. Separation of merged patterns is one of the main goals. It is currently under development.
Enhancements:
- This release adds the Standardizing Transformation (ST) embedding IMage Euclidean Distance (IMED) in the preprocessing phase.
- Positive and negative effects of the new feature are explained in the manual.
<<less
Download (2.5MB)
Added: 2007-03-21 License: GPL (GNU General Public License) Price:
950 downloads
libpoet 2007-03-20

libpoet 2007-03-20


libpoet is a library whose goal is to make creation of active objects easy enough for routine use. more>>
libpoet librarys goal is to make creation of active objects easy enough for routine use. Active objects provide concurrency, since each active object executes in its own thread.

Futures are employed to communicate with active objects in a thread-safe manner. To learn more about the active object concept, see the paper "Active Object, An Object Behavioral Pattern for Concurrent Programming." by R. Greg Lavender and Douglas C. Schmidt.

<<less
Download (0.051MB)
Added: 2007-03-23 License: Boost Software License Version 1.0 Price:
946 downloads
Bulli Epu 1.0

Bulli Epu 1.0


Bulli Epu is an interactive program for generating parquet deformations (tilings with progressive changes across the pattern). more>>
Bulli Epu is an interactive program for generating parquet deformations (tilings with progressive changes across the pattern).

There is both a free version and, for a small donation, one with a few extra features. Both are written in Java and run via Java Web-Start.

<<less
Download (MB)
Added: 2006-09-21 License: GPL (GNU General Public License) Price:
1129 downloads
EnRus dictionary tools 1.1c

EnRus dictionary tools 1.1c


EnRus dictionary tools project is a set of Tcl/Tk scripts for manipulating textual (plain or gzipped) dictionary base. more>>
EnRus dictionary tools project is a set of Tcl/Tk scripts for manipulating textual (plain or gzipped) dictionary base.
Its also used for compiling new dictionary bases from plain text files.
It consists of a few TCL console scripts and a Tk interface to them.
It is configurable for different languages.
The dictionary base may contain proper formatting and output procedures.
Main features:
- Find tool - finds records starting with exact pattern.
- Look tool - looks for words, starting with pattern.
- View tool - lets you to view all records that start with words starting with pattern.
- Search tool - searchs in dictionary base for records that answer to request.
- Guess tool - tries to guess words similar to pattern.
- Wander tool - returns random word (records) from file (WANDERWORDS in dictionary base directory or .enruswords in $HOME).
Enhancements:
- Default settings changed for working with Tk 8.3.
<<less
Download (0.067MB)
Added: 2006-10-10 License: GPL (GNU General Public License) Price:
1111 downloads
Inline::Java::PerlInterpreter 0.52

Inline::Java::PerlInterpreter 0.52


Inline::Java::PerlInterpreter is a Perl module used to call Perl directly from Java using Inline::Java. more>>
Inline::Java::PerlInterpreter is a Perl module used to call Perl directly from Java using Inline::Java.

SYNOPSIS

import org.perl.inline.java.* ;

class HelpMePerl {
static private InlineJavaPerlInterpreter pi = null ;

public HelpMePerl() throws InlineJavaException {
}

static private boolean matches(String target, String pattern)
throws InlineJavaPerlException, InlineJavaException {
Boolean b = (Boolean)pi.eval("" + target + " =~ /" + pattern + "/", Boolean.class) ;
return b.booleanValue() ;
}

public static void main(String args[])
throws InlineJavaPerlException, InlineJavaException {
pi = InlineJavaPerlInterpreter.create() ;

String target = "aaabbbccc" ;
String pattern = "ab+" ;
boolean ret = matches(target, pattern) ;

System.out.println(
target + (ret ? " matches " : " doesnt match ") + pattern) ;

pi.destroy() ;
}
}

WARNING: Inline::Java::PerlInterpreter is still experimental.
The org.perl.inline.java.InlineJavaPerlInterpreter Java class allows you to load a Perl interpreter directly from Java. You can then perform regular callbacks to call into Perl.

<<less
Download (0.092MB)
Added: 2007-06-02 License: Perl Artistic License Price:
877 downloads
DLibs 0.4 Alpha

DLibs 0.4 Alpha


DLibs is a PHP framework built keeping in mind the KISS rule. more>>
DLibs project is a PHP framework built keeping in mind the KISS rule.

Main components are ActiveDB, a simple implementation of the ActiveRecord pattern and ActiveForm, a simple form handler.
<<less
Download (0.017MB)
Added: 2007-05-17 License: GPL (GNU General Public License) Price:
891 downloads
JuggleMaster 0.4

JuggleMaster 0.4


JuggleMaster project is a juggling siteswap animator. more>>
JuggleMaster project is a juggling siteswap animator.
JuggleMaster is a cross-platform juggling animator [understanding siteswap].
Anyone who doesnt know what siteswap is can still download it and look at the patterns that come with it, and examine the cool stuff they could do if they did understand it.
Enhancements:
- all: Makefile voodoo
- jmqt: initial add
- jmlib: Added patterns.h and patterns.cpp, which parse pattern files
- data: Added some style data for completeness
- jmdlx: Added printing mpegs. Thanks to luap for the color stuff.
- jmdlx: Added printing images
- jmdlx: HUGE list of fixes and changes from arkanes in #wxwidgets
- jmdlx: Added Visual Studio build stuff, also arkanes
- jmpocket: initial add
- jmlib: minor jmpocket compatability fixes
<<less
Download (0.13MB)
Added: 2006-11-20 License: GPL (GNU General Public License) Price:
1070 downloads
reset-screen 0.5

reset-screen 0.5


reset-screen is a very simple Qt 4 program that displays a simple cross hatch pattern on your monitor. more>>
reset-screen is a very simple Qt 4 program that displays a simple cross hatch pattern on your monitor.

Why is this useful? Well, it makes the auto-sync feature of the flat panel LCD monitors out there both faster and more accurate (well, for mine anyways).

I have to run this every other time I start KDE so I figure others may find it useful as well.

This isnt really useful for laptop users I think, but you may need it. Who knows? :)

This is a very simple program, which a very simple build system.

<<less
Download (0.003MB)
Added: 2006-04-17 License: BSD License Price:
1286 downloads
NarkozaTEAM 0.0.1

NarkozaTEAM 0.0.1


NarkozaTEAM provides a simple project management system using the Model-View-Controller design pattern. more>>
NarkozaTEAM provides a simple project management system using the Model-View-Controller design pattern.

NarkozaTeam is a package of classes that implements a simple project management system using the Model-View-Controller design pattern.

The package uses the WACT framework, but expands it with user authentication modification.

<<less
Download (0.14MB)
Added: 2007-02-06 License: LGPL (GNU Lesser General Public License) Price:
990 downloads
Pipe Viewer 1.0.1

Pipe Viewer 1.0.1


Pipe Viewer is a pipeline data transfer meter. more>>
Pipe Viewer project is a terminal-based tool for monitoring the progress of data through a pipeline.

It can be inserted into any normal pipeline between two processes to give a visual indication of how quickly data is passing through, how long it has taken, how near to completion it is, and an estimate of how long it will be until completion.

pv is now considered to be stable code: it appears to work reliably on systems it has been tested on.
<<less
Download (0.037MB)
Added: 2007-08-07 License: Artistic License Price:
819 downloads
Debyer 0.1

Debyer 0.1


Debyer is a software for calculation of diffraction patterns. more>>
Debyer project takes as an input a file with atom positions and can output x-ray and neutron diffraction pattern, total scattering structure function, pair distribution function (PDF) and related functions (RDF, reduced PDF).

It can be run on any modern platform, from typical Linux or MS Windows workstation to large computer clusters. The parallel version uses MPI library.

Debyer is distributed under the terms of GNU General Public License.
<<less
Download (0.14MB)
Added: 2006-09-27 License: GPL (GNU General Public License) Price:
1123 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5