Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Re: Writing portable code

by Anonymous Monk
on Mar 09, 2013 at 01:16 UTC ( #1022512=note: print w/replies, xml ) Need Help??

in reply to Writing portable code

Perl has neat ways to manage namespaces, so you can avoid singletons, esp for procedural code

If you're going for conditional compilation optimize the code use Devel::CheckOS();
use constant WIN32 => !! Devel::CheckOS::os_is('MicrosoftWindows');

This probably doesn't apply to your codebase, but a common mental block is developing your app in a single file when it naturally lends itself to multiple files

Write/develop/test the code normally in seperate files -- don't complicate development by limited thinking about distribution :)

You can combine it into a single file for distribution later, using fatpack/pp/ or whatever

PAR/pp can pack your script/modules only without including core modules, but you probably think that's too heavy (requires installing/packing PAR)

fatpack is lighter, and you can fatpack YourApp::Linux/YourApp::Windows, and offer downloads

or you can use 'cat' with autosplit/autoload like BrowserUk suggests

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1022512]
[Eily]: Hi!
[Happy-the-monk]: Discipulus: si!
[Eily]: Discipulus 2018 has to be better than 2017. The latter was kinda odd, but not we got even :D
[Corion]: Eily++ # basic number theory

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (9)
As of 2018-01-23 08:54 GMT
Find Nodes?
    Voting Booth?
    How did you see in the new year?

    Results (242 votes). Check out past polls.