
Hello all, since Boost has marvelous cross platform libraries, wouldn't it be an idea to rewrite all the standard commandline unix tools (e.g. cp, grep, ps, ls, diff) in c++ with Boost? Libraries like program options, filesystem and regex already fullfill a lot of the functionality. Only thing left is a person with a good knowledge of the syntax of the cmd line tools and ofc a lot of time:). I mainly use Windows and i really miss these tools from time to time. And yes there is Cygwin but I would prefer just the tools without changing my environment.

On 12 February 2013 11:09, gast128
Hello all,
since Boost has marvelous cross platform libraries, wouldn't it be an idea to rewrite all the standard commandline unix tools (e.g. cp, grep, ps, ls, diff) in c++ with Boost? Libraries like program options, filesystem and regex already fullfill a lot of the functionality. Only thing left is a person with a good knowledge of the syntax of the cmd line tools and ofc a lot of time:).
GSoC has just started, I believe proposals are welcome, so write one. This sounds like a feasible project within the GSoC time-frame for a student with both, Unix and Windows experience Besides, it's off-topic: "This list is for discussion of issues related to using these [Boost] libraries". For discussions on new developments -> http://lists.boost.org/mailman/listinfo.cgi/boost Best regards, -- Mateusz Loskot, http://mateusz.loskot.net

Wow, rewriting almost the whole GNU toolset? Just for not having to use Cygwin? Sounds like a giant waste of time, TBH. Cheers -Andreas On 12:09 Tue 12 Feb , gast128 wrote:
Hello all,
since Boost has marvelous cross platform libraries, wouldn't it be an idea to rewrite all the standard commandline unix tools (e.g. cp, grep, ps, ls, diff) in c++ with Boost? Libraries like program options, filesystem and regex already fullfill a lot of the functionality. Only thing left is a person with a good knowledge of the syntax of the cmd line tools and ofc a lot of time:).
I mainly use Windows and i really miss these tools from time to time. And yes there is Cygwin but I would prefer just the tools without changing my environment. _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- ========================================================== Andreas Schäfer HPC and Grid Computing Chair of Computer Science 3 Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany +49 9131 85-27910 PGP/GPG key via keyserver http://www.libgeodecomp.org ========================================================== (\___/) (+'.'+) (")_(") This is Bunny. Copy and paste Bunny into your signature to help him gain world domination!

Or use original GNU tools: http://gnuwin32.sourceforge.net/packages.html Also why to rewrite exiting high quality de-facto standard (and POSIX complaint) tools that had proven for time much longer than Boost even exits. Artyom Beilis -------------- CppCMS - C++ Web Framework: http://cppcms.com/ CppDB - C++ SQL Connectivity: http://cppcms.com/sql/cppdb/ ----- Original Message -----
From: Andreas Schäfer
To: boost-users@lists.boost.org Cc: Sent: Tuesday, February 12, 2013 1:25 PM Subject: Re: [Boost-users] unix tools Wow, rewriting almost the whole GNU toolset? Just for not having to use Cygwin? Sounds like a giant waste of time, TBH.
Cheers -Andreas
On 12:09 Tue 12 Feb , gast128 wrote:
Hello all,
since Boost has marvelous cross platform libraries, wouldn't it be an idea to rewrite all the standard commandline unix tools (e.g. cp, grep, ps, ls, diff) in c++ with Boost? Libraries like program options, filesystem and regex already fullfill a lot of the functionality. Only thing left is a person with a good knowledge of the syntax of the cmd line tools and ofc a lot of time:).
I mainly use Windows and i really miss these tools from time to time. And yes there is Cygwin but I would prefer just the tools without changing my environment. _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- ========================================================== Andreas Schäfer HPC and Grid Computing Chair of Computer Science 3 Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany +49 9131 85-27910 PGP/GPG key via keyserver http://www.libgeodecomp.org ==========================================================
(\___/) (+'.'+) (")_(") This is Bunny. Copy and paste Bunny into your signature to help him gain world domination!
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users

