SlideShare a Scribd company logo
1 of 18
Why I am
Passionate
About Perl
      brian d foy
brian@stonehenge.com
Perl Experts
   Why They Are Passionate
         About Perl
http://www.odinjobs.com/blogs/careers/entry/
         perl_experts_why_they_are
The Perl Review
Volume 1, Issue 3                                 Summer 2005
                                                                  The Perl Review
                                                                  Volume 2, Issue 0                                        Fall 2005
                                                                                                                                                                           THE

                                                                                                                                                                   Winter 2007
                                                                                                                                                                                                                                                                             PERL REVIEW                                                                                                                                                                                                                                                                                                                                                                                                                                                              chart_execution




                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    leavesub
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             Volume 4, Issue 1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     lineseq




                                                                                                                                                                                                                                                                   class                                                                                                                                                                                                                 aassign                                                                                nextstate          nextstate                  print                     nextstate              print            nextstate                null              padhv              nextstate             aassign              nextstate                  nextstate                       aassign              nextstate                          print          nextstate                leaveloop




                                                                                                                                                                                                                                                          leavesub                                                                                                                                                                                                      list                   list                                                                     pushmark                join                  const             pushmark                           stringify        padav                padav                                                          list                 list                            pushmark                padav                            list                 list             pushmark              const




                                                                                                                                                                                                                                                           lineseq                                                                                                                                                      entersub                                     pushmark                                                                        pushmark              const             mapwhile                            const                   rv2sv                                       eq                                    return                                                    repeat                  pushmark                  pushmark                  list                 gv                                                                            rv2av          pushmark




                                                                                                                                                                                  return           nextstate             nextstate              sassign            nextstate           subst            sassign            nextstate                                         shift                        rv2cv                               pushmark               pushmark              padav                  padav            pushmark                              null                                                                   gvsv                                                               and                  pushmark                   hslice               pushmark                                       list                                             enteriter                      padav             padsv            pushmark                    gv                                              null




                                                                                                                                                                                  padsv            pushmark                 padsv                                      padsv            const                                       gv                                                               gv              list                     gv                                                                                             mapstart                    null                                                    const                       concat                                                                        mapwhile                padhv                pushmark               padav                  const               pushmark                                                                                                                                                                    and




                                                                                                                                                                                                                                   ref               padsv                                                                        rv2av                                                                     rv2av                                                                                                                                                        scope                                                                               concat              pushmark                                       null                           padav              pushmark                                                                                                                                                                                                                                 iter            lineseq



                                                                                                                                                                                                                                                                                                                                                                                                    chart_entrypoints
                                                                                                                                                                                                                                                                                                        padsv                   shift                                                                                                                                                                                                                        stringify           nextstate                                                                                                                                      null                  mapstart                                                                                                                                                                                                             unstack             nextstate             nextstate                null                 null              nextstate                                                                                             print



                                                                                                                                                                                                                                                                                                                                                                                                leavesub
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   rv2sv                                            const                                                                                                                                   scope                                                                                                                                                                                                                       rv2sv                     padhv                                                                                               pushmark                   rv2sv           method_named                               pushmark                 const           concat



                                                                                                                                                                                                                                                                                                                                                                                                    lineseq
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  rv2sv                      concat             pushmark                                                                                                                           rv2sv               nextstate                                                                                                                                                                                                 rv2sv                                          exists                        next                                                                       gvsv           entersub                                                                     const            join                             rv2sv




                                                                                                                                                                                                                                                                                   pushmark                                                                                     const
                                                                                                                                                                                                                                                                                                                                                                     print              nextstate             sassign            nextstate
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   gvsv                                                                                                                                                                            rv2sv                                                                                                                                                                                                                         gvsv                             helem                                       and                                                                                          and                                                     pushmark                          const           mapwhile             leave



                                                                                                                                                                                                                                                                                                                                                           concat            pushmark                                                     gv                                                                                                                                                                                                                                                                                              build_root_records
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   gvsv                                                                                                                                                                                                                                                                                                                                            or                                      rv2sv           pushmark                   entersub                   null                                                    entersub            enter        nextstate



                                                                                                                                                                                                                                                                                                             helem              const                                                                                                   rv2av                                                                                                                                                                                                                                                                                             leavesub
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           next                 null                                       gvsv                                                   mapstart                 null                      rv2sv            method_named              pushmark



                                                                                                                                                                                                                                                                                                     const             concat                      padsv                                                    padsv                     shift                                                                                                                                                                                                                                                                                                lineseq
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                pushmark               rv2sv             method_named                      scope                      gvsv



                                                                                                                                                                                                                                                                    helem           const             concat                            rv2hv                                                                                                              return
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          rv2av                                      nextstate             aassign
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     pushmarknextstate             aassign             nextstate               padav            nextstate             nextstate            leaveloop               nextstate              nextstate            nextstate                leaveloop              nextstate                nextstate                padhv            nextstate                leaveloop                nextstate                                                            sassign              nextstate                                              aassign
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        gvsv                                 nextstate              stringify



                                                                                                                                                                                                                                                            const            rv2hv                    concat                       const                                                                                         refgen                  pushmark                                                   list                      list                                  list                     list                                                                                                          pushmark                  keys                                                                                     pushmark              padav                                                                   pushmark                                                       padsv                  const               entersub                            list               list
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              const                                            rv2sv



                                                                                                                                                                                                                                                                             padsv                                                 concat             pushmark                                                                  list                                                            entersub                                  pushmark                                                       entersub                pushmark                                                               pushmark                   list             padhv                  gv                                                      pushmark                 list                 gv                                       pushmark               list             gv                              pushmark                           pushmark                  rv2cv                                                    grepwhile
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              pushmark               concat                     rv2sv



                                                                                                                                                                                                                                                                  helem                         const                                                                                                     padav             pushmark                  padhv                            rv2cv                         pushmark                pushmark                 padhv          pushmark                                  rv2cv            pushmark                           null                                   enteriter                                                               null                                                             enteriter                                                            enteriter                             null              pushmark                 padav                   gv                list                  null              padav                                                pushmark
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                gvsv



                                                                                                                                                                                                                                         padav                                padsv            concat        padsv
                                                                                                                                                                                                                                                                                                                 const                                                           pushmark                                                                                      list       gv          gv                                                                                                               list                gv                                   and    null                                                                                                       and                                                                                                                                                                         and                                                         grepstart                                      null




                                                                                                                                                                                                                                                    const                  rv2hv                             concat          pushmark                                                                                                                                                                                                                                                                                                                     lineseq               iter                                                                                                          lineseq                      iter                                                                                                                                            iter             lineseq                                                                                  scope


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              anon_1
                                                                                                                                                                                                                                                                               rv2sv                    concat                                                                                                                                                                                                                                                                                                                          push             unstack                                                                                                                                 push                 unstack                                                                                                                                                           unstack              subst                                                        not              nextstate


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       leavesub
                                                                                                                                                                                                                                                  const                                  concat              padsv          stringify              stringify                                                                                                                                                                                                                                                 srefgen                  pushmark              padav                                                                                                          padav             pushmark                      srefgen                                                                                                                                                                       const               helem                                                        padhv                       rv2sv




                                                                                                                                                                                                                                    stringify             concat                      const             scope             rv2hv
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       lineseq
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             rv2sv             const             const                         list                  pushmark            helem               const
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       and     helem                                   concat              const            const            pushmark                        list                         helem             const               helem                                                                                                                    const             rv2hv                                          helem                  gv


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          push               nextstate
                                                                                                                                                                                                                                                           concat            pushmark                        helem          nextstate                                                                                                                                                                                                         gvsv                                                           padhv                   anonhash            rv2sv                         padhv            rv2sv                       postinc                const                                    gv                 anonhash                                                  gv                                                                                                                                                        rv2sv                          postinc                            rv2sv


                                                                                                                                                                                                                                                                                                                                                                                                                                                                      padav               shift              pushmark
                                                                                                                                                                                             rv2sv                                 concat                                                                                                               const                               helem                                                                                                                                                                                                                                                         gvsv                                          gvsv                           padsv                                                                   rv2sv                                                          rv2sv                                                                                                                                                           gv                                                             rv2hv             scope                          const

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        graph_cv
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          gv
                                                                                                                                                                                           scope                     concat                                 const                                                                       padsv           concat              const                                                                                                                                                                                                                                                                                                                                                                                                                                           rv2hv                         const                   rv2hv                      const                                                                                                                                                                                               nextstate             helem




                                                                                                                                                                                 nextstate                       helem                                                                                                                                      rv2hv                                    const
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 rv2av
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          iter                                                          lineseq                                                                                                                                                                                                                                                                   leavesub




                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    lineseq

                                                                                                                                                                                            padsv

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       sassign                                                                               entersub                                                                                    nextstate                  nextstate              nextstate             entersub                 nextstate            aassign           entersub           nextstate               entersub              nextstate               print              nextstate               nextstate               print            entersub                nextstate                                        aassign          nextstate

                                                                                                                                                                                               rv2hv                  const

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     helem                          rv2cv               padav                                   pushmark               rv2sv              const             pushmark                                rv2cv             padav                                         list                list                                padav                 rv2cv                               pushmark                      padav               rv2cv                             pushmark                    concat             pushmark                  pushmark              const                          padsv            rv2cv                              pushmark                      list                  list



                                                                                                                                                                                                                                         walkoptree_simple                                                                                                                                                                                     unstack                                                                        nextstate    helem                                      list                gv        nextstate                       concat                                  padsv                null
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   padsv                  list               gv                   pushmark  null          entersub                                                 nextstate                         gv                list                                                             gv                 list                                                 helem                const                                                                               gv                  list                                                              rv2av           pushmark


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         chart_ranks
                                                                                                                                                                                                                                                                                   leavesub
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          const            rv2hv             const                                                                        scope                       rv2hv                       const              rv2hv                 helem              pushmark                               rv2cv                            pushmark                 padav                                                                                                                                                                                                      concat                 const                   padsv                                                                                        padsv            pushmark                 gv


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      leavesub
                                                                                                                                                                                                                                                                                   lineseq
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           padsv                                                                                         nextstate                                                helem                                                     padsv                  list                  gv                                                                                                                                                                                                                                                const                   concat                   rv2hv             pushmark


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      lineseq
                                                                                                                                                                                                      nextstate              aassign                      null          nextstate             nextstate          entersub               null           nextstate
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 const                rv2hv                                                                                                                                                                                                                                                                                                 const                 stringify



                                                                                                                                                                          list                                              list                                     pushmark                padsv           const           method_named                          rv2sv         pushmark             padsv                               rv2cv               padsv     padhv                                     padsv
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           leaveloop   pushmark                      nextstate                print         nextstate             aassign             nextstate
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           concat                 const


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            pushmark                   const                padav          pushmark                 list                list
                                                                                                                                                        pushmark       rv2av                                                                                                            entersub                        aassign                                                                                         list                  padsv                                                               rv2sv                               bit_and
