ALGOL?

Sdílet
Vložit
  • čas přidán 16. 05. 2024
  • It's the ALGOrithmic Language from 1958... except the version I use here is from 1960... It was the ancestor to most modern programming languages, and it was the first to implement the block statement. In this video, I write a couple programs with it.
    VIDEO CHAPTERS:
    0:00 Intro Animation (NOW WITH LIP SYNCING!!!)
    1:03 What is ALGOL?
    3:35 Hello World!
    5:09 99 Bottles of Beer
    6:35 Factorial
    9:07 End
    ---
    LINKS:
    ALGOL on Wikipedia: en.wikipedia.org/wiki/ALGOL
    ALGOL-60 Compiler: www.angelfire.com/biz/rhamini...
    ---
    MUSIC USED:
    "Artisan World" from Spyro the Dragon
    "Pushing Onwards" from VVVVVV
    "The Last Dungeon" from Wonder Boy - The Dragon's Trap
    "Bumpsy Plains - Act 2" from Mario and Luigi: Bowser's Inside Story
    Wii Shop Channel Theme
  • Věda a technologie

Komentáře • 136

  • @penta5421
    @penta5421 Před 3 lety +145

    1:26 As a German, I think that was actually impressively close lol

    • @MarsCorporations
      @MarsCorporations Před 3 lety +16

      Ja wenn man sich anhört was so manch anderer zusammenstammelt war das schon echt gut :)

    • @programmerlexi
      @programmerlexi Před rokem +1

      Still wrong but close.

  • @AWriterWandering
    @AWriterWandering Před 3 lety +74

    “And garbage!”
    Lol, shots fired. 😂

    • @nickfla1
      @nickfla1 Před 3 lety +2

      Still can’t understand why people hate PHP 🤷

    • @Me-da-Ghost
      @Me-da-Ghost Před 3 lety +6

      @@nickfla1 it's confusing for no reason and annoying

    • @okie9025
      @okie9025 Před 3 lety +1

      @@Me-da-Ghost it's only confusing if you're not bright lol

    • @nickfla1
      @nickfla1 Před 3 lety

      @@Me-da-Ghost Have you actually tried modern day php?

    • @Me-da-Ghost
      @Me-da-Ghost Před 2 lety

      @@nickfla1 wdym

  • @somebodyhere3160
    @somebodyhere3160 Před 2 lety +16

    “In C for example..”
    Proceeds to show C++ code

  • @martinalcala4823
    @martinalcala4823 Před 3 lety +68

    Nice, it was just as comfortable to write as php

  • @DylanMatthewTurner
    @DylanMatthewTurner Před 3 lety +68

    Dug around in the manual.
    "This may be done by using the pre-declared procedure
    text(device,string)"
    Digging further reveals "2.48 ALGOL fixed stream numbers" on line 1509
    0 is a dummy device, 1 is basically the DOS equivalent of stdout, 2 I didn't understand, 3 is input... I think?, 4 is the same as 1 but without Ctrl+C, 5 has something to do with punch cards, 6 has to do with external devices, 7 is buffered console input with echo, 8 sets printer column, 9 is dummy (same as dev 0), 10 is directly to memory.
    It also says devices 1-7 are system calls, and there are no BIOS calls, but yeah, they're basically streams

    • @Truttle1
      @Truttle1  Před 3 lety +22

      Cool. I guess thats why 0 did nothing.

    • @AWriterWandering
      @AWriterWandering Před 3 lety +8

      It says that 2 is AUX in MSDOS. From what I can gather, AUX went to the COM port. (The port commonly used for things like mice and modems on early PCs)

    • @wisteela
      @wisteela Před 6 měsíci

      ​@@AWriterWanderingOoh, I can think of some fun uses for that.

  • @justasjan8124
    @justasjan8124 Před 3 lety +19

    It was strange to watch Turttle1 video without those crazy screaming. Strange but pleasing.

  • @abuk95
    @abuk95 Před 3 lety +43

    I always wonder, why your characters are moving up and down all the time?

    • @Truttle1
      @Truttle1  Před 3 lety +44

      I thought it looked really awkward for them to be frozen still all the time

    • @abuk95
      @abuk95 Před 3 lety +2

      thought so
      well true, but there is also variety of more natural moves :)
      anyway, thanks for bringing us content about these uncommon languages :D

    • @sajeucettefoistunevaspasme
      @sajeucettefoistunevaspasme Před 3 lety +1

      They're breathing

    • @Edward-it9cr
      @Edward-it9cr Před 3 lety +3

      @@Truttle1 i like them, reminds me of paper mario characters!

    • @waffleman4503
      @waffleman4503 Před 2 lety +2

      i always assumed it was a nod to paper mario

  • @MCLooyverse
    @MCLooyverse Před 3 lety +40

    I would **guess** that the `1` in `text(1, ...)` @4:35 means "standard out", while 0 means "standard in", and 2 means "standard error".

    • @sourabhchoure498
      @sourabhchoure498 Před 3 lety

      Yes exactly what I was going to comment.

    • @brucebaron1212
      @brucebaron1212 Před 3 lety +5

      @@sourabhchoure498 but then he used read(1) to input from the keyboard.

    • @MrCheeze
      @MrCheeze Před 3 lety +7

      Those are the "streams" he mentioned in the video. (Though the true answer is what Dylan Turner said)

    • @TheGreatAtario
      @TheGreatAtario Před 2 lety +3

      Manual lists the devices: 0 is null device, 1 is CON:, 2 is AUX:, 3 is LST:, etc. Each device reacts in its own way on input vs. output calls.

  • @Truttle1
    @Truttle1  Před 3 lety +13

    Discord: discord.gg/EKPBjjUc65

  • @ArazNebiza
    @ArazNebiza Před 3 lety +15

    Hey truttle I wanted to say congrats on 2k
    Also OMG this 1080p 60frames is awesome

    • @Truttle1
      @Truttle1  Před 3 lety +3

      It's always been 1080p 60FPS

    • @ArazNebiza
      @ArazNebiza Před 3 lety

      @@Truttle1 I only now started using it and damn your videos look beautiful

  • @josephcote6120
    @josephcote6120 Před 3 lety +5

    As far as mainframe ALGOL goes, the numbers with the input and output statements are used in the same way as device numbers in FORTRAN, and are defined externally to the program in the JCL's DD statements to associate the name (the number is a name) with a physical device like a tape drive or disk file. Interactive ALGOL had to be implemented differently for small machines and each one was unique; when it was only for batch mainframe processing it was easily portable with no rewriting needed.

  • @circleubuntu
    @circleubuntu Před 3 lety +4

    7:56
    Yes that is real.

  • @Elitekross
    @Elitekross Před 3 lety +16

    Fun fact, 0 factorial is defined as 1 and there is even a generalized "factorial" function for real numbers

    • @otesunki
      @otesunki Před 2 lety +4

      boy do i love the gamma function.
      best function.

    • @ayushsharma8804
      @ayushsharma8804 Před 2 lety +6

      It works on complex numbers too.

  • @kunstkritik
    @kunstkritik Před 3 lety +6

    1:26 for a non-native that was really good :o

    • @Truttle1
      @Truttle1  Před 3 lety +1

      Thx, Mr art critic

    • @kunstkritik
      @kunstkritik Před 3 lety

      @@Truttle1 :D
      You're welcome. Glad that the almighty algorithm recommended me your channel

  • @zperk13
    @zperk13 Před 3 lety +7

    "and garbage" lol!

  • @tsunamio7750
    @tsunamio7750 Před rokem +1

    Wonderful short on the language. So it's the big daddy of block statements! Exactly what I wanted to know (What did it improve, why is it famous).
    Thank you!

  • @Khusyasy
    @Khusyasy Před 3 lety +3

    I clicked one of your videos, and now I can't stop watching them all

  • @robinpage2730
    @robinpage2730 Před rokem +3

    1 is used in the procedure section of assembly code, entered right before your string is loaded into the register. That's why the 1 is there

  • @dieselguitar1440
    @dieselguitar1440 Před 2 lety +5

    0! = 1, so you can actually have the factorial recursion go down one step further. It would be faster to say if x < 2 then x! = 1, but 1! = 1(0!) is more recursionny!

  • @frank_calvert
    @frank_calvert Před 3 lety +5

    that german was clooooose

  • @mokopa
    @mokopa Před 3 lety +2

    This channel: "...and GarBaGE!!" (PHP)
    Me: *Subscribe*

  • @huhneat1076
    @huhneat1076 Před 2 lety

    By the music you used I can tell you are of culture

  • @Vallee152
    @Vallee152 Před 2 lety

    could the 1 be the pipe that the data goes to? 1 being user, 2 being error, 3 being program input? (or something similar, maybe a different order)

  • @ArthurKhazbs
    @ArthurKhazbs Před 3 lety +1

    OOOH YES THE MUSIC FROM VVVVVV

  • @natilevia6794
    @natilevia6794 Před 3 lety +4

    Keep making awesome videos!

  • @leonidas14775
    @leonidas14775 Před 8 měsíci

    As someone who's used Pascal, "integer procedure" just feels wrong.

  • @roboltamy
    @roboltamy Před 3 lety +6

    Truttle confirmed for 2021

  • @carlphilippgaebler5704
    @carlphilippgaebler5704 Před 2 lety +1

    Oh god why did you use Eversion music I'm getting flashbacks

  • @jemand771
    @jemand771 Před rokem

    that german bit was actually really good

  • @bradenbigham9875
    @bradenbigham9875 Před rokem

    the lego is too big to feel any pain...

  • @imaginaoYouTubesoquecomarrobas

    Someone: "So, what does that do?"
    Nobody:
    Truttle1: "It does..."
    "NOTHIIIIIIIIING!!!"

  • @joshi2342
    @joshi2342 Před 2 lety +2

    Wow this channel is really good

  • @chessprogramming591
    @chessprogramming591 Před 3 lety +1

    BIG Obfuscate smashing code block is gorgeous!
    - Bur what is that "1" needed for (before "Hello, world!")
    - NO IDEA, but without it it just DOESN'T WORK
    Ahhhhhh!!!!!!!!!!!! Love it!!!!!!!!!!!!!!
    - it prints one bottles instead of one bottle!
    - who cares?...
    - I do!
    - and I really don't
    Same in real world projects)
    - did you mean rerusion... )))))))))))

    • @0bfuscate
      @0bfuscate Před 3 lety +2

      you don't seem to realize how painful stepping on Legos is...

    • @chessprogramming591
      @chessprogramming591 Před 3 lety +1

      @@0bfuscate any sacrifice is worth OBFUSCATION - you know it better than anyone else.
      Oh, it seems like I've commented from the other account) This is CMK)
      Obfuscate, what I'm really happy with is your SIZE in this video in comparison to other characters. Now it trully feels like they are PUNY MORTALS. Btw you didn't seem to release new videos on your channel - did you think about creating your own esoteric language to checkmate that truttle ones and forever?
      Also if she wants to make a video on YOUR esoteric lang you can ask her to buy copyrights first)

  • @MiMiBrokenbourgh
    @MiMiBrokenbourgh Před rokem

    That “Program 0” music is terrifying

  • @EdKolis
    @EdKolis Před 2 lety

    Wait, is Algol (the star) just a misspelling of the Arabic al-ghul? That would explain why it's called the demon star, since a gh(o)ul is a type of demon!

  • @beautylola4218
    @beautylola4218 Před 3 lety +1

    Do Assembly please!

  • @crossity
    @crossity Před 11 měsíci

    I guess argument 1, in I/O means filedirectory, terminal is 1 in assembler

  • @thezipcreator
    @thezipcreator Před 2 lety

    2:07 wouldn't this just compare if two pointers are the same (which would always be false since you're creating a new char* in the if statement lol)
    then again there is cout

    • @kytekarthentau9417
      @kytekarthentau9417 Před 2 lety +2

      C++ allows for operator overloading, which std::string takes advantage of to make comparing strings quicker and less verbose. One of the overloads for std::string == takes in a string literal as its right hand, so if we assume 'red' in the code snippet holds a std::string, then "red == "sus"" is just running a string compare behind the operator, and if the strings are equal, the == operator will return 0 or true, making the code valid.

  • @rainbowskeppy5292
    @rainbowskeppy5292 Před 2 lety +1

    why is my code not working
    INTEGER x
    FOR x := 0 STEP 1 UNTIL 100 DO
    BEGIN
    print(x)
    END

  • @batteryman2852
    @batteryman2852 Před 3 lety

    What about Algol Gene? :-P

  • @wavezee8464
    @wavezee8464 Před 3 lety

    What about Prolog?

  • @oderalon
    @oderalon Před 3 lety

    1:27 not bad! not bad at all!

  • @a.k_theportal3085
    @a.k_theportal3085 Před 2 lety

    The 1 in the text function specifies a stream, here is a list of streams:
    stdin - /dev/stdin on unix: input from user, number 0
    stdout - /dev/stdout on unix: output from program, number 1
    stderr - /dev/stderr on unix: error output from program, number 2-3

  • @mkDaniel
    @mkDaniel Před 3 lety

    Reminds me of BASIC.

  • @WritingTeacher-jw4ul
    @WritingTeacher-jw4ul Před 9 měsíci +1

    VVVVVV!

  • @__gadonk__
    @__gadonk__ Před 2 lety

    pretty sure the number is a filedescriptor

  • @pinkshortcomedy
    @pinkshortcomedy Před 2 lety

    Narrator: and garbage
    Screen: PHP logo
    Wordpresss:

  • @vicr123
    @vicr123 Před 3 lety +2

    I didn't realise Eidex was wearing glasses...
    EDIT: In case you're not aware, 0! is defined to equal 1, so the factorial function should really check for equality with 0 instead of 1 :)

  • @sandpaperunderthetable6708

    Yipee

  • @tux1468
    @tux1468 Před 3 lety +4

    2:08 bruh
    2:10 BRUH

  • @ekio3572
    @ekio3572 Před 10 měsíci

    1:28 hey i study there

  • @mirandnyan
    @mirandnyan Před 2 lety

    pronounced that university quite alright I would say

  • @adivp7
    @adivp7 Před 2 lety

    2:13 funny. thanks.

  • @georgerogers1166
    @georgerogers1166 Před rokem

    Better than Fortran 77 Malt Liquor!

  • @pimakpimak
    @pimakpimak Před 3 lety +1

    I had to create a compiler for algol 60 in school, horrible story

  • @nocturne6320
    @nocturne6320 Před 3 lety

    2:08 GETOUTOFMYHEADGETOUTOFMYHEADGETOUTOFMYHEADGETOUTOFMYHEAD

  • @AlmirBispo-CSV-Comp-DB
    @AlmirBispo-CSV-Comp-DB Před 3 lety +2

    You forgot Pascal

    • @Truttle1
      @Truttle1  Před 3 lety +1

      I'll do a Pascal video eventually

    • @michaelstoeckel2954
      @michaelstoeckel2954 Před rokem

      @@Truttle1 No, I think it was meant .. you forgot to mention Pascal as a direct descendant of ALGOL as well as Modula-2.

  • @_GhostMiner
    @_GhostMiner Před 3 lety

    *2:13** Among us again?*

  • @Rignchen
    @Rignchen Před 6 měsíci

    1:30 you could simply have said "ETHZ" it would have been fine

  • @elemenopi9239
    @elemenopi9239 Před 3 lety

    WAIT YOU KNOW TUX1?

    • @qazw5414
      @qazw5414 Před 11 měsíci +1

      you're that toki pona guy!

  • @mathgeniuszach
    @mathgeniuszach Před 2 lety

    Actually, 0! is 1, not 0, despite the fact that 0*0 is 0.

    • @jangamecuber
      @jangamecuber Před 2 lety

      It is that way because
      3! = 3 * 2!
      2! = 2 * 1!
      1! = 1 * 0!
      To make this work, 0! = 1.
      0! = 0 * -1!
      -1! = 0!/0
      -1! = 1/0
      That is why factorial is undefined for negative integers

  • @MsMosoka
    @MsMosoka Před 2 lety

    2:11 sus

  • @vmgpofc
    @vmgpofc Před 3 lety

    Try V++!

  • @ThatDumbPan
    @ThatDumbPan Před rokem +1

    wait, did you refer to php as garbage? i like php :(((

  • @paratsuki
    @paratsuki Před rokem

    man that moment talking about the star was funny 👍👍👍

  • @user-bp3my9oy3c
    @user-bp3my9oy3c Před 3 lety

    CARLSVENTURES PLZZZZZZZZZZZZ

  • @SWFYSCOfficial
    @SWFYSCOfficial Před 2 lety

    LOL

  • @imlxh7126
    @imlxh7126 Před 3 lety

    0:51 hey dude, don't dunk on c-tail for being gay. hes living his best life and i support him

    • @Truttle1
      @Truttle1  Před 3 lety +3

      Wut???

    • @imlxh7126
      @imlxh7126 Před 3 lety +1

      ​@@Truttle1 ...my bad, my dude, i had this on while cleaning my room. and i THOUGHT i heard him get called a "fruit" but uh. he is being called a "blueberry" which is a) more specific and b) WAY more funny
      sorry feel free to ignore this dumb comment, it was honestly just me being a complete dingus and you don't need to take it to heart at all lol

    • @imlxh7126
      @imlxh7126 Před 3 lety

      @@Truttle1 honestly i kinda want to delete this dumb comment now but i figured like i owed you an apology for mishearing something on my part (especially since i was like. several feet away listening on laptop speakers)

  • @mynameisjustt
    @mynameisjustt Před 2 lety

    RED IS S U S

  • @nro337
    @nro337 Před 3 lety

    😂😂

  • @madshundevadroerpedersen8399

    Can you make a video about the first programming languege??
    PS: it is called FORTRAN

  • @mm552
    @mm552 Před rokem

    At one point i could stand in a box full of legos and feel nothing, clearly i was a stupid kid who did not understand how surfaces work. 😂

  • @EdKolis
    @EdKolis Před 2 lety

    Wow they really; like; semicolons;;;

  • @thescratchguy428
    @thescratchguy428 Před 2 lety

    lip syncjg