ChristosArgyrop,

I think I am 50% done finding a quadrafecta : a simultaneous hit piece against & .

This one only manages to trash talk and , so it has some ways to go.

https://stefanoborini.com/why-r-is-the-new-perl/

PS 1Gotta admit that the point about the object systems in R is somewhat spot on
PS 2 gets a dishonorable mention
PS3 I will continue to find ways to continue using all 4 of the aforementioned languages, as they are all performant and deliver in complementary ways.

BobOHara,

@ChristosArgyrop trash talking PERL is easy - even Larry Wall did it

mjgardner,
@mjgardner@social.sdf.org avatar

@BobOHara @ChristosArgyrop Some examples of Larry taking the piss:

“I’m reminded of the day my daughter came in, looked over my shoulder at some 4 code, and said, 'What is that, swearing?”

"Perl is worse than because people wanted it worse.”

"Guilty as charged. Perl is happily ugly, and happily derivative.”

"The camel has evolved to be relatively self-sufficient. On the other hand, the camel has not evolved to smell good. Neither has Perl.”

ChristosArgyrop,

@mjgardner @BobOHara what is the meaning of happily derivative?

mjgardner,
@mjgardner@social.sdf.org avatar

@ChristosArgyrop @BobOHara By "happily derivative," Larry meant that #Perl intentionally resembles other languages and tools.