http://www.bbspot.com/News/2006/08/language_quiz.php
• The person who introduced me to
  Perl showed me that…
• I first starting using Perl to…
• I kept using Perl because…
• I canʼt stop thinking about Perl…
• Iʼm still using Perl because…
• I get other people to use Perl by…
• I also program in … and …, but I
  like Perl better since…
Jerry Rocteur
http://www.rocteur.cc/geeklog/article.php?story=20080510203224474
Alberto Simões
http://use.perl.org/~ambs/journal/36357
Jacinta Richardson
http://use.perl.org/~jarich/journal/36365
Grant McLean
http://use.perl.org/~grantm/journal/36506
Renée Bäcker
http://use.perl.org/~reneeb/journal/36366
Rafael Garcia-Suarez
http://consttype.blogspot.com/2008/05/why-people-are-passionate-about-perl.html
brian d foy

More Related Content

Similar to Why I Am Passionate About Perl

Neighborhoods2010
Neighborhoods2010Neighborhoods2010
Neighborhoods2010tkaufm5050
 
DBA Verde - Blue Planet Run
DBA Verde - Blue Planet RunDBA Verde - Blue Planet Run
DBA Verde - Blue Planet RunLa Red DBAccess
 
Company crt connected
Company crt connectedCompany crt connected
Company crt connectedERIK MANO
 
