SlideShare a Scribd company logo
1 of 20
Download to read offline
The best web language.
                   language
  Which is the best programming language for you?



                                        Perl?
PHP?
       OR
Python? Ruby?
      ASP?
The one true answer is:

             LOL Code!!1one




LOLCode is an esoteric language by geeks with too much free time.
There are multiple lolcode interperters, parsers, and even compilers.




                                                            “Laser Cats”
I wrote the first working lolcode parser
                     And the first lolcode powered website.
                     I am one of those geeks.
“LOLCode By O'RLY”
Basic Usage

              CODE SNIPPET
                !BEWARE!



HAI <- Opening tag

MUST HAS STDIO <- Require File

VISIBLE quot;HAI WORLD!quot; <- Print

KTHXBYE <- Closing Tag
Variables
                CODE SNIPPET
                  !BEWARE!


I HAS COLOR1 <- Initiate Variable

I HAS COLOR2 IZ GREEN
             ^- Initiate and Set Var
COLOR1 IZ RED
           ^Set existing var
More Variables
             CODE SNIPPET
               !BEWARE!

VISIBLE “COLOR IS &COLOR1&”
      ^- Print with Var replacement.
IVAR IZ 1 < Set var to 1.
IVAR UPUP!< Increment twice.
IVAR UPUP!
          < IVAR is 3.

BTW THIS IS A COMMENT
     ^- Use BTW to comment line.
Control Structures
                CODE SNIPPET
                  !BEWARE!


IZ &IVAR& == 1           < IF.
    BTW IF
    VISIBLE quot;YEAH RLYquot;
    VISIBLE __SKY__ <-Print Constant
NOWAI
    BTW ELSE        <- ELSE
    VISIBLE quot;NOWAIquot;
KTHX
IF Control Structure
               CODE SNIPPET
                 !BEWARE!
IZ &IVAR& == 1 < IF.
    BTW IF
    VISIBLE quot;YA RLYquot;

ORLY &IVAR& == 2
                        < ELSEIF
    VISIBLE quot;ORLYquot;

ORLY &IVAR& == 2
                              < ELSEIF
    VISIBLE quot;ORLY RLYquot;

NOWAI
                          <- ELSE
    VISIBLE quot;NOWAIquot;
KTHX
Arrays
                  CODE SNIPPET
                    !BEWARE!
ARRAY IZ BUCKET
                    < Create Bucket
^Variable Name

       0 FISH quot;zeroquot; !! < Numerical

       1 FISH quot;onequot; !! < Keys

                                 < String Keys
       two FISH quot;twoquot; !!

BUCKET

                                 <- Prints “two”
VISIBLE &ARRAY#two&
Multidemensional Arrays
                   CODE SNIPPET
                     !BEWARE!
ARRAY IZ BUCKET
                          < Create Bucket
^Variable Name

       0 FISH quot;zeroquot; !!

       three FISH IZ BAG <- Use bag or buckets
           !! FISH quot;threequot; !!
           !! FISH quot;twoquot; !!
                   ^New Dimension
       BAG

BUCKET

                                  <- Prints “two”
VISIBLE &ARRAY#two,1&
BAG Arrays
                   CODE SNIPPET
                     !BEWARE!
ARRAY IZ BUCKET
                          < Create Bucket
^Variable Name

       0 FISH quot;zeroquot; !!

       three FISH IZ BAG <Create           BAG
           !! FISH quot;threequot; !!
           !! FISH quot;twoquot; !!
       BAG ^BAG uses auto
                 incremented keys.
BUCKET

                                  <- Prints “two”
VISIBLE &ARRAY#two,1&
Looping
                 CODE SNIPPET
ARRAY IZ BUCKET    !BEWARE!
                                < Create Bucket
    0 FISH quot;zeroquot; !!
    1 FISH quot;1quot; !!
    2 FISH quot;2quot; !!
BUCKET

                                    <- Foreach
IM IN UR ARRAY ITZA NUMBA

       VISIBLE quot;&NUMBA&!quot;
         ^Prints “zero!1!2!”