In context, he was responding in 1992 (Perl's current version was 4.035) to @bduncan whinging, “It's sorta like #sed, but not. It's sorta like #awk, but not.” https://groups.google.com/g/comp.unix.shell/c/J8fGo0oGUCk/m/LhF4pSEaOMwJ

Edwardsmoon,

@mjgardner @ChristosArgyrop @BobOHara @bduncan

I think it was a deliberate choice to make it easier for people to transition to Perl.

People were using sed, awk, and other tools until Perl came along and could do many jobs all by itself.

I think Randall Schwartz got in trouble on Usenet for popping in with a Perl solution to problems when someone was expecting sed, awk, or something in shell instead.

mjgardner,
@mjgardner@social.sdf.org avatar

@Edwardsmoon @ChristosArgyrop @BobOHara @bduncan Yes, #Perl deliberately borrows familiar things from #Unix culture, including #C, #shell, #sed, and #awk. The goal isn’t necessarily to replace them, but to remove friction when combining their capabilities.

@randalschwartz's Perl solutions to #Usenet Unix questions usually demonstrated such reductions.

ChristosArgyrop,

@Edwardsmoon @mjgardner @BobOHara @bduncan sed and awk are now being taught as a cool skill for bioinformatics, which is kind of nuts because in the 90s was the cool kid.

mjgardner,
@mjgardner@social.sdf.org avatar

@ChristosArgyrop @Edwardsmoon @BobOHara @bduncan It seems like a step backward to go from #Perl to squeezing everything through pipelines of text and forests of escaped #shell metacharacters. Am I missing something?

ChristosArgyrop,

@mjgardner @Edwardsmoon @BobOHara @bduncan It is a step backwards, likely explained by people migrating to #bioconductor (in #rstats) or #biopython and wanting to break from clean from #perl. However neither R nor python provided the facilities that perl has to deal with features in text and flat text files.

mjgardner,
@mjgardner@social.sdf.org avatar

@ChristosArgyrop @Edwardsmoon @BobOHara So… fashion and received wisdom traced back to the turn-of-the-century boom in shitty #Perl, supported by the belief that they're protected from building a shitty melange of #shell, #sed, #awk, #Python, and #Rstats?

ChristosArgyrop,

@mjgardner @Edwardsmoon @BobOHara I guess so. One of the more technical reasons is that most applications in this domain are built as Unix filters that communicate to each other via stdout, so one liners with sed/awk provide an easy way to do throwaway programming. Encouraged by the need to innovate (for fame and grants),ppl are then forced to extremely heavy DSLs and frameworks to control dataflows. The writing for such approaches is already on the wall IMHO (but I will stop rambling nos)

ChristosArgyrop,

@mjgardner @Edwardsmoon @BobOHara These are nice examples of what is being taught nowadays to newbies (and python!)
https://data-skills.github.io/unix-and-bash/03-bash-scripts/index.html

https://practicalcomputing.org/

mjgardner,
@mjgardner@social.sdf.org avatar

@ChristosArgyrop @Edwardsmoon @BobOHara That could have been published twenty years ago with zero changes.

Note the final paragraphs on @GNU_Parallel, a tool written in #Perl.

flyingsaceur,
@flyingsaceur@ioc.exchange avatar

@mjgardner @ChristosArgyrop @Edwardsmoon @BobOHara @bduncan they’re just following the natural progression from shell to awk, with Perl being the inevitable next iteration. Biologists do like to say that ontogeny recapitulates phylogeny

negative12dollarbill,
@negative12dollarbill@techhub.social avatar

@mjgardner @ChristosArgyrop @BobOHara @bduncan
Isn't there a joke in the documentation or source code somewhere, I think about how $/ can't be a regex, where Larry says "I had to let sed still be better at SOMETHING!"

mjgardner,
@mjgardner@social.sdf.org avatar
negative12dollarbill,
@negative12dollarbill@techhub.social avatar

@mjgardner @ChristosArgyrop @BobOHara @bduncan

That's the one, thanks! Perfect example of Larry having a sense of humour about how much he borrowed.

mjgardner, (edited )
@mjgardner@social.sdf.org avatar
Virginicus,

@ChristosArgyrop I use Perl almost every day, too. 😀

jospueyo,
@jospueyo@fosstodon.org avatar

@ChristosArgyrop We got it. You hate #Rstats. However, your opinion is based on a poor knowledge of the ecosystem. But more important, you were irrespective to the thousands of @rstats developers to devote their time to open source software.

ChristosArgyrop,

@jospueyo @rstats Dude, 99.9% of my scientific work is using R. I just enjoy lang wars and I am in my quest for the quadrafecta

jospueyo,
@jospueyo@fosstodon.org avatar

@ChristosArgyrop @rstats In that case, I would recommend using {renv} to create virtual environments, and {box} for importing modules and packages preserving namespace. Also {targets} for your pipelines. With this you will overpass some of the shortcomings you mentioned in your post.

landesfeind,

@jospueyo @ChristosArgyrop @rstats I think you should read Christos toot again. The blog post he linked was written by someone else. Christos seemed to be amused that he found an article that talks thrash on two languages he uses...

jospueyo,
@jospueyo@fosstodon.org avatar

@landesfeind @ChristosArgyrop @rstats You're absolutely right. Please, accept my apologies.

ChristosArgyrop,

@jospueyo @landesfeind @rstats No problem! But I am looking for a quadrafecta. The fellow enthusiast @BRicker has come up with a general template on how to trash many languages at once in a rigorous way, but someone has got to write the piece https://fosstodon.org/@BRicker/111729508056113560

arnaudlerouzic,

@jospueyo @ChristosArgyrop @rstats I respectfully disagree. I like R and use it on an everyday basis, but most of his points are rather reasonable. It is important for a community to be able to handle constructive criticisms, and to understand that decisions like "let's not fix interface bugs" can be detrimental 20 years later.

JorisMeys,
@JorisMeys@mstdn.social avatar

@arnaudlerouzic @jospueyo @ChristosArgyrop @rstats nah. I use both R and (a bit of) Python, and whatever he complains about in R goes for Python as well.

Don't think so? matplotlib.

R has many flaws, but the one it doesn't have is to pretend it's a one-stop-fix-all powerhouse. It's a tool for reproducible and interactive advanced data analysis, and for that, it's still unbeatable.

ChristosArgyrop,

@JorisMeys @arnaudlerouzic @jospueyo @rstats Last paragraph is spot on.

Osunderdog,

@ChristosArgyrop I bought the R Package by Hadley Wickham for reading on an airplane. I tossed the book in the garbage at the end of the journey after uninstalling R.

Building a package in R was worse than Perl.

Mehrad,
@Mehrad@fosstodon.org avatar

@Osunderdog
so nice of you. Next time, try learning swimming from a book too.

FYI, making a R package takes about 5 minutes. Any extra time is because the extra things user has decided to add (like C++)
@ChristosArgyrop

jrosell,
@jrosell@mastodon.social avatar

@Mehrad @Osunderdog @ChristosArgyrop locally could be less than 5min. You only need a DESCRIPTION file and devtools package. I create internal private packages for each analysis project so I can autoload of functions in R folder, run unit tests and create documentation from comments.

Mehrad,
@Mehrad@fosstodon.org avatar

@jrosell interesting approach. is any of your projects publicly available so that I can take a look and hopefully get some inspirations?

  • All
  • Subscribed
  • Moderated
  • Favorites
  • php
  • DreamBathrooms
  • magazineikmin
  • InstantRegret
  • tacticalgear
  • ethstaker
  • rosin
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • Durango
  • thenastyranch
  • ngwrru68w68
  • tester
  • normalnudes
  • cisconetworking
  • Leos
  • love
  • cubers
  • osvaldo12
  • mdbf
  • anitta
  • provamag3
  • modclub
  • GTA5RPClips
  • megavids
  • JUstTest
  • All magazines