Jingle bells alessia&clarissa
Jingle bells   alessia&clarissaJingle bells   alessia&clarissa
Jingle bells alessia&clarissajoshua1900
 
Strategic Talent Acquisition-brochure
Strategic Talent Acquisition-brochureStrategic Talent Acquisition-brochure
Strategic Talent Acquisition-brochureHilina Legesse
 
Steel Column Details
Steel Column DetailsSteel Column Details
Steel Column Detailsmariacadtech
 
S2 swingin the night away
S2 swingin the night awayS2 swingin the night away
S2 swingin the night awaycantaschor
 
North Central Pa Hiking Trails
North Central Pa Hiking TrailsNorth Central Pa Hiking Trails
North Central Pa Hiking Trailskevinburkman
 
SNC Casos Práticos
SNC   Casos PráticosSNC   Casos Práticos
SNC Casos PráticosMaria Santos
 
맥스컴 키노트 강의
맥스컴 키노트 강의맥스컴 키노트 강의
맥스컴 키노트 강의Jinho Jung
 
Angel beats! 108 - my most precious treasure
Angel beats!   108 - my most precious treasureAngel beats!   108 - my most precious treasure
Angel beats! 108 - my most precious treasureMarlon Saldaña Olguin
 
Citrix Presentation
Citrix PresentationCitrix Presentation
Citrix Presentationyoon1
 