KTHX
Functions
                CODE SNIPPET
                  !BEWARE!


SO IM LIKE UPPING WITH VAR VAR2=0
          ^Var Name            ^Arguments   ^Default
                                             Value
    VAR UPUP!
             <- Increment VAR
    I FOUND MAH VAR<- Return VAR

KTHX <End Function

VISIBLE quot;FOUR UP? ITZA quot;.UPPING(4)
        ^Prints “5”
Advanced Features
                 CODE SNIPPET
                   !BEWARE!
THEVAR IZ GOLD

VARNAME IZ THEVAR

VISIBLE &&VARNAME&& <-Prints “GOLD”
         ^- Variable Variable

ALWAYZ SKY IZ BLUE <- Set Constant

VISIBLE __SKY__ <- Print Constant
Embed in HTML
                CODE SNIPPET
<html>            !BEWARE!
<head>
<title>LOL Power</title>
                               <- HTML
</head>
<body>                          Subset of XML



HAI
MUST HAS STDIO
VISIBLE quot;<!-- Copyright 2007 Jeff
Jones, www.tetraboy.com -->nquot;
VISIBLE quot;HAI WORLD!quot;
KTHXBYE
          ^ Code in tags is parsed.
</body>
</html>
SQLite Databases
                   CODE SNIPPET
                     !BEWARE!
CAN HAS SQL? <- Include SQL Lib
DBASE IZ GETDB('lolz')<-Select      DB File
FUNNAHS IZ DBUCKET(
               ^Get Array from DB
    &DBASE&,

    quot;CAN I PLZ GET joke ALL UP IN funnahsquot;
)
     ^LOL-SQL.
     “Select joke from funnahs”
SQLite Databases, Part Deux
              CODE SNIPPET
                !BEWARE!
CAN HAS SQL? <- Get Array from DB
DBASE IZ GETDB('lolz')
FUNNAHS IZ DBUCKET(&DBASE&,quot;CAN I PLZ
GET joke ALL UP IN funnahsquot;)

                             < Loop It
IM IN UR FUNNAHS ITZA JOKE

 VISIBLE quot;<P>quot;.&JOKE#joke&.quot;</P>quot;

       ^Print each joke
KTHX
       (dbucket returns assoc array)
Tetra LOLCode Parser

How to make a new lang work?

With little to no work?
    Convert it to PHP!
How?
 preg_replace!
 function lol_core_parse($code)

 Takes incoming code and runs through 36 regular expressions

 /e is your new best friend.
Tetra LOLCode
       Works with apache!
Easiest way to run .lol on apache?
  Set .lol to parse as PHP
  Use PHP's prepend/append
  Output Buffering to catch LOL
  Parse src
  Write source to temporary file
  Include temporary file
More info?


http://www.lolcode.com
Official Website


http://www.tetraboy.com/lolcode/
My LOLCode website, powred by LOLCODE!


irc.freenode.net #lolcode
Community IRC Channel. (I Hope noone still goes there..)


MailChimp LOL Parser
Based on my lolcode parser, download their improved version.

More Related Content

Viewers also liked

Ivars Brīvers konferencē "Latvijas tautsaimiecības atdzimšanai"
Ivars Brīvers konferencē "Latvijas tautsaimiecības atdzimšanai"Ivars Brīvers konferencē "Latvijas tautsaimiecības atdzimšanai"
Ivars Brīvers konferencē "Latvijas tautsaimiecības atdzimšanai"nacionālisti LV
 
Kom i gång med din personliga marknadsföring
Kom i gång med din personliga marknadsföringKom i gång med din personliga marknadsföring
Kom i gång med din personliga marknadsföringPelle Mårtenson
 
Kom i gång med din personliga marknadsföring
Kom i gång med din personliga marknadsföringKom i gång med din personliga marknadsföring
Kom i gång med din personliga marknadsföringPelle Mårtenson
 
Personlig marknadsföring på Startaegetmässan
Personlig marknadsföring på StartaegetmässanPersonlig marknadsföring på Startaegetmässan
Personlig marknadsföring på StartaegetmässanPelle Mårtenson
 