On 2/12/2013 12:25 PM, Andreas Schäfer wrote:
Wow, rewriting almost the whole GNU toolset? Just for not having to use Cygwin? Sounds like a giant waste of time, TBH.
Like I said most work is already in the libraries themselves, it is now a matter of glueing the parts together. I havent looked at the original source code lately, but once i had a look and to my knowledge it was cryptic c code. If used correctly, c++ can much easier to read just because of the automatic management. At least it makes porting them to other (non unix, non cygwin) platforms more easily.

On 14:18 Tue 12 Feb , gast128 wrote:
Like I said most work is already in the libraries themselves, it is now a matter of glueing the parts together.
Ever watched Top Gear? "How hard can it be" is just a prefix to failing gloriously. You underestimate the complexity of these seemingly simple utilities.
If used correctly, c++ can much easier to read just because of the automatic management. At least it makes porting them to other (non unix, non cygwin) platforms more easily.
I wonder which platform there is that was neither Windows nor Unix. All those things aside, Artyom (see his mail) has a point: there are already ports of the GNU tools for Windows. Rewriting code just for the sake of basing it on Boost isn't enough of a justification IMHO. Best -Andreas -- ========================================================== Andreas Schäfer HPC and Grid Computing Chair of Computer Science 3 Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany +49 9131 85-27910 PGP/GPG key via keyserver http://www.libgeodecomp.org ========================================================== (\___/) (+'.'+) (")_(") This is Bunny. Copy and paste Bunny into your signature to help him gain world domination!

On 14:18 Tue 12 Feb , gast128 wrote:
Like I said most work is already in the libraries themselves, it is now a matter of glueing the parts together.
Ever watched Top Gear? "How hard can it be" is just a prefix to failing gloriously. You underestimate the complexity of these seemingly simple utilities. I see a lot of applications parsing the commandline by hand, but almost never as good (e.g. order of arguments) and readable (form a client
If used correctly, c++ can much easier to read just because of the automatic management. At least it makes porting them to other (non unix, non cygwin) platforms more easily.
I wonder which platform there is that was neither Windows nor Unix. There are many but on second thought they are all related to Unix: Android (kinda linux); Minix (posix compliant); MacOs (also unix?);
On 2/12/2013 2:32 PM, Andreas Schäfer wrote: perspective) as Program Options. private embedded os. All have these gnu tools?
All those things aside, Artyom (see his mail) has a point: there are already ports of the GNU tools for Windows. Rewriting code just for the sake of basing it on Boost isn't enough of a justification IMHO. Ok, it was just an idea.
When using Ubuntu i had to learn all those new commandline tools and options. But in fact they are so powerful I would like to have them in 'my fingers' by using them on Windows on a daily base as well. Ok cygwin is an option but I thought maybe also a good idea to rewrite them in modern c++ in hopefully a readable manner, so that they are safeguarded for the future on any platform.

On Tue, Feb 12, 2013 at 11:23 AM, gast128
When using Ubuntu i had to learn all those new commandline tools and options. But in fact they are so powerful I would like to have them in 'my fingers' by using them on Windows on a daily base as well. Ok cygwin is an option but I thought maybe also a good idea to rewrite them in modern c++ in hopefully a readable manner, so that they are safeguarded for the future on any platform.
The language is not the obstacle in porting. If anything, C is more universal than C++ especially on embedded platforms. The obstacle to porting are the system APIs (which are in C, no less) atop which those command line tools sit. Cygwin is more than just command line tools--it's also an entire adapter layer over the win32 API to present a POSIX-like and unix-like API. Most of the tools packaged in cygwin are just the standard tools compiled and linked against cygwin. I don't see the value in changing to C++ when you'd still have the need for the adaptation layer provided by cygwin, or the need to import that adaptation layer into each tool. IMHO, spend your time creating new wonderful things rather than reinventing a very efficient wheel. -- Chris Cleeland

Most of the tools packaged in cygwin are just the standard tools compiled and linked against cygwin. I don't see the value in changing to C++ when you'd still have the need for the adaptation layer provided by cygwin, or the need to import that adaptation layer into each tool.
I think the idea is that Boost itself provides a cross-platform "adaptation layer", through libraries such as Filesystem, Asio, and (hopefully soon) Process. Regards, Nate
participants (6)
-
Andreas Schäfer
-
Artyom Beilis
-
Chris Cleeland
-
gast128
-
Mateusz Loskot
-
Nathan Ridge