Algonquin with notes
Algonquin with notesAlgonquin with notes
Algonquin with notessteevedoubt
 
395828 pachelbel-canon-in-d-violin-i-piano
395828 pachelbel-canon-in-d-violin-i-piano395828 pachelbel-canon-in-d-violin-i-piano
395828 pachelbel-canon-in-d-violin-i-pianoLeandro Meira da Silva
 
Módulo 5 fuga libre a dos voces
Módulo 5 fuga libre a dos vocesMódulo 5 fuga libre a dos voces
Módulo 5 fuga libre a dos vocesencame
 

Similar to Why I Am Passionate About Perl (20)

Neighborhoods2010
Neighborhoods2010Neighborhoods2010
Neighborhoods2010
 
DBA Verde - Blue Planet Run
DBA Verde - Blue Planet RunDBA Verde - Blue Planet Run
DBA Verde - Blue Planet Run
 
Company crt connected
Company crt connectedCompany crt connected
Company crt connected
 
Jingle bells alessia&clarissa
Jingle bells   alessia&clarissaJingle bells   alessia&clarissa
Jingle bells alessia&clarissa
 
Strategic Talent Acquisition-brochure
Strategic Talent Acquisition-brochureStrategic Talent Acquisition-brochure
Strategic Talent Acquisition-brochure
 
Steel Column Details
Steel Column DetailsSteel Column Details
Steel Column Details
 
S2 swingin the night away
S2 swingin the night awayS2 swingin the night away
S2 swingin the night away
 
North Central Pa Hiking Trails
North Central Pa Hiking TrailsNorth Central Pa Hiking Trails
North Central Pa Hiking Trails
 
SNC Casos Práticos
SNC   Casos PráticosSNC   Casos Práticos
SNC Casos Práticos
 
Adele album
Adele albumAdele album
Adele album
 
맥스컴 키노트 강의
맥스컴 키노트 강의맥스컴 키노트 강의
맥스컴 키노트 강의
 
Angel beats! 108 - my most precious treasure
Angel beats!   108 - my most precious treasureAngel beats!   108 - my most precious treasure
Angel beats! 108 - my most precious treasure
 
Citrix Presentation
Citrix PresentationCitrix Presentation
Citrix Presentation
 
Algonquin with notes
Algonquin with notesAlgonquin with notes
Algonquin with notes
 
395828 pachelbel-canon-in-d-violin-i-piano
395828 pachelbel-canon-in-d-violin-i-piano395828 pachelbel-canon-in-d-violin-i-piano
395828 pachelbel-canon-in-d-violin-i-piano
 
