op
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 85
op 1.32
op tool provides a flexible means for system administrators to grant access to certain root operations. more>>
op tool provides a flexible means for system administrators to grant access to certain root operations without having to give them full superuser privileges.
Different sets of users may access different operations, and the security-related aspects of each operation can be carefully controlled.
It was originally written around 1990 by Tom Christiansen and Dave Koblas. Further updates and porting were performed by Howard Owen. The last version of this vintage is available here. The current version is maintained by Alec Thomas.
I first came into contact with op whilst working at Access Gaming Systems, where op was used extensively to control developer and administrator access to resources.
Enhancements:
- rpl_malloc/rpl_realloc was added so that systems with dodgy implementations will link.
- This fixes compilation on HP-UX.
- If a help parameter does not exist, the actual command to be run for the help is used.
- Detection for openlog() returning void was added.
<<lessDifferent sets of users may access different operations, and the security-related aspects of each operation can be carefully controlled.
It was originally written around 1990 by Tom Christiansen and Dave Koblas. Further updates and porting were performed by Howard Owen. The last version of this vintage is available here. The current version is maintained by Alec Thomas.
I first came into contact with op whilst working at Access Gaming Systems, where op was used extensively to control developer and administrator access to resources.
Enhancements:
- rpl_malloc/rpl_realloc was added so that systems with dodgy implementations will link.
- This fixes compilation on HP-UX.
- If a help parameter does not exist, the actual command to be run for the help is used.
- Detection for openlog() returning void was added.
Download (0.14MB)
Added: 2005-12-08 License: BSD License Price:
1415 downloads
PDL::Ops 2.4.3
PDL::Ops Perl module contains fundamental mathematical operators. more>>
PDL::Ops Perl module contains fundamental mathematical operators.
This module provides the functions used by PDL to overload the basic mathematical operators (+ - / * etc.) and functions (sin sqrt etc.)
It also includes the function log10, which should be a perl function so that we can overload it!
Matrix multiplication (the operator x) is handled by the module PDL::Primitive.
$doc
$c = $name $a, $b, 0; # explicit call with trailing 0
$c = $a $op $b; # overloaded call
$a->inplace->$name($b,0); # modify $a inplace
It can be made to work inplace with the $a->inplace syntax. This function is used to overload the binary $optxt operator. Note that when calling this function explicitly you need to supply a third argument that should generally be zero (see first example). This restriction is expected to go away in future releases. EOD } # sub: biop()
#simple binary functions sub bifunc { my ($name,$func,$swap,$doc,%extra) = @_; my $funcov = ref $func eq ARRAY ? $func->[1] : $func; my $isop=0; if ($funcov =~ s/^op//) { $isop = 1; } my $funcovp = protect_chars $funcov; $func = $func->[0] if ref $func eq ARRAY; if ($swap) { $extra{HdrCode} .= 1, NoBadifNaN => 1, Pars => a(); b(); [o]c();, OtherPars => int swap, Inplace => [ a ], # quick and dirty solution to get ->inplace do its job Code => "$c() = $func($a(),$b());", BadCode => if ( $ISBAD(a()) || $ISBAD(b()) ) $SETBAD(c()); else . "n $c() = $func($a(),$b());n", CopyBadStatusCode => if ( $BADFLAGCACHE() ) { if ( a == c && $ISPDLSTATEGOOD(a) ) { PDL->propogate_badflag( c, 1 ); /* have inplace op AND badflag has changed */ } $SETPDLSTATEBAD(c); }, %extra, Doc => $name($b,0); # explicit function call
$ovcall
$a->inplace->$name($b,0); # modify $a inplace
It can be made to work inplace with the $a->inplace syntax. This function is used to overload the binary $funcovp function. Note that when calling this function explicitly you need to supply a third argument that should generally be zero (see first example). This restriction is expected to go away in future releases. EOD } # sub: bifunc()
# simple unary functions and operators sub ufunc { my ($name,$func,$doc,%extra) = @_; my $funcov = ref $func eq ARRAY ? $func->[1] : $func; my $funcovp = protect_chars $funcov; $func = $func->[0] if ref $func eq ARRAY;
# handle exceptions
my $badcode = $ISBAD(a());
if ( exists $extra{Exception} ) {
# $badcode .= " || $extra{Exception}";
# print "Warning: ignored exception for $namen";
delete $exists{Exception};
}
# do not have to worry about propogation of the badflag when
# inplace since only input piddle is a, hence its badflag
# wont change
# UNLESS an exception occurs...
pp_def($name,
Pars => a(); [o]b(),
HandleBad => 1,
NoBadifNaN => 1,
Inplace => 1,
Code =>
"$b() = $func($a());",
BadCode =>
if ( . $badcode . )
$SETBAD(b());
else . "n $b() = $func($a());n",
%extra,
Doc => inplace->$name; # modify $a inplace
It can be made to work inplace with the $a->inplace syntax. This function is used to overload the unary $funcovp operator/function. EOD } # sub: ufunc()
######################################################################
# we trap some illegal operations here -- see the Exception option # note, for the ufunc()s, the checks do not work too well # for unsigned integer types (ie < 0) # # XXX needs thinking about # - have to integrate into Code section as well (so # 12/pdl(2,4,0,3) is trapped and flagged bad) # --> complicated # - perhaps could use type %{ %} ? # # ==> currently have commented out the exception code, since # want to see if can use NaN/Inf for bad values # (would solve many problems for F,D types) # # there is an issue over how we handle comparison operators # - see Primitive/primitive.pd/zcover() for more discussion #
## arithmetic ops # no swap biop(plus,+,0,add two piddles); biop(mult,*,0,multiply two piddles);
# all those need swapping biop(minus,-,1,subtract two piddles); biop(divide,/,1,divide two piddles, Exception => $b() == 0 );
## note: divide should perhaps trap division by zero as well
## comparison ops # need swapping biop(gt,>,1,the binary > (greater than) operation); biop(lt,,1,leftshift a$ by $b,GenericTypes => $T); biop(or2,|,0,binary or of two piddles,GenericTypes => $T); biop(and2,&,0,binary and of two piddles,GenericTypes => $T); biop(xor,^,0,binary exclusive or of two piddles,GenericTypes => $T);
# really an ufunc ufunc(bitnot,~,unary bit negation,GenericTypes => $T);
# some standard binary functions bifunc(power,[pow,op**],1,raise piddle $a to the power b,GenericTypes => [D]); bifunc(atan2,atan2,1,elementwise atan2 of two piddles,GenericTypes => [D]); bifunc(modulo,[MOD,op%],1,elementwise modulo operation); bifunc(spaceship,[SPACE,op],1,elementwise ~ operation);
# some standard unary functions ufunc(sqrt,sqrt,elementwise square root, Exception => $a() < 0 ); ufunc(abs,[ABS,abs],elementwise absolute value,GenericTypes => [D,F,S,L]); ufunc(sin,sin,the sin function); ufunc(cos,cos,the cos function); ufunc(not,!,the elementwise not operation); ufunc(exp,exp,the exponential function,GenericTypes => [D]); ufunc(log,log,the natural logarithm,GenericTypes => [D], Exception => $a() [D], Exception => $a() sub PDL::log10 { my $x = shift; if ( ! UNIVERSAL::isa($x,"PDL") ) { return log($x) / log(10); } my $y; if ( $x->is_inplace ) { $x->set_inplace(0); $y = $x; } elsif( ref($x) eq "PDL"){ #PDL Objects, use nullcreate: $y = PDL->nullcreate($x); }else{ #PDL-Derived Object, use copy: (Consistent with # Auto-creation docs in Objects.pod) $y = $x->copy; } &PDL::_log10_int( $x, $y ); return $y; }; );
# note: the extra code that adding HandleBad => 1 creates is # unneeded here. Things could be made clever enough to work this out, # but its very low priority. # It does add doc information though, and lets people know its been # looked at for bad value support # DJB adds: not completely sure about this now that I have added code # to avoid a valgrind-reported error (see the CacheBadFlagInit rule # in PP.pm) # # Cant this be handled in Core.pm when .= is overloaded ? # pp_def( assgn, # HandleBad => 1, Pars => a(); [o]b();, Code => $b() = $a();, # BadCode => # if ( $ISBAD(a()) ) { $SETBAD(b()); } else { $b() = $a(); }, Doc => Plain numerical assignment. This is used to implement the ".=" operator, ); # pp_def assgn
#pp_export_nothing();
pp_done();
<<lessThis module provides the functions used by PDL to overload the basic mathematical operators (+ - / * etc.) and functions (sin sqrt etc.)
It also includes the function log10, which should be a perl function so that we can overload it!
Matrix multiplication (the operator x) is handled by the module PDL::Primitive.
$doc
$c = $name $a, $b, 0; # explicit call with trailing 0
$c = $a $op $b; # overloaded call
$a->inplace->$name($b,0); # modify $a inplace
It can be made to work inplace with the $a->inplace syntax. This function is used to overload the binary $optxt operator. Note that when calling this function explicitly you need to supply a third argument that should generally be zero (see first example). This restriction is expected to go away in future releases. EOD } # sub: biop()
#simple binary functions sub bifunc { my ($name,$func,$swap,$doc,%extra) = @_; my $funcov = ref $func eq ARRAY ? $func->[1] : $func; my $isop=0; if ($funcov =~ s/^op//) { $isop = 1; } my $funcovp = protect_chars $funcov; $func = $func->[0] if ref $func eq ARRAY; if ($swap) { $extra{HdrCode} .= 1, NoBadifNaN => 1, Pars => a(); b(); [o]c();, OtherPars => int swap, Inplace => [ a ], # quick and dirty solution to get ->inplace do its job Code => "$c() = $func($a(),$b());", BadCode => if ( $ISBAD(a()) || $ISBAD(b()) ) $SETBAD(c()); else . "n $c() = $func($a(),$b());n", CopyBadStatusCode => if ( $BADFLAGCACHE() ) { if ( a == c && $ISPDLSTATEGOOD(a) ) { PDL->propogate_badflag( c, 1 ); /* have inplace op AND badflag has changed */ } $SETPDLSTATEBAD(c); }, %extra, Doc => $name($b,0); # explicit function call
$ovcall
$a->inplace->$name($b,0); # modify $a inplace
It can be made to work inplace with the $a->inplace syntax. This function is used to overload the binary $funcovp function. Note that when calling this function explicitly you need to supply a third argument that should generally be zero (see first example). This restriction is expected to go away in future releases. EOD } # sub: bifunc()
# simple unary functions and operators sub ufunc { my ($name,$func,$doc,%extra) = @_; my $funcov = ref $func eq ARRAY ? $func->[1] : $func; my $funcovp = protect_chars $funcov; $func = $func->[0] if ref $func eq ARRAY;
# handle exceptions
my $badcode = $ISBAD(a());
if ( exists $extra{Exception} ) {
# $badcode .= " || $extra{Exception}";
# print "Warning: ignored exception for $namen";
delete $exists{Exception};
}
# do not have to worry about propogation of the badflag when
# inplace since only input piddle is a, hence its badflag
# wont change
# UNLESS an exception occurs...
pp_def($name,
Pars => a(); [o]b(),
HandleBad => 1,
NoBadifNaN => 1,
Inplace => 1,
Code =>
"$b() = $func($a());",
BadCode =>
if ( . $badcode . )
$SETBAD(b());
else . "n $b() = $func($a());n",
%extra,
Doc => inplace->$name; # modify $a inplace
It can be made to work inplace with the $a->inplace syntax. This function is used to overload the unary $funcovp operator/function. EOD } # sub: ufunc()
######################################################################
# we trap some illegal operations here -- see the Exception option # note, for the ufunc()s, the checks do not work too well # for unsigned integer types (ie < 0) # # XXX needs thinking about # - have to integrate into Code section as well (so # 12/pdl(2,4,0,3) is trapped and flagged bad) # --> complicated # - perhaps could use type %{ %} ? # # ==> currently have commented out the exception code, since # want to see if can use NaN/Inf for bad values # (would solve many problems for F,D types) # # there is an issue over how we handle comparison operators # - see Primitive/primitive.pd/zcover() for more discussion #
## arithmetic ops # no swap biop(plus,+,0,add two piddles); biop(mult,*,0,multiply two piddles);
# all those need swapping biop(minus,-,1,subtract two piddles); biop(divide,/,1,divide two piddles, Exception => $b() == 0 );
## note: divide should perhaps trap division by zero as well
## comparison ops # need swapping biop(gt,>,1,the binary > (greater than) operation); biop(lt,,1,leftshift a$ by $b,GenericTypes => $T); biop(or2,|,0,binary or of two piddles,GenericTypes => $T); biop(and2,&,0,binary and of two piddles,GenericTypes => $T); biop(xor,^,0,binary exclusive or of two piddles,GenericTypes => $T);
# really an ufunc ufunc(bitnot,~,unary bit negation,GenericTypes => $T);
# some standard binary functions bifunc(power,[pow,op**],1,raise piddle $a to the power b,GenericTypes => [D]); bifunc(atan2,atan2,1,elementwise atan2 of two piddles,GenericTypes => [D]); bifunc(modulo,[MOD,op%],1,elementwise modulo operation); bifunc(spaceship,[SPACE,op],1,elementwise ~ operation);
# some standard unary functions ufunc(sqrt,sqrt,elementwise square root, Exception => $a() < 0 ); ufunc(abs,[ABS,abs],elementwise absolute value,GenericTypes => [D,F,S,L]); ufunc(sin,sin,the sin function); ufunc(cos,cos,the cos function); ufunc(not,!,the elementwise not operation); ufunc(exp,exp,the exponential function,GenericTypes => [D]); ufunc(log,log,the natural logarithm,GenericTypes => [D], Exception => $a() [D], Exception => $a() sub PDL::log10 { my $x = shift; if ( ! UNIVERSAL::isa($x,"PDL") ) { return log($x) / log(10); } my $y; if ( $x->is_inplace ) { $x->set_inplace(0); $y = $x; } elsif( ref($x) eq "PDL"){ #PDL Objects, use nullcreate: $y = PDL->nullcreate($x); }else{ #PDL-Derived Object, use copy: (Consistent with # Auto-creation docs in Objects.pod) $y = $x->copy; } &PDL::_log10_int( $x, $y ); return $y; }; );
# note: the extra code that adding HandleBad => 1 creates is # unneeded here. Things could be made clever enough to work this out, # but its very low priority. # It does add doc information though, and lets people know its been # looked at for bad value support # DJB adds: not completely sure about this now that I have added code # to avoid a valgrind-reported error (see the CacheBadFlagInit rule # in PP.pm) # # Cant this be handled in Core.pm when .= is overloaded ? # pp_def( assgn, # HandleBad => 1, Pars => a(); [o]b();, Code => $b() = $a();, # BadCode => # if ( $ISBAD(a()) ) { $SETBAD(b()); } else { $b() = $a(); }, Doc => Plain numerical assignment. This is used to implement the ".=" operator, ); # pp_def assgn
#pp_export_nothing();
pp_done();
Download (2.1MB)
Added: 2007-06-29 License: Perl Artistic License Price:
847 downloads
Eggdrop 1.6.18
Eggdrop is the worlds most popular open source Internet Relay Chat (IRC) bot. more>>
Eggdrop is the worlds most popular open source Internet Relay Chat (IRC) bot. Originally created by Robey Pointer in December 1993 for use on a channel called #gayteen, it has spawned an almost cult like following of users. It is a feature rich program designed to be easily used and expanded upon (using Tcl scripting) by both novice and advanced IRC users on a variety of hardware and software platforms.
Eggdrop is freely available and can be freely distributed under the terms of GNU General Public License.
An IRC bot is a program that sits on an IRC channel and preforms automated tasks while looking just like a normal user on the channel. Some of these functions include protecting the channel from abuse, allowing privileged users to gain op or voice status, logging channel events, providing information, hosting games, etc.
One of the features that makes Eggdrop stand out from other bots is module and Tcl scripting support. With scripts and modules, you can make the bot preform almost any task you want. They can do anything from preventing floods to greeting users and banning advertisers from channels.
You can also link multiple Eggdrop bots together to form a botnet. This can allow bots to op each other securely, control floods efficiently, and even link channels across multiple IRC networks. It also allows the Eggdrops share user lists, ban lists, exempt/invite lists, and ignore lists with other bots if userfile sharing is enabled. This allows users to have the same access on every bot on your botnet. It also allows the bots to distribute tasks such as opping and banning users. See doc/BOTNET for information on setting up a botnet.
Eggdrop is always being improved and adjusted because there are bugs to be fixed and features to be added (if the users demand them, and they make actually sense). In fact, it existed for several years as v0.7 - v0.9 before finally going 1.0. This version of Eggdrop is part of the 1.6 tree. A valiant effort has been made to chase down and destroy bugs.
This README file contains information about how to get Eggdrop, command line options for Eggdrop, what you may need to do when upgrading from older versions, a list of frequently asked questions, how to set up a crontab, some boring legal stuff, info about the mailing list (a great place to ask questions, and a good place to report bugs, too), some basics about CVS usage, and some channels where you might get help with Eggdrop.
<<lessEggdrop is freely available and can be freely distributed under the terms of GNU General Public License.
An IRC bot is a program that sits on an IRC channel and preforms automated tasks while looking just like a normal user on the channel. Some of these functions include protecting the channel from abuse, allowing privileged users to gain op or voice status, logging channel events, providing information, hosting games, etc.
One of the features that makes Eggdrop stand out from other bots is module and Tcl scripting support. With scripts and modules, you can make the bot preform almost any task you want. They can do anything from preventing floods to greeting users and banning advertisers from channels.
You can also link multiple Eggdrop bots together to form a botnet. This can allow bots to op each other securely, control floods efficiently, and even link channels across multiple IRC networks. It also allows the Eggdrops share user lists, ban lists, exempt/invite lists, and ignore lists with other bots if userfile sharing is enabled. This allows users to have the same access on every bot on your botnet. It also allows the bots to distribute tasks such as opping and banning users. See doc/BOTNET for information on setting up a botnet.
Eggdrop is always being improved and adjusted because there are bugs to be fixed and features to be added (if the users demand them, and they make actually sense). In fact, it existed for several years as v0.7 - v0.9 before finally going 1.0. This version of Eggdrop is part of the 1.6 tree. A valiant effort has been made to chase down and destroy bugs.
This README file contains information about how to get Eggdrop, command line options for Eggdrop, what you may need to do when upgrading from older versions, a list of frequently asked questions, how to set up a crontab, some boring legal stuff, info about the mailing list (a great place to ask questions, and a good place to report bugs, too), some basics about CVS usage, and some channels where you might get help with Eggdrop.
Download (0.786MB)
Added: 2006-10-23 License: GPL (GNU General Public License) Price:
1105 downloads
HOP::Lexer 0.031
HOP::Lexer is a Perl module for Higher Order Perl Lexer. more>>
HOP::Lexer is a Perl module for "Higher Order Perl" Lexer.
SYNOPSIS
use HOP::Lexer string_lexer;
my @input_tokens = (
[ VAR, qr/[[:alpha:]]+/ ],
[ NUM, qr/d+/ ],
[ OP, qr/[+=]/ ],
[ SPACE, qr/s*/, sub { () } ],
);
my $text = x = 3 + 4;
my $lexer = string_lexer( $text, @input_tokens );
my @tokens;
while ( my $token = $lexer->() ) {
push @tokens, $token;
}
<<lessSYNOPSIS
use HOP::Lexer string_lexer;
my @input_tokens = (
[ VAR, qr/[[:alpha:]]+/ ],
[ NUM, qr/d+/ ],
[ OP, qr/[+=]/ ],
[ SPACE, qr/s*/, sub { () } ],
);
my $text = x = 3 + 4;
my $lexer = string_lexer( $text, @input_tokens );
my @tokens;
while ( my $token = $lexer->() ) {
push @tokens, $token;
}
Download (0.012MB)
Added: 2007-01-11 License: Perl Artistic License Price:
1016 downloads
OpenThought 0.71
OpenThought is a Web Application Environment which doesnt require page reloads. more>>
OpenThought is a Web Application Environment which doesnt require page reloads.
SYNOPSIS
use OpenThought();
my $o = OpenThought->new( $OP );
my $field_data;
$field_data->{myTextBox} = "Text Box Data";
$field_data->{myCheckbox} = "true";
$field_data->{myRadioBtn} = "RadioBtnValue";
$field_data->{mySelectList} = [
[ "text1", "value1" ],
[ "text2", "value2" ],
[ "text3", "value3" ],
];
my $html_data;
$html_data->{id_tagname} = "New HTML Code";
print $o->serialize({
fields => $field_data,
html => $html_data,
focus => "myTextBox",
javascript => $javascript_code
});
OpenThought is a powerful and flexible web application environment. OpenThought applications are different from other web applications in that all communication between the browser and the server is performed in the background. This gives a browser the ability to receive data from the server without ever reloading the currently loaded document. Data received can be displayed automatically on the existing page, can access JavaScript functions and variables, and can load new pages. Additionally, OpenThought completely manages all of your session data for you. These features give the look and feel of a full-blown application instead of just an ordinary Web page.
OpenThought is extended with OpenPlugin, also described briefly in this documentation.
OpenThought works by communicating with the server through the use of a hidden frame. Now some may say "Frames? Youre using frames??" No need to fret though, the frame is completely hidden. There is no visible way for your users to tell that they are using an application which makes use of frames.
This hidden frame performs all communication with the server for you, and allows your browser to talk to the server without reloading the content currently visible in your web browser. This is how OpenThought can update portions of the screen, and how the server can run JavaScript code in the browser, all without reloading the page.
Any time an OpenThought application is loaded, a unique session id is generated for that user. Each time communication takes place between the browser and server, OpenThought is careful to make sure that this session id is sent along with the request. There is nothing you need to do to make this work, it is done for you. When youre programming your application, you can always expect a session id to be sent to the server, and you can easily retrieve it along with the rest of the data sent by the browser.
In addition to being able to update portions of a screen, you can also load new pages within the content frame. If you choose to load new pages, your session continues to be maintained.
OpenThought gives you an easy way of tieing together multiple web pages, and allows you to build web applications which act like "real" applications. When an application is required, some people would decide to build it in Tk, Visual Basic, Gtk, or any number of other systems which offer a visual interface. But then, your application is either not available on the web, or you have to create a seperate web interface to interact with the backend.
Have you ever tried to create a web interface which minics the interface of a non-web based application? The web based application no longer looks or acts like your other interface, it acts like an ordinary webpage. It probably uses several screens to get the same amount of content that your application offered in one.
By not ever needing to reload the page, OpenThought offers this application look and feel thats been missing from the web. This allows you to create just one interface, for both LAN and web use.
<<lessSYNOPSIS
use OpenThought();
my $o = OpenThought->new( $OP );
my $field_data;
$field_data->{myTextBox} = "Text Box Data";
$field_data->{myCheckbox} = "true";
$field_data->{myRadioBtn} = "RadioBtnValue";
$field_data->{mySelectList} = [
[ "text1", "value1" ],
[ "text2", "value2" ],
[ "text3", "value3" ],
];
my $html_data;
$html_data->{id_tagname} = "New HTML Code";
print $o->serialize({
fields => $field_data,
html => $html_data,
focus => "myTextBox",
javascript => $javascript_code
});
OpenThought is a powerful and flexible web application environment. OpenThought applications are different from other web applications in that all communication between the browser and the server is performed in the background. This gives a browser the ability to receive data from the server without ever reloading the currently loaded document. Data received can be displayed automatically on the existing page, can access JavaScript functions and variables, and can load new pages. Additionally, OpenThought completely manages all of your session data for you. These features give the look and feel of a full-blown application instead of just an ordinary Web page.
OpenThought is extended with OpenPlugin, also described briefly in this documentation.
OpenThought works by communicating with the server through the use of a hidden frame. Now some may say "Frames? Youre using frames??" No need to fret though, the frame is completely hidden. There is no visible way for your users to tell that they are using an application which makes use of frames.
This hidden frame performs all communication with the server for you, and allows your browser to talk to the server without reloading the content currently visible in your web browser. This is how OpenThought can update portions of the screen, and how the server can run JavaScript code in the browser, all without reloading the page.
Any time an OpenThought application is loaded, a unique session id is generated for that user. Each time communication takes place between the browser and server, OpenThought is careful to make sure that this session id is sent along with the request. There is nothing you need to do to make this work, it is done for you. When youre programming your application, you can always expect a session id to be sent to the server, and you can easily retrieve it along with the rest of the data sent by the browser.
In addition to being able to update portions of a screen, you can also load new pages within the content frame. If you choose to load new pages, your session continues to be maintained.
OpenThought gives you an easy way of tieing together multiple web pages, and allows you to build web applications which act like "real" applications. When an application is required, some people would decide to build it in Tk, Visual Basic, Gtk, or any number of other systems which offer a visual interface. But then, your application is either not available on the web, or you have to create a seperate web interface to interact with the backend.
Have you ever tried to create a web interface which minics the interface of a non-web based application? The web based application no longer looks or acts like your other interface, it acts like an ordinary webpage. It probably uses several screens to get the same amount of content that your application offered in one.
By not ever needing to reload the page, OpenThought offers this application look and feel thats been missing from the web. This allows you to create just one interface, for both LAN and web use.
Download (0.076MB)
Added: 2006-07-18 License: Perl Artistic License Price:
1195 downloads
Open DC Hub 0.7.14
Open DC hub is a Unix/Linux version of the hub software for the Direct Connect network. more>>
Open DC hub is a Unix/Linux version of the hub software for the Direct Connect network. Direct Connect is a file sharing network made up by hubs, to which clients can connect.
Once connected to a hub, the user can search for files on the hub or the network, or browse files of other users connected to the hub.
Main features:
- Searching for files
- Connecting to users, both in active and passive mode
- Messaging in open chat
- Private messaging
- Registering users
- Kicking users (for OP:s)
- Banning users (for Admins)
- Uploading hub address and description to public hub list
- Hublinking, which makes it possible to search on other hubs connected to the network
- Administration of the hub from chat
- Scripting (In Perl)
The hub is run as a daemon, i.e, it runs in the background. Its administrated through a tcp connection, for example with telnet, which makes it possible to administer remotely, given that the user has the administration password. Its also possible to administer the hub directly from the chat in Direct Connect.
The software should run on all POSIX compliant operating systems, but the main testing has so far been done on GNU/Linux-x86 and Solaris-Ultrasparc. Please tell me if you fail or succeed in running it on other platforms.
<<lessOnce connected to a hub, the user can search for files on the hub or the network, or browse files of other users connected to the hub.
Main features:
- Searching for files
- Connecting to users, both in active and passive mode
- Messaging in open chat
- Private messaging
- Registering users
- Kicking users (for OP:s)
- Banning users (for Admins)
- Uploading hub address and description to public hub list
- Hublinking, which makes it possible to search on other hubs connected to the network
- Administration of the hub from chat
- Scripting (In Perl)
The hub is run as a daemon, i.e, it runs in the background. Its administrated through a tcp connection, for example with telnet, which makes it possible to administer remotely, given that the user has the administration password. Its also possible to administer the hub directly from the chat in Direct Connect.
The software should run on all POSIX compliant operating systems, but the main testing has so far been done on GNU/Linux-x86 and Solaris-Ultrasparc. Please tell me if you fail or succeed in running it on other platforms.
Download (0.18MB)
Added: 2005-08-15 License: GPL (GNU General Public License) Price:
922 downloads
Ops Control Panel 1.4.2
Ops Control Panel is a frontend for MRTG. more>>
Ops Control Panel is a frontend for MRTG.
Unlike many other frontends, it does not have any requirements beyond those of MRTG, although it can support PHP-enabled Web servers instead of just running as a Perl CGI script.
Ops Control Panel project provides overviews of MRTG-based monitoring pages in a variety of formats.
<<lessUnlike many other frontends, it does not have any requirements beyond those of MRTG, although it can support PHP-enabled Web servers instead of just running as a Perl CGI script.
Ops Control Panel project provides overviews of MRTG-based monitoring pages in a variety of formats.
Download (0.017MB)
Added: 2005-12-28 License: GPL (GNU General Public License) Price:
1397 downloads
Parrot::OpTrans 0.4.5
Parrot::OpTrans is a Perl module that can transform Ops to C Code. more>>
Parrot::OpTrans is a Perl module that can transform Ops to C Code.
Parrot::OpTrans is the abstract superclass for the Parrot op to C transforms. Each transform contains various bits of information needed to generate the C code, and creates a different type of run loop. The methods defined here supply various default values and behaviour common to all transforms.
The subclass hierarchy is as follows:
OpTrans
|_________________________
| | |
C CGoto Compiled
| |
CPrederef |
| | |
| |_________|
| |
CSwitch CGP
Class Methods
new()
Returns a new instance.
Instance Methods
prefix()
Returns the default Parrot_ prefix.
Used by Parrot::Ops func_name() to individuate op function names.
suffix()
Implemented in subclasses to return a suffix with which to individuate variable names. This default implementation returns an empty string.
defines()
Implemented in subclasses to return the C #define macros required.
opsarraytype()
Returns the type for the array of opcodes. By default here its an array opcode_t, but the prederef runops core uses an array of void* to do its clever tricks.
core_type()
Implemented in subclasses to return the type of core created by the transform. This default implementation raises an exception indicating that the core type is missing. See the Parrot_Run_core_t enum in include/parrot/interpreter.h for a list of the core types.
core_prefix()
Implemented in subclasses to return a short prefix indicating the core type used to individuate core function names.
run_core_func_decl($base)
Optionally implemented in subclasses to return the C code for the run core function declaration. $base is the name of the main ops file minus the .ops extension.
ops_addr_decl($base_suffix)
Optionally implemented in subclasses to return the C code for the ops address declaration. $base_suffix is the name of the main ops file minus the .ops extension with suffix() and an underscore appended.
run_core_func_decl($base)
Optionally implemented in subclasses to return the C code for the run core function declaration. $base is the same as for run_core_func_decl().
run_core_func_start()
Implemented in subclasses, if run_core_func_decl() is implemented, to return the C code prior to the run core function.
run_core_after_addr_table($base_suffix)
Optionally implemented in subclasses to return the run core C code for section after the address table. $base_suffix is the same as for ops_addr_decl().
run_core_finish($base)
Implemented in subclasses to return the C code following the run core function. $base is the same as for run_core_func_decl().
init_func_init1($base)
Optionally implemented in subclasses to return the C code for the cores init function. $base is the same as for run_core_func_decl().
init_set_dispatch($base_suffix)
Optionally implemented in subclasses to return the C code for initializing the dispatch mechanism within the cores init function. $base_suffix is the same as for ops_addr_decl().
Macro Substitutions
The following methods are called by Parrot::OpFile to perform ops file macro substitutions.
access_arg($type, $value, $op)
Implemented in subclasses to return the C code for the specified op argument type and value. $op is an instance of Parrot::Op.
gen_goto($where)
The various goto_X methods below call this method with the return value of an expr_X method (implemented in subclass).
restart_address($address)
Implemented in subclasses to return the C code for restart ADDRESS($address).
restart_offset($offset)
Implemented in subclasses to return the C code for restart OFFSET($offset).
goto_address($address)
Transforms the goto ADDRESS($address) macro in an ops file into the relevant C code.
goto_offset($offset)
Transforms the goto OFFSET($offset) macro in an ops file into the relevant C code.
goto_pop()
Transforms the goto POP($address) macro in an ops file into the relevant C code.
expr_offset($offset)
Implemented in subclasses to return the C code for OFFSET($offset). Called by goto_offset().
expr_address($address)
Implemented in subclasses to return the C code for ADDRESS($address). Called by goto_address().
<<lessParrot::OpTrans is the abstract superclass for the Parrot op to C transforms. Each transform contains various bits of information needed to generate the C code, and creates a different type of run loop. The methods defined here supply various default values and behaviour common to all transforms.
The subclass hierarchy is as follows:
OpTrans
|_________________________
| | |
C CGoto Compiled
| |
CPrederef |
| | |
| |_________|
| |
CSwitch CGP
Class Methods
new()
Returns a new instance.
Instance Methods
prefix()
Returns the default Parrot_ prefix.
Used by Parrot::Ops func_name() to individuate op function names.
suffix()
Implemented in subclasses to return a suffix with which to individuate variable names. This default implementation returns an empty string.
defines()
Implemented in subclasses to return the C #define macros required.
opsarraytype()
Returns the type for the array of opcodes. By default here its an array opcode_t, but the prederef runops core uses an array of void* to do its clever tricks.
core_type()
Implemented in subclasses to return the type of core created by the transform. This default implementation raises an exception indicating that the core type is missing. See the Parrot_Run_core_t enum in include/parrot/interpreter.h for a list of the core types.
core_prefix()
Implemented in subclasses to return a short prefix indicating the core type used to individuate core function names.
run_core_func_decl($base)
Optionally implemented in subclasses to return the C code for the run core function declaration. $base is the name of the main ops file minus the .ops extension.
ops_addr_decl($base_suffix)
Optionally implemented in subclasses to return the C code for the ops address declaration. $base_suffix is the name of the main ops file minus the .ops extension with suffix() and an underscore appended.
run_core_func_decl($base)
Optionally implemented in subclasses to return the C code for the run core function declaration. $base is the same as for run_core_func_decl().
run_core_func_start()
Implemented in subclasses, if run_core_func_decl() is implemented, to return the C code prior to the run core function.
run_core_after_addr_table($base_suffix)
Optionally implemented in subclasses to return the run core C code for section after the address table. $base_suffix is the same as for ops_addr_decl().
run_core_finish($base)
Implemented in subclasses to return the C code following the run core function. $base is the same as for run_core_func_decl().
init_func_init1($base)
Optionally implemented in subclasses to return the C code for the cores init function. $base is the same as for run_core_func_decl().
init_set_dispatch($base_suffix)
Optionally implemented in subclasses to return the C code for initializing the dispatch mechanism within the cores init function. $base_suffix is the same as for ops_addr_decl().
Macro Substitutions
The following methods are called by Parrot::OpFile to perform ops file macro substitutions.
access_arg($type, $value, $op)
Implemented in subclasses to return the C code for the specified op argument type and value. $op is an instance of Parrot::Op.
gen_goto($where)
The various goto_X methods below call this method with the return value of an expr_X method (implemented in subclass).
restart_address($address)
Implemented in subclasses to return the C code for restart ADDRESS($address).
restart_offset($offset)
Implemented in subclasses to return the C code for restart OFFSET($offset).
goto_address($address)
Transforms the goto ADDRESS($address) macro in an ops file into the relevant C code.
goto_offset($offset)
Transforms the goto OFFSET($offset) macro in an ops file into the relevant C code.
goto_pop()
Transforms the goto POP($address) macro in an ops file into the relevant C code.
expr_offset($offset)
Implemented in subclasses to return the C code for OFFSET($offset). Called by goto_offset().
expr_address($address)
Implemented in subclasses to return the C code for ADDRESS($address). Called by goto_address().
Download (3.1MB)
Added: 2006-07-06 License: Perl Artistic License Price:
1205 downloads
Parrot::OpTrans::C 0.4.5
Parrot::OpTrans::C is a Perl module Ops to C Code Generation. more>>
Parrot::OpTrans::C is a Perl module for Ops to C Code Generation.
DESCRIPTION
Parrot::OpTrans::C inherits from Parrot::OpTrans to provide a function-based (slow or fast core) run loop.
Instance Methods
core_type()
Returns PARROT_FUNCTION_CORE.
core_prefix()
Returns an empty string.
defines()
Returns the C #define macros for register access etc.
gen_goto($where)
Reimplements the superclass method so that $where is suitably cast.
expr_address($address)
Returns the C code for ADDRESS($address). Called by goto_address().
expr_offset($offset)
Returns the C code for OFFSET($offset). Called by goto_offset().
expr_pop()
Returns the C code for POP(). Called by goto_offset().
access_arg($type, $value, $op)
Returns the C code for the specified op argument type (see Parrot::OpTrans) and value. $op is an instance of Parrot::Op.
restart_offset($offset)
Returns the C code for restart OFFSET($offset).
restart_address($address)
Returns the C code for restart ADDRESS($address).
<<lessDESCRIPTION
Parrot::OpTrans::C inherits from Parrot::OpTrans to provide a function-based (slow or fast core) run loop.
Instance Methods
core_type()
Returns PARROT_FUNCTION_CORE.
core_prefix()
Returns an empty string.
defines()
Returns the C #define macros for register access etc.
gen_goto($where)
Reimplements the superclass method so that $where is suitably cast.
expr_address($address)
Returns the C code for ADDRESS($address). Called by goto_address().
expr_offset($offset)
Returns the C code for OFFSET($offset). Called by goto_offset().
expr_pop()
Returns the C code for POP(). Called by goto_offset().
access_arg($type, $value, $op)
Returns the C code for the specified op argument type (see Parrot::OpTrans) and value. $op is an instance of Parrot::Op.
restart_offset($offset)
Returns the C code for restart OFFSET($offset).
restart_address($address)
Returns the C code for restart ADDRESS($address).
Download (3.1MB)
Added: 2006-07-05 License: GPL (GNU General Public License) Price:
1206 downloads
B::OptreeShortestPath 0.02
B::OptreeShortestPath adds the methods ->shortest_path( $op ) and ->all_paths() to all B::OP objects in an optree. more>>
B::OptreeShortestPath is a Perl module that adds the methods ->shortest_path( $op ) and ->all_paths() to all B::OP objects in an optree.
SYNOPSIS
use B qw( main_root main_start );
use B::OptreeShortestPath;
for ( main_start()->shortest_path( main_root() ) ) {
print "$_n";
}
METHODS
$op->shortest_path( $other_op )
Returns a list of the shortest paths from $op to $other_op. Each path is a string approximating a bunch of chained method calls.
"->next->sibling->next",
"->sibling->sibling->next"
$op->all_paths()
Returns a list of paths from this node to all other nodes.
<<lessSYNOPSIS
use B qw( main_root main_start );
use B::OptreeShortestPath;
for ( main_start()->shortest_path( main_root() ) ) {
print "$_n";
}
METHODS
$op->shortest_path( $other_op )
Returns a list of the shortest paths from $op to $other_op. Each path is a string approximating a bunch of chained method calls.
"->next->sibling->next",
"->sibling->sibling->next"
$op->all_paths()
Returns a list of paths from this node to all other nodes.
Download (0.004MB)
Added: 2007-06-25 License: Perl Artistic License Price:
851 downloads
Open Project Services 0.2
Open Project Services (OPS) is a project collaboration platform, integrating server components such as e-mail, calendaring. more>>
Open Project Services (OPS) is a project collaboration platform, integrating server components such as e-mail, calendaring, timesheets, documents, knowledge, etc. with standards complient clients. Open Project Services consists of a project server and a set of client extensions.
We are building a project collaboration platform. It consists of a project server that integrates with services needed within a project, e.g. e-mail, calendaring, timesheets, documents, knowledge, etc.
The project server is a Webservices hub based on Java (J2EE). The persistence layer for project information is LDAP. We use OpenLDAP now, but others should also be possible. The e-mail backend makes use of a standard IMAP server. Our reference implementation uses Courier.
We are building extensions/plugins for clients, making them OPS-enabled. We support e.g. Mozilla Thunderbird (XUL) and Squirrelmail (PHP) for e-mail clients. For the calendaring and timesheet components we have a Mozilla Sunbird extension (XUL).
In short: we are building a project collaboration environment on an OSS stack, enriching services with project information, using COTS clients/servers and open standards.
Enhancements:
- This release includes some changes to the underlying LDAP schema to make it possible to disable tasks when they are completed.
- To make use of this new feature, the Web services and the sunbird timesheet client have to be updated.
<<lessWe are building a project collaboration platform. It consists of a project server that integrates with services needed within a project, e.g. e-mail, calendaring, timesheets, documents, knowledge, etc.
The project server is a Webservices hub based on Java (J2EE). The persistence layer for project information is LDAP. We use OpenLDAP now, but others should also be possible. The e-mail backend makes use of a standard IMAP server. Our reference implementation uses Courier.
We are building extensions/plugins for clients, making them OPS-enabled. We support e.g. Mozilla Thunderbird (XUL) and Squirrelmail (PHP) for e-mail clients. For the calendaring and timesheet components we have a Mozilla Sunbird extension (XUL).
In short: we are building a project collaboration environment on an OSS stack, enriching services with project information, using COTS clients/servers and open standards.
Enhancements:
- This release includes some changes to the underlying LDAP schema to make it possible to disable tasks when they are completed.
- To make use of this new feature, the Web services and the sunbird timesheet client have to be updated.
Download (8.4MB)
Added: 2006-04-10 License: GPL (GNU General Public License) Price:
1302 downloads
67-80-85, the openCPU 1.2a
67-80-85, the openCPU is a simulation of a simple and efficient open CPU called 67-80-85. more>>
67-80-85, the openCPU project is a simulation of a simple and efficient open CPU called 67-80-85.
After quite some time of hard labour, I finished to implement a milestone of a simulation of an open CPU, called 67-80-85 (ASCII for CPU), which I somewhat had in my mind for quite some time.
It is a mixture of inspirations and tries to implement a simple, efficient CPU, that should be able to do everything you might expect from a modern CPU, regarding its computation model. If it becomes >THE< CPU in future, because people prefer it, than it would be a lucky thing ... But to make it a success, a number of points need to be done yet:
- support by the GNU C compiler
- logging command use sequences of compiled C/Linux programmes and analysing the executed sequences to optimise code, if it seems necessary
- adopting the simulator to run it (exclusively) as the platform on a PC hardware to run a ported Linux distribution (compiled without printfs for verbose mode, etc. to minimise its size)
- developing a FPGA 678085 prototype on a FPGA
- implementing microkernel routines to support additional commands (i.e. rotate bit-wise, 128-bit fp-ops, etc.)
<<lessAfter quite some time of hard labour, I finished to implement a milestone of a simulation of an open CPU, called 67-80-85 (ASCII for CPU), which I somewhat had in my mind for quite some time.
It is a mixture of inspirations and tries to implement a simple, efficient CPU, that should be able to do everything you might expect from a modern CPU, regarding its computation model. If it becomes >THE< CPU in future, because people prefer it, than it would be a lucky thing ... But to make it a success, a number of points need to be done yet:
- support by the GNU C compiler
- logging command use sequences of compiled C/Linux programmes and analysing the executed sequences to optimise code, if it seems necessary
- adopting the simulator to run it (exclusively) as the platform on a PC hardware to run a ported Linux distribution (compiled without printfs for verbose mode, etc. to minimise its size)
- developing a FPGA 678085 prototype on a FPGA
- implementing microkernel routines to support additional commands (i.e. rotate bit-wise, 128-bit fp-ops, etc.)
Download (0.099MB)
Added: 2006-12-11 License: GPL (GNU General Public License) Price:
1048 downloads
OpenPlugin::Datasource::DBI 0.11
OpenPlugin::Datasource::DBI is a DBI driver, used to create DBI database handles for the OpenPlugin::Datasource plugin. more>>
OpenPlugin::Datasource::DBI is a DBI driver, used to create DBI database handles for the OpenPlugin::Datasource plugin.
SYNOPSIS
# Define the parameters for a database handle main in the config file
type = DBI
db_owner =
username = webuser
password = urkelnut
dsn = host=localhost;database=urkelweb
db_name =
driver = mysql
long_read_len = 65536
long_trunc_ok = 0
# Request the datasource main:
my $dbh = $OP->datasource->connect( main );
my $sth = $dbh->prepare( "SELECT * FROM urkel_fan" );
$sth->execute;
...
No, we do not subclass DBI with this. No, we do not override any of the DBI methods. Instead, we provide the means to connect to the database from one location using nothing more than a datasource name. This is somewhat how the Java Naming and Directory Interface (JNDI) allows you to manage objects, including database connections.
Note that if you are using it this should work flawlessly with Apache::DBI, and if you are using this on a different persistent Perl platform (say, PerlEx) then this module gives you a single location from which to retrieve database handles -- this makes using the BEGIN/END tricks ActiveState recommends in their FAQ pretty trivial.
<<lessSYNOPSIS
# Define the parameters for a database handle main in the config file
type = DBI
db_owner =
username = webuser
password = urkelnut
dsn = host=localhost;database=urkelweb
db_name =
driver = mysql
long_read_len = 65536
long_trunc_ok = 0
# Request the datasource main:
my $dbh = $OP->datasource->connect( main );
my $sth = $dbh->prepare( "SELECT * FROM urkel_fan" );
$sth->execute;
...
No, we do not subclass DBI with this. No, we do not override any of the DBI methods. Instead, we provide the means to connect to the database from one location using nothing more than a datasource name. This is somewhat how the Java Naming and Directory Interface (JNDI) allows you to manage objects, including database connections.
Note that if you are using it this should work flawlessly with Apache::DBI, and if you are using this on a different persistent Perl platform (say, PerlEx) then this module gives you a single location from which to retrieve database handles -- this makes using the BEGIN/END tricks ActiveState recommends in their FAQ pretty trivial.
Download (0.077MB)
Added: 2007-06-22 License: Perl Artistic License Price:
854 downloads
Irregular Operations Database 1.0
Irregular Operations Database is a project used for tracking flight delays. more>>
Irregular Operations Database is a project used for tracking flight delays.
Irregular Ops is a CGI script for intranet use to track irregular operations (flight delays) for scheduled airlines.
<<lessIrregular Ops is a CGI script for intranet use to track irregular operations (flight delays) for scheduled airlines.
Download (0.013MB)
Added: 2007-02-19 License: GPL (GNU General Public License) Price:
979 downloads
Tactical Operations: Crossfire 1.6
Tactical Operations: Crossfire is a tactical shooter based on Unreal Tournament 2004. more>>
Tactical Operations: Crossfire is a tactical shooter based on Unreal Tournament 2004.
Tactical Operations: Crossfire is a fast paced first person online shooter in which two teams, terrorists and special forces, duke it out in a wide variety of environments with various objectives to accomplish. From rescuing hostages kept in a small desert town in Saudi-Arabia to preventing the bombing of an oil refinery on the Caspian sea shore. There are no less than fourteen official maps to choose from!
Each map is played for a certain amount of time and the team having won the most rounds when the time runs out is declared the winner. A round can be won either by completing the objective set for that team, such as rescueing the hostages, or by simply eliminating all players on the opposite team.
A large number of weapons is avaialable for both teams, which can be purchased by each player at the start of the round. Out of the thirty weapons currently available, theres bound to be a weapon to suit your style of playing, be it either up close and personal with the Benelli Nova tactical shotgun or sneaky sniper work with the Dragunov SVD.
Tactical Operations: Crossfire continues where the popular Tactical Ops: Assault on Terror left off, with many classic weapons returning and remakes of some of the original maps. To play TO:C, you will need Unreal Tournament 2004 installed and patched to the latest version (3369). Tactical Ops: Crossfire can be played on Windows, Linux and Mac systems.
<<lessTactical Operations: Crossfire is a fast paced first person online shooter in which two teams, terrorists and special forces, duke it out in a wide variety of environments with various objectives to accomplish. From rescuing hostages kept in a small desert town in Saudi-Arabia to preventing the bombing of an oil refinery on the Caspian sea shore. There are no less than fourteen official maps to choose from!
Each map is played for a certain amount of time and the team having won the most rounds when the time runs out is declared the winner. A round can be won either by completing the objective set for that team, such as rescueing the hostages, or by simply eliminating all players on the opposite team.
A large number of weapons is avaialable for both teams, which can be purchased by each player at the start of the round. Out of the thirty weapons currently available, theres bound to be a weapon to suit your style of playing, be it either up close and personal with the Benelli Nova tactical shotgun or sneaky sniper work with the Dragunov SVD.
Tactical Operations: Crossfire continues where the popular Tactical Ops: Assault on Terror left off, with many classic weapons returning and remakes of some of the original maps. To play TO:C, you will need Unreal Tournament 2004 installed and patched to the latest version (3369). Tactical Ops: Crossfire can be played on Windows, Linux and Mac systems.
Download (697.8MB)
Added: 2007-03-04 License: Freeware Price:
997 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above op search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed