Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Building a professional application in Perl?

I've built a set of tools I use in my day-to-day work and I would like to make them look a bit more "professional" in order to sell them to financial institutions.

At the moment these tools are written in Perl and are executed from a DOS command line, it's extremely efficient but it doesn't look very attractive.
So, I would like to add a user interface to it but I don't really know what to use for language knowning that :

  • A Perl CGI interface hosted on the web is not an option since the information to be given as input is quite sensitive.
  • It would be ideal to sell it as a package/executable.
  • I don't really like the Perl/Tk interface.
  • I'm ok with rewritting the application in another language but I would prefere to reuse the main modules in Perl since it's very powerful with regular expressions and lists/arrays.

What would you advise me to do ? Thanks, Lory

like image 966
loeyck Avatar asked Jun 07 '12 07:06

loeyck


People also ask

Is Perl good for web development?

Perl is still well suited for developing modern web apps. The language grows more powerful and easier to use every year, the available libraries are wonderful and keep getting better, and the inventions and discoveries available in modern Perl are unsurpassed.

Does Perl have GUI?

Learn Perl Now! Graphical User Interfaces (or "GUIs") are rich, graphical programs and applications that are displayed on the screen using windows, menus, buttons, input boxes, list boxes and other controls. Perl has extensive support for many GUI libraries.


1 Answers

If you want a non-web-based GUI, and don't like Tk, there's also Wx, which is a wrapper for the wxWidgets GUI toolkit.

However, web applications nowadays can be really easy to create (using a modern framework). Take a Mojolicious application, for example: Mojolicious carries no dependencies other than Perl 5.12.x, and provides its own web server (Hypnotoad). You can start by generating a "Lite::App", which is a simple self-contained single-file application, and then grow it to a bigger distribution later on as the need arises. It even comes with tools to convert your application to a conveniently packaged distribution that can be installed as easily as any CPAN module.

So that leaves the issue of security. User authentication, IP whitelisting, local network only... there are many ways to make a web application "for internal use only" if that's what you need.

You might just throw together a web-application prototype, and once you determine customer interest in your product, invest the substantial time in writing it as a Windows GUI application.

like image 147
DavidO Avatar answered Sep 21 '22 23:09

DavidO