Leicester north
Leicester northLeicester north
Leicester north
 
Leicester north
Leicester northLeicester north
Leicester north
 
Mi Ciudad
Mi CiudadMi Ciudad
Mi Ciudad
 
Ss bugle boy
Ss bugle boySs bugle boy
Ss bugle boy
 
Módulo 5 fuga libre a dos voces
Módulo 5 fuga libre a dos vocesMódulo 5 fuga libre a dos voces
Módulo 5 fuga libre a dos voces
 

More from brian d foy

Conferences for Beginners presentation
Conferences for Beginners presentationConferences for Beginners presentation
Conferences for Beginners presentationbrian d foy
 
20 years in Perl
20 years in Perl20 years in Perl
20 years in Perlbrian d foy
 
PrettyDump Perl 6 (London.pm)
PrettyDump Perl 6 (London.pm)PrettyDump Perl 6 (London.pm)
PrettyDump Perl 6 (London.pm)brian d foy
 
Dumping Perl 6 (French Perl Workshop)
Dumping Perl 6 (French Perl Workshop)Dumping Perl 6 (French Perl Workshop)
Dumping Perl 6 (French Perl Workshop)brian d foy
 
Perl v5.26 Features (AmsterdamX.pm)
Perl v5.26 Features (AmsterdamX.pm)Perl v5.26 Features (AmsterdamX.pm)
Perl v5.26 Features (AmsterdamX.pm)brian d foy
 
Dumping Perl 6 (AmsterdamX.pm)
Dumping Perl 6 (AmsterdamX.pm)Dumping Perl 6 (AmsterdamX.pm)
Dumping Perl 6 (AmsterdamX.pm)brian d foy
 
6 more things about Perl 6
6 more things about Perl 66 more things about Perl 6
6 more things about Perl 6brian d foy
 
6 things about perl 6
6 things about perl 66 things about perl 6
6 things about perl 6brian d foy
 
Perl 5.28 new features
Perl 5.28 new featuresPerl 5.28 new features
Perl 5.28 new featuresbrian d foy
 
The Surprisingly Tense History of the Schwartzian Transform
The Surprisingly Tense History of the Schwartzian TransformThe Surprisingly Tense History of the Schwartzian Transform
The Surprisingly Tense History of the Schwartzian Transformbrian d foy
 
Perl Power Tools - Saint Perl 6
Perl Power Tools - Saint Perl 6Perl Power Tools - Saint Perl 6
Perl Power Tools - Saint Perl 6brian d foy
 
Perl Bag of Tricks - Baltimore Perl mongers
Perl Bag of Tricks  -  Baltimore Perl mongersPerl Bag of Tricks  -  Baltimore Perl mongers
Perl Bag of Tricks - Baltimore Perl mongersbrian d foy
 
The Whitespace in the Perl Community
The Whitespace in the Perl CommunityThe Whitespace in the Perl Community
The Whitespace in the Perl Communitybrian d foy
 
CPAN Workshop, Chicago 2014
CPAN Workshop, Chicago 2014CPAN Workshop, Chicago 2014
CPAN Workshop, Chicago 2014brian d foy
 
Parsing JSON with a single regex
Parsing JSON with a single regexParsing JSON with a single regex
Parsing JSON with a single regexbrian d foy
 
Reverse Installing CPAN
Reverse Installing CPANReverse Installing CPAN
Reverse Installing CPANbrian d foy
 
Advanced modulinos
Advanced modulinosAdvanced modulinos
Advanced modulinosbrian d foy
 
Advanced modulinos trial
Advanced modulinos trialAdvanced modulinos trial
Advanced modulinos trialbrian d foy
 

More from brian d foy (20)

Conferences for Beginners presentation
Conferences for Beginners presentationConferences for Beginners presentation
Conferences for Beginners presentation
 
20 years in Perl
20 years in Perl20 years in Perl
20 years in Perl
 
PrettyDump Perl 6 (London.pm)
PrettyDump Perl 6 (London.pm)PrettyDump Perl 6 (London.pm)
PrettyDump Perl 6 (London.pm)
 
