ALGOL?

preview_player
Показать описание
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:

---
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
Рекомендации по теме
Комментарии
Автор

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

penta
Автор

“And garbage!”

Lol, shots fired. 😂

AWriterWandering
Автор

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

somebodyhere
Автор

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

DylanMatthewTurner
Автор

Nice, it was just as comfortable to write as php

martinalcala
Автор

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

MCLooyverse
Автор

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

justasjan
Автор

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

abuk
Автор

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

ArazNebiza
Автор

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.

josephcote
Автор

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

Elitekross
Автор

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

kunstkritik
Автор

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

robinpage
Автор

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

Khusyasy
Автор

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!

tsunamio
Автор

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!

dieselguitar
Автор

4:39 that 1 probably means standard output (not a file, for example).
Source: the file descriptor for stdout is 1 in many x86_64 systems

EliSoli-pbfp
Автор

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

carlphilippgaebler
Автор

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

mokopa
Автор

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 :)

vicr
visit shbcf.ru