Ivo Rubīns konferencē "Latvijas tautsaimiecības atdzimšanai"
Ivo Rubīns konferencē "Latvijas tautsaimiecības atdzimšanai"Ivo Rubīns konferencē "Latvijas tautsaimiecības atdzimšanai"
Ivo Rubīns konferencē "Latvijas tautsaimiecības atdzimšanai"nacionālisti LV
 
Edelman digital + sxsw 2016 lançamento
Edelman digital + sxsw 2016 lançamentoEdelman digital + sxsw 2016 lançamento
Edelman digital + sxsw 2016 lançamentoDaniel Rimoli
 
Starting An Open Source Project
Starting An Open Source ProjectStarting An Open Source Project
Starting An Open Source ProjectErik Ralston
 
Introduction to CodeRush Xpress
Introduction to CodeRush XpressIntroduction to CodeRush Xpress
Introduction to CodeRush XpressErik Ralston
 
SOCIAL PR - Evento ABA Mídia
SOCIAL PR - Evento ABA MídiaSOCIAL PR - Evento ABA Mídia
SOCIAL PR - Evento ABA MídiaDaniel Rimoli
 
jQuery vs AJAX Control Toolkit
jQuery vs AJAX Control ToolkitjQuery vs AJAX Control Toolkit
jQuery vs AJAX Control ToolkitErik Ralston
 
Marriott e-CRM
Marriott e-CRMMarriott e-CRM
Marriott e-CRMvickie27
 

Viewers also liked (15)

Ivars Brīvers konferencē "Latvijas tautsaimiecības atdzimšanai"
Ivars Brīvers konferencē "Latvijas tautsaimiecības atdzimšanai"Ivars Brīvers konferencē "Latvijas tautsaimiecības atdzimšanai"
Ivars Brīvers konferencē "Latvijas tautsaimiecības atdzimšanai"
 
Kom i gång med din personliga marknadsföring
Kom i gång med din personliga marknadsföringKom i gång med din personliga marknadsföring
Kom i gång med din personliga marknadsföring
 
Kom i gång med din personliga marknadsföring
Kom i gång med din personliga marknadsföringKom i gång med din personliga marknadsföring
Kom i gång med din personliga marknadsföring
 
N F C Slidshare
N F C SlidshareN F C Slidshare
N F C Slidshare
 
Personlig marknadsföring på Startaegetmässan
Personlig marknadsföring på StartaegetmässanPersonlig marknadsföring på Startaegetmässan
Personlig marknadsföring på Startaegetmässan
 
N F C Slidshare
N F C SlidshareN F C Slidshare
N F C Slidshare
 
Sosiale medier på 15 minutter
Sosiale medier på 15 minutterSosiale medier på 15 minutter
Sosiale medier på 15 minutter
 
Ivo Rubīns konferencē "Latvijas tautsaimiecības atdzimšanai"
Ivo Rubīns konferencē "Latvijas tautsaimiecības atdzimšanai"Ivo Rubīns konferencē "Latvijas tautsaimiecības atdzimšanai"
Ivo Rubīns konferencē "Latvijas tautsaimiecības atdzimšanai"
 
Edelman digital + sxsw 2016 lançamento
Edelman digital + sxsw 2016 lançamentoEdelman digital + sxsw 2016 lançamento
Edelman digital + sxsw 2016 lançamento
 
Starting An Open Source Project
Starting An Open Source ProjectStarting An Open Source Project
Starting An Open Source Project
 
Introduction to CodeRush Xpress
Introduction to CodeRush XpressIntroduction to CodeRush Xpress
Introduction to CodeRush Xpress
 
.Net Threading
.Net Threading.Net Threading
.Net Threading
 
SOCIAL PR - Evento ABA Mídia
SOCIAL PR - Evento ABA MídiaSOCIAL PR - Evento ABA Mídia
SOCIAL PR - Evento ABA Mídia
 
jQuery vs AJAX Control Toolkit
jQuery vs AJAX Control ToolkitjQuery vs AJAX Control Toolkit
jQuery vs AJAX Control Toolkit
 