Dumping Perl 6 (French Perl Workshop)
Dumping Perl 6 (French Perl Workshop)Dumping Perl 6 (French Perl Workshop)
Dumping Perl 6 (French Perl Workshop)
 
Perl v5.26 Features (AmsterdamX.pm)
Perl v5.26 Features (AmsterdamX.pm)Perl v5.26 Features (AmsterdamX.pm)
Perl v5.26 Features (AmsterdamX.pm)
 
Dumping Perl 6 (AmsterdamX.pm)
Dumping Perl 6 (AmsterdamX.pm)Dumping Perl 6 (AmsterdamX.pm)
Dumping Perl 6 (AmsterdamX.pm)
 
6 more things about Perl 6
6 more things about Perl 66 more things about Perl 6
6 more things about Perl 6
 
6 things about perl 6
6 things about perl 66 things about perl 6
6 things about perl 6
 
Perl 5.28 new features
Perl 5.28 new featuresPerl 5.28 new features
Perl 5.28 new features
 
The Surprisingly Tense History of the Schwartzian Transform
The Surprisingly Tense History of the Schwartzian TransformThe Surprisingly Tense History of the Schwartzian Transform
The Surprisingly Tense History of the Schwartzian Transform
 
Perl Power Tools - Saint Perl 6
Perl Power Tools - Saint Perl 6Perl Power Tools - Saint Perl 6
Perl Power Tools - Saint Perl 6
 
Perl Bag of Tricks - Baltimore Perl mongers
Perl Bag of Tricks  -  Baltimore Perl mongersPerl Bag of Tricks  -  Baltimore Perl mongers
Perl Bag of Tricks - Baltimore Perl mongers
 
The Whitespace in the Perl Community
The Whitespace in the Perl CommunityThe Whitespace in the Perl Community
The Whitespace in the Perl Community
 
CPAN Workshop, Chicago 2014
CPAN Workshop, Chicago 2014CPAN Workshop, Chicago 2014
CPAN Workshop, Chicago 2014
 
Parsing JSON with a single regex
Parsing JSON with a single regexParsing JSON with a single regex
Parsing JSON with a single regex
 
Reverse Installing CPAN
Reverse Installing CPANReverse Installing CPAN
Reverse Installing CPAN
 
Advanced modulinos
Advanced modulinosAdvanced modulinos
Advanced modulinos
 
Advanced modulinos trial
Advanced modulinos trialAdvanced modulinos trial
Advanced modulinos trial
 
Bag of tricks
Bag of tricksBag of tricks
Bag of tricks
 
I ❤ CPAN
I ❤ CPANI ❤ CPAN
I ❤ CPAN
 

Recently uploaded

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightSafe Software
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaWSO2
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityVictorSzoltysek
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceIES VE
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governanceWSO2
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingWSO2
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 

