Comments (8)
IPC::Run3 is my go to module when I need something more complex than just calling system
or exec
.
I'd also add Parallel::ForkManager
which is a really quick, easy way to speed up many programs.
from task-kensho.
I agree the IPC name isn't ideal. It just happens to be the namespace used for that on CPAN. Maybe something along the lines of "Running Commands", that's not great but can't think of anything better. I think it should be distinct from process management which is more like what Parallel::ForkManager and such do.
from task-kensho.
Should this also consider things like IPC::Shm and others that can be used to setup a channel between two processes that were initially unrelated?
from task-kensho.
I think that Parallel::ForkManager, similarly to MCE from #10 would fit better in the Async category.
from task-kensho.
For IPC::Shm, I think it would be appropriate, I am just not sure about recommending it.
from task-kensho.
These modules sound like they are more about managing processes than facilitating interprocess communication. The pipes used to shuffle data to/from those processes are of course IPC, but they seem like their secondary focus.
Maybe put these modules into a "Multiprocessing" category and fill the "IPC" category with modules which facilitate signals, shared memory, message-passing, etc?
from task-kensho.
You're totally right that CPAN (mis)uses the IPC:: namespace for process-wrangling. It's probably worth continuing in the same vein to remain consistent.
from task-kensho.
System::Command and Proc::Background provide very convenient and friendly object wrappers to system commands that probably cover 90% of use cases.
from task-kensho.
Related Issues (20)
- Add Mojo::DOM to XML category HOT 1
- Is this project still maintained? HOT 1
- add Path::Tiny
- for Excel add Excel::Writer::XLXS and Spreadsheet::ParseXLXS HOT 3
- Data::Edit::Xml HOT 2
- Serialization category HOT 2
- Filesystem category HOT 4
- Add Mojo::IOLoop to Async category HOT 1
- Add Future to Async category HOT 4
- Add Test2::Suite to Testing category HOT 3
- Templating category? HOT 1
- Add parallelization modules to Async category HOT 2
- Document "acceptable replacements"? HOT 1
- Add Excel::Writer::XLSX to Excel/CSV category HOT 1
- Add Machine Learning Category
- Add Getopt::Lucid to a new section (command line processing) HOT 2
- Abstracted 'Correct naming' layer
- Support XLSX HOT 3
- Add Nice::Try to Exceptions section HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from task-kensho.