Marriott e-CRM
Marriott e-CRMMarriott e-CRM
Marriott e-CRM
 

Similar to gonzalo

Embed--Basic PERL XS
Embed--Basic PERL XSEmbed--Basic PERL XS
Embed--Basic PERL XSbyterock
 
PHP Basics for Designers
PHP Basics for DesignersPHP Basics for Designers
PHP Basics for DesignersMatthew Turland
 
Rubish- A Quixotic Shell
Rubish- A Quixotic ShellRubish- A Quixotic Shell
Rubish- A Quixotic Shellguest3464d2
 
Static typing and proof in ATS language
Static typing and proof in ATS languageStatic typing and proof in ATS language
Static typing and proof in ATS languageKiwamu Okabe
 
Sinatra + Heroku
Sinatra + HerokuSinatra + Heroku
Sinatra + Herokulvrubygroup
 
Ods Markup And Tagsets: A Tutorial
Ods Markup And Tagsets: A TutorialOds Markup And Tagsets: A Tutorial
Ods Markup And Tagsets: A Tutorialsimienc
 
BNC Tech Forum 09: Lexcycle Stanza demo
BNC Tech Forum 09: Lexcycle Stanza demoBNC Tech Forum 09: Lexcycle Stanza demo
BNC Tech Forum 09: Lexcycle Stanza demoBookNet Canada
 
Sl scripting in English
Sl scripting in EnglishSl scripting in English
Sl scripting in EnglishPyy
 
Why Python by Marilyn Davis, Marakana
Why Python by Marilyn Davis, MarakanaWhy Python by Marilyn Davis, Marakana
Why Python by Marilyn Davis, MarakanaMarko Gargenta
 
OSCON 2004: XML and Apache
OSCON 2004: XML and ApacheOSCON 2004: XML and Apache
OSCON 2004: XML and ApacheTed Leung
 
Web Design Course - Lecture 5 - iframe, Color, Enities and symbols, Audio and...
Web Design Course - Lecture 5 - iframe, Color, Enities and symbols, Audio and...Web Design Course - Lecture 5 - iframe, Color, Enities and symbols, Audio and...
Web Design Course - Lecture 5 - iframe, Color, Enities and symbols, Audio and...Al-Mamun Sarkar
 
ROP 輕鬆談
ROP 輕鬆談ROP 輕鬆談
ROP 輕鬆談hackstuff
 
Php Loop
Php LoopPhp Loop
Php Looplotlot
 
Dapper Tool - A Bundle to Make your ECL Neater
Dapper Tool - A Bundle to Make your ECL NeaterDapper Tool - A Bundle to Make your ECL Neater
Dapper Tool - A Bundle to Make your ECL NeaterHPCC Systems
 

Similar to gonzalo (20)

Learning Ruby
Learning RubyLearning Ruby
Learning Ruby
 
Embed--Basic PERL XS
Embed--Basic PERL XSEmbed--Basic PERL XS
Embed--Basic PERL XS
 
PHP Basics for Designers
PHP Basics for DesignersPHP Basics for Designers
PHP Basics for Designers
 
Rubish- A Quixotic Shell
Rubish- A Quixotic ShellRubish- A Quixotic Shell
Rubish- A Quixotic Shell
 
Domain Specific Languages
Domain Specific LanguagesDomain Specific Languages
Domain Specific Languages
 
Static typing and proof in ATS language
Static typing and proof in ATS languageStatic typing and proof in ATS language
Static typing and proof in ATS language
 
Ruby 101
Ruby 101Ruby 101
Ruby 101
 
Sinatra + Heroku
Sinatra + HerokuSinatra + Heroku
Sinatra + Heroku
 
Ods Markup And Tagsets: A Tutorial
Ods Markup And Tagsets: A TutorialOds Markup And Tagsets: A Tutorial
Ods Markup And Tagsets: A Tutorial
 
BNC Tech Forum 09: Lexcycle Stanza demo
BNC Tech Forum 09: Lexcycle Stanza demoBNC Tech Forum 09: Lexcycle Stanza demo
BNC Tech Forum 09: Lexcycle Stanza demo
 