Recently uploaded (20)

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps Productivity
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Why I Am Passionate About Perl

  • 1. Why I am Passionate About Perl brian d foy brian@stonehenge.com
  • 2.
  • 3. Perl Experts Why They Are Passionate About Perl http://www.odinjobs.com/blogs/careers/entry/ perl_experts_why_they_are
  • 4.
  • 5.
  • 6.
  • 7. The Perl Review Volume 1, Issue 3 Summer 2005 The Perl Review Volume 2, Issue 0 Fall 2005 THE Winter 2007 PERL REVIEW chart_execution leavesub Volume 4, Issue 1 lineseq class aassign nextstate nextstate print nextstate print nextstate null padhv nextstate aassign nextstate nextstate aassign nextstate print nextstate leaveloop leavesub list list pushmark join const pushmark stringify padav padav list list pushmark padav list list pushmark const lineseq entersub pushmark pushmark const mapwhile const rv2sv eq return repeat pushmark pushmark list gv rv2av pushmark return nextstate nextstate sassign nextstate subst sassign nextstate shift rv2cv pushmark pushmark padav padav pushmark null gvsv and pushmark hslice pushmark list enteriter padav padsv pushmark gv null padsv pushmark padsv padsv const gv gv list gv mapstart null const concat mapwhile padhv pushmark padav const pushmark and ref padsv rv2av rv2av scope concat pushmark null padav pushmark iter lineseq chart_entrypoints padsv shift stringify nextstate null mapstart unstack nextstate nextstate null null nextstate print leavesub rv2sv const scope rv2sv padhv pushmark rv2sv method_named pushmark const concat lineseq rv2sv concat pushmark rv2sv nextstate rv2sv exists next gvsv entersub const join rv2sv pushmark const print nextstate sassign nextstate gvsv rv2sv gvsv helem and and pushmark const mapwhile leave concat pushmark gv build_root_records gvsv or rv2sv pushmark entersub null entersub enter nextstate helem const rv2av leavesub next null gvsv mapstart null rv2sv method_named pushmark const concat padsv padsv shift lineseq pushmark rv2sv method_named scope gvsv helem const concat rv2hv return rv2av nextstate aassign pushmarknextstate aassign nextstate padav nextstate nextstate leaveloop nextstate nextstate nextstate leaveloop nextstate nextstate padhv nextstate leaveloop nextstate sassign nextstate aassign gvsv nextstate stringify const rv2hv concat const refgen pushmark list list list list pushmark keys pushmark padav pushmark padsv const entersub list list const rv2sv padsv concat pushmark list entersub pushmark entersub pushmark pushmark list padhv gv pushmark list gv pushmark list gv pushmark pushmark rv2cv grepwhile pushmark concat rv2sv helem const padav pushmark padhv rv2cv pushmark pushmark padhv pushmark rv2cv pushmark null enteriter null enteriter enteriter null pushmark padav gv list null padav pushmark gvsv padav padsv concat padsv const pushmark list gv gv list gv and null and and grepstart null const rv2hv concat pushmark lineseq iter lineseq iter iter lineseq scope anon_1 rv2sv concat push unstack push unstack unstack subst not nextstate leavesub const concat padsv stringify stringify srefgen pushmark padav padav pushmark srefgen const helem padhv rv2sv stringify concat const scope rv2hv lineseq rv2sv const const list pushmark helem const and helem concat const const pushmark list helem const helem const rv2hv helem gv push nextstate concat pushmark helem nextstate gvsv padhv anonhash rv2sv padhv rv2sv postinc const gv anonhash gv rv2sv postinc rv2sv padav shift pushmark rv2sv concat const helem gvsv gvsv padsv rv2sv rv2sv gv rv2hv scope const graph_cv gv scope concat const padsv concat const rv2hv const rv2hv const nextstate helem nextstate helem rv2hv const rv2av iter lineseq leavesub lineseq padsv sassign entersub nextstate nextstate nextstate entersub nextstate aassign entersub nextstate entersub nextstate print nextstate nextstate print entersub nextstate aassign nextstate rv2hv const helem rv2cv padav pushmark rv2sv const pushmark rv2cv padav list list padav rv2cv pushmark padav rv2cv pushmark concat pushmark pushmark const padsv rv2cv pushmark list list walkoptree_simple unstack nextstate helem list gv nextstate concat padsv null padsv list gv pushmark null entersub nextstate gv list gv list helem const gv list rv2av pushmark chart_ranks leavesub const rv2hv const scope rv2hv const rv2hv helem pushmark rv2cv pushmark padav concat const padsv padsv pushmark gv leavesub lineseq padsv nextstate helem padsv list gv const concat rv2hv pushmark lineseq nextstate aassign null nextstate nextstate entersub null nextstate const rv2hv const stringify list list pushmark padsv const method_named rv2sv pushmark padsv rv2cv padsv padhv padsv leaveloop pushmark nextstate print nextstate aassign nextstate concat const pushmark const padav pushmark list list pushmark rv2av entersub aassign list padsv rv2sv bit_and
  • 8.
  • 9.
  • 11. • The person who introduced me to Perl showed me that… • I first starting using Perl to… • I kept using Perl because… • I canʼt stop thinking about Perl… • Iʼm still using Perl because… • I get other people to use Perl by… • I also program in … and …, but I like Perl better since…