On Thu, Mar 13, 2014 at 05:16:04AM -0700, Linda W wrote: > Alexander Shukaev wrote: > >Dear Linda, > > > >It feels like Perl is not very trendy these days. > Trendy? How _trendy_ is international support? International and perl > support were the first things to be provided as optional modules not because > they were trendy, but considered essential. Perl is usually used for > 'plumbing' type tasks. It hooks things together and can transform > them. However, it's hard to consider 'plumbing' trendy -- but one > wouldn't build > a house w/o plumbing because it isn't 'trend'.
> But you say you haven't seen much in perl+vim -- how have you looked? > I tried searching for vim plugins and scripts and adjuncts on > "search.cpan.org". I came up with about 270 hits. Among those are > things that provide vim functionality to create IDE's debuggers, > packages, use for wiki creation to do LaTex typesetting from vim, website > creation addons, and tons of system administration scripts. Computer > system administration isn't very trendy -- but without it, you'd have > nothing you are using today. No internet, no world connections, no > trends except what are set by the large corporations... > Maybe "utility" or "usefulness" should be considered before trendy (or > at least, as well)? How many filters can you write in python, without > using a separate file? Or -- more precisely, how many python 1-liners > can people easily write and use? Does python even have an option > to execute a line of code from the command line or use it as a > filter? > What is the option in python to write and execute a line of code? > Can you write a 1 line python filter capitalizes all occurrences of > your name and replace all occurances of :-) with their unicode > equivalent, of a white smiling face (☺) using it's name "white > smiling face" .. could you do it in any of the languages you mention? > You can in perl. It's the only language that has full unicode support. > Isn't multicore/multithreaded, 'Trendy'? > Recently someone did a program to test timekeeping in python. It used > 9 threads. I completed in 67.35 seconds using 181.94% cpu (100%=1 core, > so 1.82 cores on a 12 core machine. > As a curiosity I wrote the exact same program in perl to see how it would > perform (cuz I thought the MD5sum was slow)... I was turned on my head. > Same** program in perl took 3.36 seconds using 870% cpu. > **-I didn't use any perl tricks -- I tried to follow the python > example as closely as possible (to see code for each, and > compare, see http://www.perlmonks.org/?node_id=1076596). > So for the 9 threads: > lang #thrds #cores_used %efficency clocktime cputime(Usr+Sys) > python 9 1.82 20.2% 67.35s 122.53s > perl 9 8.70 96.7% 3.36s 29.23 > From the above, stated as percentages or multipliers, > perl is 478% more efficient in making use of multicore resources. > In real time, python takes 64 seconds longer over the base time > that was needed, of 3.36s. Python is 1900% SLOWER. > Someone mentioned python might not be optimal in parallelism due to > threading problems. > So look at the actual amount of CPUtime used for each to do the work. > 122.53/29.23. For heavy number crunching, perl (with max precision > possible in x86-64 HW, takes less than 1/4th the time, i.e. perl > is 4.2x the speed of python. > Python may be trendy, but for getting actual work done, perl is not > only considerably faster, but has most all the libraries needed to do > it's work *built-in*. -- know wondering about what to 'import'. > I could go on for WAY too long, on this, but lets look at who *sets* > the trends... > The most complicated and central function in text processing -- the > regular expression. > Did python choose posix RE or extended RE syntax? Nope. > javascript and python and most modern languages have copied the > perl's regex syntax and features -- and note-- perl has no problem > trying to make things *easier* for python developers. When > perl implemented named subexpressions or captures in Regex's, in > addition to the perl syntax, the Python syntax as added as well > to make things easier for those familiar with that syntax. > Perl's Regex engine has been described as the 'best of breed' -- > with java, javascript, ruby, python et al, all adopting the > Regex syntax developed in Perl. > If it wasn't for the groundwork laid by perl, you wouldn't be > doing scripting in the other languages you are today -- as > they would have had to develop, "at least_, their own regex engine. > So ok, the other languages are more trendy -- but many are where > they are at today because of groundwork laid by perl. > Aside from that, you are not really including the languages (are you?) > Aren't they DLL's that are loaded if present and not loaded if not > used? Are you providing the DLL's for each language? Usually, what > is added is the ability to load the DLL if it is present. So really, > you don't need to include perl -- just the ability to make use of it > at run time if it is present, right? Or did you really link all of > those languages in with your vim binary? If that's the case... > then that's a bigger problem. > For most (all -- not sure about LUA) of those languages, the actual > support for them is in an external library -- so > the users don't actually 'pay' for the languages they don't use as they > are not loaded and -- if they don't use them -- they don't even need to be > on their machine. > >Support for that many languages was added because certain popular > >plugins are written partly (or fully) in these languages rather > >than Vim Script. Python is probably the most popular language for > >extending Vim right now, perhaps after Vim Script. Ruby goes next, > >then Lua. But I've never came across a single plugin which would > >rely on Perl to be honest. May I ask why you think that Perl is so > >important for that Vim distribution? > #2 on the list for http://www.vim.org/sponsor/vote_results.php. > was an IDE. You should check out:. https://metacpan.org/release/Vim-Debug. > It's already been done for perl and from the documentation it should > be extensible to other languages.. But it IS written in perl... > So you honestly didn't come across a single plugin that would rely on perl? > Where did you look? nice rant, Linda, bravo! but all this and no mention of CPAN, while we vim children squabble over the best plugin manager I think python gets picked over perl because of all the bad and obfuscated perl code that's been written over the years and it just scares people -- _|_ _ __|_|_ ._ o| |_(_)(_)|_| ||_)||< | -- -- You received this message from the "vim_use" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_use" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