PHP 5 Sucks. PHP 5 Rocks.
PHP 5 Sucks. PHP 5 Rocks.PHP 5 Sucks. PHP 5 Rocks.
PHP 5 Sucks. PHP 5 Rocks.
 
Your code is not a string
Your code is not a stringYour code is not a string
Your code is not a string
 
Sl scripting in English
Sl scripting in EnglishSl scripting in English
Sl scripting in English
 
Why Python by Marilyn Davis, Marakana
Why Python by Marilyn Davis, MarakanaWhy Python by Marilyn Davis, Marakana
Why Python by Marilyn Davis, Marakana
 
OSCON 2004: XML and Apache
OSCON 2004: XML and ApacheOSCON 2004: XML and Apache
OSCON 2004: XML and Apache
 
Web Design Course - Lecture 5 - iframe, Color, Enities and symbols, Audio and...
Web Design Course - Lecture 5 - iframe, Color, Enities and symbols, Audio and...Web Design Course - Lecture 5 - iframe, Color, Enities and symbols, Audio and...
Web Design Course - Lecture 5 - iframe, Color, Enities and symbols, Audio and...
 
ROP 輕鬆談
ROP 輕鬆談ROP 輕鬆談
ROP 輕鬆談
 
Php Loop
Php LoopPhp Loop
Php Loop
 
Dapper Tool - A Bundle to Make your ECL Neater
Dapper Tool - A Bundle to Make your ECL NeaterDapper Tool - A Bundle to Make your ECL Neater
Dapper Tool - A Bundle to Make your ECL Neater
 
Php 2
Php 2Php 2
Php 2
 

