read(1) for node programs
Adapt Node programs to run as a Bazel worker
check installed programs and versions
Sound effects for your node programs
read(1) for node programs
Require components from node programs
Simple templates for node programs
An interface to allow Node programs to debug Perl scripts
how to write node programs with streams
A lightweight library to make requests to the Nominatim API from Node programs
Make your Node programs strict about stuff
A Test-Anything-Protocol library for JavaScript
read(1) for node programs
proxy in aid of debugging node programs on Cloud Foundry
A inter-process and inter-machine lockfile utility that works on a local or network file system
extended POSIX-style sprintf
Easy way to create a client for Manta Node programs
Utilities that help you write Node programs and in particular, CLI scripts easily.
node programs
Helpers for defining programs and resolving program errors
A JavaScript port of the Proj.4 cartographic projections library
SPL Token Program JS API
Fork pseudoterminals in Node.JS
Provide AMD's define() API for declaring modules in the AMD format
RubyMacros is a lisp-like macro pre-processor for Ruby. More than just a purely textual substitution scheme, RubyMacros can manipulate and morph Ruby parse trees (in the form of RedParse Nodes) at parse time in just about any way you see fit. Macros are programmed in ruby itself. And since parse trees are represented in RedParse format, they're easier to use (programatically) and more object- oriented than other available ruby parsetree formats. (RedParse Node format is actually designed to be straightforward to use and to represent the structure of ruby source code very closely.)
Flay analyzes code for structural similarities. Differences in literal values, variable, class, method names, whitespace, programming style, braces vs do/end, etc are all ignored. Making this totally rad. == Features/Problems: * Reports differences at any level of code. * Adds a score multiplier to identical nodes. * Differences in literal values, variable, class, and method names are ignored. * Differences in whitespace, programming style, braces vs do/end, etc are ignored. * Works across files. * Add the flay-persistent plugin to work across large/many projects. * Run --diff to see an N-way diff of the code. * Provides conservative (default) and --liberal pruning options. * Provides --fuzzy duplication detection. * Language independent: Plugin system allows other languages to be flayed. * Ships with .rb and .erb. * javascript and others will be available separately. * Includes FlayTask for Rakefiles. * Uses path_expander, so you can use: * dir_arg -- expand a directory automatically * @file_of_args -- persist arguments in a file * -path_to_subtract -- ignore intersecting subsets of files/directories * Skips files matched via patterns in .flayignore (subset format of .gitignore). * Totally rad.
EXPERIMENTAL. A form of data-flow programming based loosely on Kahn Process Networks. Will allow for setting up operational components that can be pipelined together in a graph. Assumes all components (nodes) are 'online' algorithms with more or less steady-state resource utilization for continuous streams of data.
This library generates and parses Universally Unique Identifier (UUID), based on OSSP uuid C library. So, libossp-uuid library is pre-required. OSSP uuid (http://www.ossp.org/pkg/lib/uuid/) is a ISO-C:1999 application programming interface (API) for the generation of DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant UUID. It supports DCE 1.1 variant UUIDs of version 1 (time and node based), version 3 (name based, MD5), version 4 (random number based) and version 5 (name based, SHA-1).
This library generates and parses Universally Unique Identifier (UUID), based on OSSP uuid C library. So, libossp-uuid library is pre-required. OSSP uuid (http://www.ossp.org/pkg/lib/uuid/) is a ISO-C:1999 application programming interface (API) for the generation of DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant UUID. It supports DCE 1.1 variant UUIDs of version 1 (time and node based), version 3 (name based, MD5), version 4 (random number based) and version 5 (name based, SHA-1).
Contains make configuration changes since this thing is a bitch to compile correclty. This library generates and parses Universally Unique Identifier (UUID), based on OSSP uuid C library. So, libossp-uuid library is pre-required. OSSP uuid (http://www.ossp.org/pkg/lib/uuid/) is a ISO-C:1999 application programming interface (API) for the generation of DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant UUID. It supports DCE 1.1 variant UUIDs of version 1 (time and node based), version 3 (name based, MD5), version 4 (random number based) and version 5 (name based, SHA-1).
ROS Ruby Client: rosruby ======= [ROS](http://ros.org) is Robot Operating System developed by [Willow Garage](http://www.willowgarage.com/) and open source communities. This project supports ruby ROS client. You can program robots by ruby, very easily. **Homepage**: http://otl.github.com/rosruby **Git**: http://github.com/OTL/rosruby **Author**: Takashi Ogura **Copyright**: 2012 **License**: new BSD License **Latest Version**: 0.2.0 Requirements ---------- - ruby (1.8.x/1.9.x) - ROS (electric/fuerte) - ROS requires python2.7 or more libraries Let's start --------------- Install ROS and ruby first. ROS document is [http://ros.org/wiki/ROS/Installation](http://ros.org/wiki/ROS/Installation) . You can install ruby by apt. ```bash $ sudo apt-get install ruby ``` Download rosruby into your ROS_PACKAGE_PATH. ````bash $ git clone git://github.com/OTL/rosruby.git ``` please add RUBYLIB environment variable, like below (if you are using bash). ```bash $ echo "export RUBYLIB=`rospack find rosruby`/lib" >> ~/.bashrc $ source ~/.bashrc ``` To use with precompiled electric release ----------------------- If you are using precompiled ROS distro, use the msg/srv generation script (rosruby_genmsg.py) If you are using ROS from source, it requires just recompile the msg/srv packages by rosmake rosruby. ```bash $ rosrun rosruby rosruby_genmsg.py ``` This converts msg/srv to .rb which is needed by sample programs. If you want to make other packages, add package names for args. For example, ```bash $ rosrun rosruby rosruby_genmsg.py geometry_msgs nav_msgs ``` Sample Source -------------- ## Subscriber ```ruby #!/usr/bin/env ruby require 'ros' require 'std_msgs/String' node = ROS::Node.new('/rosruby/sample_subscriber') node.subscribe('/chatter', Std_msgs::String) do |msg| puts "message come! = \'#{msg.data}\'" end while node.ok? node.spin_once sleep(1) end ``` ## Publisher ```ruby #!/usr/bin/env ruby require 'ros' require 'std_msgs/String' node = ROS::Node.new('/rosruby/sample_publisher') publisher = node.advertise('/chatter', Std_msgs::String) msg = Std_msgs::String.new i = 0 while node.ok? msg.data = "Hello, rosruby!: #{i}" publisher.publish(msg) sleep(1.0) i += 1 end ``` Note ---------------- Ruby requires 'Start with Capital letter' for class or module names. So please use **S**td_msgs::String class instead of **s**td_msgs::String. Try Publish and Subscribe ---------------------- You needs three terminal as it is often for ROS users. Then you run roscore if is not running. ```bash $ roscore ``` run publisher sample ```bash $ rosrun rosruby sample_publisher.rb ``` run subscription sample ```bash $ rosrun rosruby sample_subscriber.rb ``` you can check publication by using rostopic. ```bash $ rostopic list $ rostopic echo /chatter ``` Try Service? ---------------------- ```bash $ rosrun rosruby add_two_ints_server.rb ``` run client with args ('a' and 'b' for roscpp_tutorials/TwoInts) ```bash $ rosrun rosruby add_two_ints_client.rb 10 20 ``` and more... ---------------------- You need more tools for testing, generating documentations. ```bash $ sudo apt-get install rake gem $ sudo gem install yard redcarpet simplecov ``` do all tests ------------------------- run roscore if is not running. ```bash $ roscore ``` and run the unit tests. ```bash $ roscd rosruby $ rake test ``` documents -------------------------- you can generate API documents using yard. Document generation needs yard and redcarpet. You can install these by gem command like this. ```bash $ gem install yard redcarpet ``` Then try to generate documentds. ```bash $ rake yard ``` You can access to the generated documents from [here](http://otl.github.com/rosruby/doc/).
Diff and patch tables
Diff and patch tables