Recently uploaded

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Recently uploaded (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 

gonzalo

  • 1. The best web language. language Which is the best programming language for you? Perl? PHP? OR Python? Ruby? ASP?
  • 2. The one true answer is: LOL Code!!1one LOLCode is an esoteric language by geeks with too much free time. There are multiple lolcode interperters, parsers, and even compilers. “Laser Cats”
  • 3. I wrote the first working lolcode parser And the first lolcode powered website. I am one of those geeks. “LOLCode By O'RLY”
  • 4. Basic Usage CODE SNIPPET !BEWARE! HAI <- Opening tag MUST HAS STDIO <- Require File VISIBLE quot;HAI WORLD!quot; <- Print KTHXBYE <- Closing Tag
  • 5. Variables CODE SNIPPET !BEWARE! I HAS COLOR1 <- Initiate Variable I HAS COLOR2 IZ GREEN ^- Initiate and Set Var COLOR1 IZ RED ^Set existing var
  • 6. More Variables CODE SNIPPET !BEWARE! VISIBLE “COLOR IS &COLOR1&” ^- Print with Var replacement. IVAR IZ 1 < Set var to 1. IVAR UPUP!< Increment twice. IVAR UPUP! < IVAR is 3. BTW THIS IS A COMMENT ^- Use BTW to comment line.
  • 7. Control Structures CODE SNIPPET !BEWARE! IZ &IVAR& == 1 < IF. BTW IF VISIBLE quot;YEAH RLYquot; VISIBLE __SKY__ <-Print Constant NOWAI BTW ELSE <- ELSE VISIBLE quot;NOWAIquot; KTHX
  • 8. IF Control Structure CODE SNIPPET !BEWARE! IZ &IVAR& == 1 < IF. BTW IF VISIBLE quot;YA RLYquot; ORLY &IVAR& == 2 < ELSEIF VISIBLE quot;ORLYquot; ORLY &IVAR& == 2 < ELSEIF VISIBLE quot;ORLY RLYquot; NOWAI <- ELSE VISIBLE quot;NOWAIquot; KTHX
  • 9. Arrays CODE SNIPPET !BEWARE! ARRAY IZ BUCKET < Create Bucket ^Variable Name 0 FISH quot;zeroquot; !! < Numerical 1 FISH quot;onequot; !! < Keys < String Keys two FISH quot;twoquot; !! BUCKET <- Prints “two” VISIBLE &ARRAY#two&
  • 10. Multidemensional Arrays CODE SNIPPET !BEWARE! ARRAY IZ BUCKET < Create Bucket ^Variable Name 0 FISH quot;zeroquot; !! three FISH IZ BAG <- Use bag or buckets !! FISH quot;threequot; !! !! FISH quot;twoquot; !! ^New Dimension BAG BUCKET <- Prints “two” VISIBLE &ARRAY#two,1&
  • 11. BAG Arrays CODE SNIPPET !BEWARE! ARRAY IZ BUCKET < Create Bucket ^Variable Name 0 FISH quot;zeroquot; !! three FISH IZ BAG <Create BAG !! FISH quot;threequot; !! !! FISH quot;twoquot; !! BAG ^BAG uses auto incremented keys. BUCKET <- Prints “two” VISIBLE &ARRAY#two,1&
  • 12. Looping CODE SNIPPET ARRAY IZ BUCKET !BEWARE! < Create Bucket 0 FISH quot;zeroquot; !! 1 FISH quot;1quot; !! 2 FISH quot;2quot; !! BUCKET <- Foreach IM IN UR ARRAY ITZA NUMBA VISIBLE quot;&NUMBA&!quot; ^Prints “zero!1!2!” KTHX
  • 13. Functions CODE SNIPPET !BEWARE! SO IM LIKE UPPING WITH VAR VAR2=0 ^Var Name ^Arguments ^Default Value VAR UPUP! <- Increment VAR I FOUND MAH VAR<- Return VAR KTHX <End Function VISIBLE quot;FOUR UP? ITZA quot;.UPPING(4) ^Prints “5”
  • 14. Advanced Features CODE SNIPPET !BEWARE! THEVAR IZ GOLD VARNAME IZ THEVAR VISIBLE &&VARNAME&& <-Prints “GOLD” ^- Variable Variable ALWAYZ SKY IZ BLUE <- Set Constant VISIBLE __SKY__ <- Print Constant
  • 15. Embed in HTML CODE SNIPPET <html> !BEWARE! <head> <title>LOL Power</title> <- HTML </head> <body> Subset of XML HAI MUST HAS STDIO VISIBLE quot;<!-- Copyright 2007 Jeff Jones, www.tetraboy.com -->nquot; VISIBLE quot;HAI WORLD!quot; KTHXBYE ^ Code in tags is parsed. </body> </html>
  • 16. SQLite Databases CODE SNIPPET !BEWARE! CAN HAS SQL? <- Include SQL Lib DBASE IZ GETDB('lolz')<-Select DB File FUNNAHS IZ DBUCKET( ^Get Array from DB &DBASE&, quot;CAN I PLZ GET joke ALL UP IN funnahsquot; ) ^LOL-SQL. “Select joke from funnahs”
  • 17. SQLite Databases, Part Deux CODE SNIPPET !BEWARE! CAN HAS SQL? <- Get Array from DB DBASE IZ GETDB('lolz') FUNNAHS IZ DBUCKET(&DBASE&,quot;CAN I PLZ GET joke ALL UP IN funnahsquot;) < Loop It IM IN UR FUNNAHS ITZA JOKE VISIBLE quot;<P>quot;.&JOKE#joke&.quot;</P>quot; ^Print each joke KTHX (dbucket returns assoc array)
  • 18. Tetra LOLCode Parser How to make a new lang work? With little to no work? Convert it to PHP! How? preg_replace! function lol_core_parse($code) Takes incoming code and runs through 36 regular expressions /e is your new best friend.
  • 19. Tetra LOLCode Works with apache! Easiest way to run .lol on apache? Set .lol to parse as PHP Use PHP's prepend/append Output Buffering to catch LOL Parse src Write source to temporary file Include temporary file
  • 20. More info? http://www.lolcode.com Official Website http://www.tetraboy.com/lolcode/ My LOLCode website, powred by LOLCODE! irc.freenode.net #lolcode Community IRC Channel. (I Hope noone still goes there..) MailChimp LOL Parser Based on my lolcode parser, download their improved version.