FORTH?

  Рет қаралды 27,357

Truttle1

Truttle1

Күн бұрын

Пікірлер: 205
@Truttle1
@Truttle1 3 жыл бұрын
discord.gg/EKPBjjUc65
@tetrachart4156
@tetrachart4156 3 жыл бұрын
Wait. Can and how do you remove the top value without outputting?
@SimonClarkstone
@SimonClarkstone 3 жыл бұрын
@@tetrachart4156 "drop", I think
@Blue-Maned_Hawk
@Blue-Maned_Hawk 3 жыл бұрын
That invite doesn't work.
@Truttle1
@Truttle1 3 жыл бұрын
@@Blue-Maned_Hawk that's because you were banned from the server... several months ago...
@Blue-Maned_Hawk
@Blue-Maned_Hawk 3 жыл бұрын
@@Truttle1 , could that please be reverted?
@noscreadur
@noscreadur 2 жыл бұрын
Forth is my favorite language. You quickly build a bespoke language that describes your specific problem. Each word gets compiled as you write it, so it's fast. I love it.
@sinom
@sinom 3 жыл бұрын
The reason a lot of these seem the wrong way around is because that's easier to write a compiler for. Same with it being in reverse polish notation. Also a choice to make compilers simpler.
@Stingpie
@Stingpie 3 жыл бұрын
Same thing can be said for the spaces. It looks like they are used to help the tokenizer, and it would take a dumb amount (in the 70s) to make the tokenizer muddle through it.
@HansBezemer
@HansBezemer 2 жыл бұрын
As a matter of fact: most languages use a recursive descent parser to convert infix to postfix - it's the way CPUs work - since they are blissfully unaware of parenthesis. But if you really want to you can back fit most Forth with one - as this code shows: : calculate ( -- flag) let f = f - u; let h = h - v; let v = (((v + g) * 10) - (u * 2)) / 10; let h,|0> 0=|; \ height < 1? ; : lander begin ready \ G-force, velocity, height, fuel let g=2; let v=70; let h=1000; let f=500; begin meter boost calculate until let h = max (h,0); meter report ." Do you want to play again? (0 = no, 1 = yes) " enter 0= dup abort" Have a nice day." cr until ;
@perplexedmoth
@perplexedmoth 2 жыл бұрын
@@HansBezemer Do you have the code available for your last example to work?
@jamesgray6804
@jamesgray6804 4 ай бұрын
It also means you don't need to identify precedence or ascocitivity for each word you define
@algotkristoffersson15
@algotkristoffersson15 17 күн бұрын
@@Stingpie if they wanted a simple tokenizer they should have made a language that works like incident.
@emilioschmidt2106
@emilioschmidt2106 3 жыл бұрын
You should look into porth. It's like forth, but written in porth
@grayishcolors
@grayishcolors 3 жыл бұрын
Best part is it’s in active development so anything today might change tomorrow. Oh & it only works in Linux so hopefully he’s using that lol
@emilioschmidt2106
@emilioschmidt2106 3 жыл бұрын
@@grayishcolors it only works on *linux 64 bit,😡* I have debian running on my ARM raspberry pi and I can't run it :(
@grayishcolors
@grayishcolors 3 жыл бұрын
@@emilioschmidt2106 oh yeah that’s an L
@einsjannis
@einsjannis 3 жыл бұрын
Hahaha welcome to epic porth club
@kraskaska
@kraskaska 3 жыл бұрын
i see a fellow tsoding viewer
@stagelights_
@stagelights_ 3 жыл бұрын
the cursed part of this video is not the fact that you used a Homestuck character when talking about stacks, it's the fact that you decided to go with the smooth design from the beta.
@maximebouillot5548
@maximebouillot5548 3 жыл бұрын
Hi, Turttle. As far as I know, a lot of quirks of Forth come from the fact that this langues is very easy to compile. If I recall correctly, there used to be some processors that we able to compile and run Forth code in hardware. They were called Forth processors. Even if Forth is not used much anymore, it is still a very nice and powerful language.
@SimonClarkstone
@SimonClarkstone 3 жыл бұрын
Yes. The reason string printing looks like that is that there needs to be a space to end the ." word. as soon as that word is parsed at compile-time, the compiler hands over control to it. It reads the string and compiles the appropriate code to print that string out before returning back to the main compiler. Similarly, the compiler hands over control to the conditional and looping constructs at compile time, and they only know how to write out branch/jump instructions or update the target addresses of such instuctions, not how to do the branching themselves, so they only know how to compile (inside a word definition) not be interpreted. You can write your own words that run a compile-time if you want.
@GeorgeTsiros
@GeorgeTsiros 2 жыл бұрын
(forth is still used) (in actual production)
@charlespax
@charlespax 2 жыл бұрын
Yes! The Novix NC4016 is a Forth processor and it's really cool! According to Philip Koopman in Stack Computer: The New Wave, "[The Novix 4016] was the first single-chip Forth computer to be built, and originated many of the features found on subsequent designs."
@KC9UDX
@KC9UDX Жыл бұрын
There were Pascal processors, too.
@StefanNoack
@StefanNoack 3 жыл бұрын
Those spaces are necessary because : and ; are themselves just words. There are no special characters or keywords. the interpreter just goes word by word and executes them. Some words like : do hijack the input stream and do their own thing, but your own words could do that as well. Indeed, you could change any of the things you don't like by introducing a word that does it differently.
@rebca_
@rebca_ 3 жыл бұрын
yes! the real power in forth is modifying the compiler with your own compile-time words
@HansBezemer
@HansBezemer 2 жыл бұрын
Those hijacking words are called "parsing words". The basic tokenizer just separates tokens by white space and then executes three rules: 1. If it's a command executes it; 2. If it isn't try to convert it to a number - and throw it on the stack; 3. If it isn't issue an error message.
@tyfoodsforthought
@tyfoodsforthought Жыл бұрын
Not going to lie. That's really cool! Forth is interesting.
@codewizard58
@codewizard58 Жыл бұрын
: interp query word find if execute else number then ; : execute state @ if compile else doit then ; : compile , ; : number state @ if .lit , then , ; // parse input into ws separated words, look up in dictionary, execute or compile if found else treat as a number
@HansBezemer
@HansBezemer 2 жыл бұрын
This is not how a seasoned Forth programmer writes this : even 2 mod 0 = if ." Even" else ." Odd" then ; (1) There is a word "0=", so : even 2 mod 0= if ." Even" else ." Odd" then ; (2) Use "1 AND" for odd. It's faster, so : even 1 and 0= if ." Even" else ." Odd" then ; (3) Get rid of "0=" by inverting the conditions, so : even 1 and if ." Odd" else ." Even" then ; (4) If it's odd, we're quitting anyway - no need to make that ELSE jump : even 1 and if ." Odd" exit then ." Even" ; That doesn't only makes it faster, it's also about 20-25% smaller in generated code. Finally, no need for : newline 10 emit ; - the word you're looking for in Forth is "CR".
@zilog1
@zilog1 2 жыл бұрын
also you have to keep in mind that this language has an interpreter like python and its actually crazy fast and efficient because its using a data structure that is native to how CPUs work so its really nice for embedded stuff with low resources. that WORD think is like creating your won custom operations and you cant take a giant thing and condense it into one word. you can also make words with other words and eventually like actually make your own OS/language if you wanted. you also have to kinda remove yourself from the head space that its a language. its more than that tbh. its an entire environment. and there are updated versions of this that are much better than the ones you shown in the video. Once you realize the context of why forth is the way it is its actually kinda cool. did i mention its CRAZY compact and fast?
@HansBezemer
@HansBezemer 2 жыл бұрын
It's MUCH better than Python performance wise. Depending on the task at hand it's typically between 2 - 10 times.
@orangegaming9562
@orangegaming9562 3 жыл бұрын
Come forth sir truttle
@furretwalky
@furretwalky 3 жыл бұрын
0:26 *shows John Egbert* _dies instantly_
@Golem642
@Golem642 3 жыл бұрын
Love your videos as always, discovering new programming languages is cool but when you explain them it's better
@esolangsemerald6394
@esolangsemerald6394 3 жыл бұрын
i am severely disappointed in forth. I am hoping that fifth does much better.
@subterfugue
@subterfugue 3 жыл бұрын
its called factor!
@QTpyeRose
@QTpyeRose 3 жыл бұрын
lets abstract to nth!
@nathanoy_
@nathanoy_ 3 жыл бұрын
porth will do better xd kzbin.info this channel is develloping it. Already self hosted
@johanloubser8138
@johanloubser8138 2 жыл бұрын
I think its fork "hence" is better
@xSH4773Rx
@xSH4773Rx 2 жыл бұрын
There's actually a language called fifth based on forth lmao
@irishbruse
@irishbruse 3 жыл бұрын
How about one on porth after this
@marconymous
@marconymous 3 жыл бұрын
I was looking for that comment :)
@sarenard
@sarenard 3 жыл бұрын
Yea, good idea lmao was looking for this comment too @Marconymous
@irishbruse
@irishbruse 3 жыл бұрын
We might finally learn what forth is after all
@xelaxander
@xelaxander 3 жыл бұрын
Yes! It's like Forth, but written in Porth.
@marconymous
@marconymous 3 жыл бұрын
@@irishbruse hahaha true
@Vallee152
@Vallee152 2 жыл бұрын
4:24 my speculation on why it ends with a "then" is to say like "then do the stuff following the if block regardless of condition"
@chofmann
@chofmann Жыл бұрын
i assume "then" basically just drops a value from the stack. like, after "2 mod 0 =", the top of the stack contains a boolean. "if" probably checks for the top value and if it's true, it puts a value _below_ the top, so "else" can work. "else" then checks for the top of the stack and puts its value below it, if it's false, leaving you with the boolean still on the top of the stack. "then" just removes it, to leave you with the result
@xeenypl
@xeenypl 3 жыл бұрын
6:38 This is build in to Forth. it's CR (name form carriage return). But overall cool video.
@samuelwaller4924
@samuelwaller4924 3 жыл бұрын
How did I miss this upload? I've been waiting for you to do forth for a while, glad to finally see it!
@cyberneticsquid
@cyberneticsquid 3 жыл бұрын
if you haven't done a video on it before maybe you could look at a language like Factor and how it uses quotations for a different way of flow control then
@Hibbyhubby
@Hibbyhubby 3 жыл бұрын
i've recently discovered your channel and i love the wealth of content, the enthusiasm for different languages and projects is just the best to see elsewhere! thank you!
@imlxh7126
@imlxh7126 2 жыл бұрын
Random fun fact: Paul DeMarinis wrote the code for the Music Room at the Exploratorium in Forth! Which I only know because Paul DeMarinis is one of the coolest people of all time to me.
@MrRyanroberson1
@MrRyanroberson1 2 жыл бұрын
After factoring out newlines, you can caftor out " bottles of beer" and " on the wall", and then alter bottles of beer to consider pluralization, ultimately resulting in an actually reaspnable program
@KitsuneAlex
@KitsuneAlex 3 жыл бұрын
You should mention Porth by Tsoding :)
@Provitia
@Provitia 3 жыл бұрын
was about to say that
@iidoyila
@iidoyila 2 жыл бұрын
would love to see you revisit some of your favourite langs and do some creative coding ^ ^
@thefractalistic3761
@thefractalistic3761 3 жыл бұрын
real legends had blown out their ear drums in this video
@Truttle1
@Truttle1 3 жыл бұрын
i accidentally set the volume of that clip to the max instead of the min lol... now there's just an awkward cut because the youtube built in editor sucks and you can't re-upload already uploaded videos...
@thefractalistic3761
@thefractalistic3761 3 жыл бұрын
@@Truttle1 oh ok
@jaded151
@jaded151 2 жыл бұрын
holy shit that homestuck reference did psychic damage to me
@kazii_the_avali
@kazii_the_avali Жыл бұрын
this seams like a very very friendly esolang. i was expecting some dumb thing that would make it hard to learn but this is very much learnable
@peterkerj7357
@peterkerj7357 Жыл бұрын
It's not an esolang.
@kazii_the_avali
@kazii_the_avali Жыл бұрын
​@@peterkerj7357ah my apoligies. the first 3 results on my go to serch engine for "is forth a esolang" showed to the esolang wiki.
@nyuh
@nyuh 3 жыл бұрын
Esojam judging when
@spageen
@spageen Жыл бұрын
I love the funny reptile characters!
@wmpowell8
@wmpowell8 2 жыл бұрын
I’ve seen a lot of news articles about this esolang called *Bhai Lang* . You should look into it.
@DanielLenrd
@DanielLenrd 2 жыл бұрын
"then ends an if-block in forth" and then there was nothing
@algotkristoffersson15
@algotkristoffersson15 10 ай бұрын
0:59 well creaturey, who ever watches shorts
@tux1468
@tux1468 3 жыл бұрын
Dangit, I missed the premiere! Oh well, this video should be fun regardless.
@r.pizzamonkey7379
@r.pizzamonkey7379 3 жыл бұрын
I remember using forth for Redpower computers back in ye old tekkit days. Forth is a really difficult language to use, but it's really efficient to make a repl for.
@MCLooyverse
@MCLooyverse 2 жыл бұрын
Woah! I'd honestly much rather use Forth than Lua (for Computer Craft). I've never noticed a mod with a programming language other than Computer Craft.
@teknikal_domain
@teknikal_domain 2 жыл бұрын
@@MCLooyverse RetroComputers (for 1.12.2), NedoComputers (1.7.10, now defunct completely) were basically re-implementations of RP2 FORTH. In theory, OpenComputers *can* use other languages (just need to register a handler that works with a different language that can somehow work within the JVM), but by itself doesn't ship with more than Lua 5.2 and 5.3 I'd imagine SOMEONE could make a FORTH machine in it natively, but I haven't seen it yet.
@l2ubio
@l2ubio 9 ай бұрын
it would be cool seeing you do something with Factor. Which is a new-ish (00's) stack based programing language but that it seems to ship with decent libs and bindings for graphics
@SeasideBandit
@SeasideBandit Жыл бұрын
The Nokia 6610i was the first phone I bought for myself in 2004. Still have it in a drawer.
@desmondnel5706
@desmondnel5706 2 жыл бұрын
Went back to look at the esolang 'FolderCode' and Ver 1.0 was intended for you. Literally. It's right there on the page in black and white.
@GrandePirataCibernetico
@GrandePirataCibernetico 2 ай бұрын
Bitcoin script is a forth-like language, It' not turing-complete which means it doesn't have loops or goto. To push data in the stack you even specify the size in bytes of that data. Satoshi even disabled concatenation.
@DarioBucca
@DarioBucca 3 жыл бұрын
Even if it is still in heavy development Porth is worth a look. It's a programming language inspired by forth, developed by Tsoding
@marswatcher
@marswatcher 2 жыл бұрын
Try a Udamonic Scamp embedded computer. It comes with Forth preinstalled, and it's really great to use. There are a few youtube videos on it, if you search for it. Pretty cool!
@heavoid
@heavoid 2 жыл бұрын
is that John Egbert from Team Fortress 2 (2007)?
@petrus4
@petrus4 2 жыл бұрын
Whenever I need to perform some mathematics now, I've started always using GNU FORTH instead of Windows Calculator.
@somebody5329
@somebody5329 3 жыл бұрын
5:50 loud sound warning(fixed, sry)
@Truttle1
@Truttle1 3 жыл бұрын
fixed!
@Malenbolai
@Malenbolai 11 ай бұрын
a wise man once said "never odd or even"
@bujitself
@bujitself 3 жыл бұрын
I love making myself, do that every day
@kantoros
@kantoros 3 жыл бұрын
1:41 actual smart people actually call it 'postfix' because the name 'reversed polish' is stupid
@MrTortoed
@MrTortoed 3 жыл бұрын
I wonder what made you cover this language ;) great video
@SealedKiller
@SealedKiller 3 жыл бұрын
Wow your voice has changed! Haven't watched your vids for a longer time.
@tschak909
@tschak909 Жыл бұрын
In Forth, stack manipulation is explcit. This is why everything looks backwards.
@thepinkbunnyempire1027
@thepinkbunnyempire1027 3 жыл бұрын
why is homestuck appearing everywhere now
@GeorgeTsiros
@GeorgeTsiros 2 жыл бұрын
'if' is the beginning of the entire if-then-else process. it pops the flag from the stack. the runtime also starts iterating through the rest of the program looking for "else" and "then" words. the words if, then and else mark the starts and ends of blocks. in RPL (sister language to FORTH), you _could_ do 2 MOD IF 0 == THEN "even" ELSE "odd" END (and 1 DISP 7 FREEZE if you want the string to be shown on the screen instead of on the always-shown data stack) or 2 MOD 0 == IF THEN "even" ELSE "odd" END OR you could use the true RPN 💪😤 words IFT/IFTE 2 MOD 0 == "even" "odd" IFTE in SysRPL the same would be a bit more verbose, but quite a bit faster and if there is an error the calculator would probably lose its memory :: CK1NOLASTWD %2 %MOD %0 %= ' :: $ "even" ; ' :: $ "odd" ; ITE ; if memory serves me right
@EdKolis
@EdKolis 2 жыл бұрын
FORTH needs a sequel called FITH. Actually, I need to drink a FITH after watching this video!
@GegoXaren
@GegoXaren 2 жыл бұрын
Why then is at the end, is becouse it push things to the stack and when you reach then it evaluatus it??? So it becomes if then else then???
@yash1152
@yash1152 2 жыл бұрын
4:14 it has to end in then, as it's RPN
@ArazNebiza
@ArazNebiza 3 жыл бұрын
FORTH!1!?1?
@josedavidgrilletperez5795
@josedavidgrilletperez5795 2 ай бұрын
I want make a 3d printer with arduino nano, using a firmware written in forth
@KC9UDX
@KC9UDX Жыл бұрын
Peter Gabriel used Firth, or so I've heard.
@alurma
@alurma Жыл бұрын
Nice vid bro
@arsenic1987
@arsenic1987 2 жыл бұрын
I've only gotten to 4:47, and I have to say that your attitude seems awfully negative and critical... You're talking about a language that basically "formed" our modern computing in such a derogatory way that it makes the viewing experience not good.. And a comment on "you specify the ending index first 'for some reason' " comment you made.. Couldn't you expand on why? Or legitimately say "I'm not sure why" in a more sincere way. To explain it; the word "do" is also a programming word. And you are pushing 100 onto the stack, then the start index. What integer do you think the "do" word needs first? Where to start naturally, thus the start index is the last one before "do", otherwise a processor step of doing a "swap" would be needed. Anywho. Just a comment on your presentation of the language. This is the first video I watched regarding it, since I'm currently working on a 90s CNC machine, and after studying the language, it's the same as FORTH just with different 'words'. :)
@SystemAlchemist
@SystemAlchemist Жыл бұрын
It's probably because he didn't understand the main functionality of the language. You also see it when he is criticising that a word definition without spaces is an error. Forth is such a genius language because it perfectly combines the high and low level - it's basically JIT compiled. And the compiler being just a simple word that let's words compile themselves is also awesome. I'd put Forth just below Lisp (the Scheme flavour) as one of the greatest and most powerful languages.
@jenniferw8963
@jenniferw8963 2 жыл бұрын
Hrmm..seems like Forth would of been the appropriate programming language for the HP 48GX.. Love my old HP 48GX and RPN :)
@kurosurintomasu
@kurosurintomasu Жыл бұрын
john egbert jumpscare
@chixenlegjo
@chixenlegjo 2 жыл бұрын
I gotta make fith. It’s just required by this point.
@ianferguson5043
@ianferguson5043 3 жыл бұрын
Great video, keep it up
@BAgodmode
@BAgodmode Жыл бұрын
“I’m gonna make a joke language, and nerds in the future will use it to write Linux kernel modules in 1991. Also there will be a thing called Linux. Anyways, done clocking out for the day, gonna go smash some gash and smoke some grass” - Chuck Moore, being a chad.
@herzogsbuick
@herzogsbuick 2 жыл бұрын
Fantastic!
@yomama1938j
@yomama1938j 3 жыл бұрын
Have you considered doing a video on game builder garage.
@robinsonrojaslopez5200
@robinsonrojaslopez5200 2 жыл бұрын
Talk about Porth, is a modern stack programming language
@LucasBucur
@LucasBucur 10 ай бұрын
how do you use inputs?
@I_Was_Named_This_Way...
@I_Was_Named_This_Way... 2 жыл бұрын
That outro music… it sounds wrong
@lukedeets5016
@lukedeets5016 3 жыл бұрын
Awesome videos!
@tsobf242
@tsobf242 3 жыл бұрын
"Forth isn't an esolang! ... okay you know.. fine.."
@adwaith-rajesh
@adwaith-rajesh 3 жыл бұрын
you should check out porth btw
@Officialbear0
@Officialbear0 2 жыл бұрын
hey dude are you done with esolang why im gonna help you with batch proggraming language
@Truttle1
@Truttle1 2 жыл бұрын
What?
@Officialbear0
@Officialbear0 2 жыл бұрын
@@Truttle1 yeah i know batch prrograming language
@Officialbear0
@Officialbear0 2 жыл бұрын
@@Truttle1 DUDE TRUST ME İ KNOW MAKEİNG BATCH FİLEEE
@richardhall206
@richardhall206 Жыл бұрын
All the Forth programmers looking at the odd or even example crying out to remove the '0 =' and switch the terms. Faster!
@muchamadyja
@muchamadyja Жыл бұрын
The invertor still alive 😂
@hgmlle
@hgmlle 3 жыл бұрын
homstuc
@Truttle1
@Truttle1 3 жыл бұрын
jhon ebgert
@esolangsemerald6394
@esolangsemerald6394 3 жыл бұрын
sudburbe
@KatzRool
@KatzRool 3 жыл бұрын
4:16 saving this
@jangamecuber
@jangamecuber 3 жыл бұрын
can we do fith next /j
@alfaeco15
@alfaeco15 Ай бұрын
Forth Eorlingas!
@DLBeatty
@DLBeatty Жыл бұрын
Seems like BASIC with OCD.
@otesunki
@otesunki 3 жыл бұрын
tzoding approves
@coppersundew
@coppersundew 2 жыл бұрын
I found your channel through r/place😄
@Truttle1
@Truttle1 2 жыл бұрын
Cool! How did you find the channel though, since it’s just the logo on r/place?
@coppersundew
@coppersundew 2 жыл бұрын
@@Truttle1 I was on the critical role server, and I noticed them talking about your logo😄
@xmurrcattx3498
@xmurrcattx3498 10 ай бұрын
oh yes, dup, the universal word for duplication in almost every single English speaking country, I'm glad we've discovered your mysterious secret.......
@masonthedunce3711
@masonthedunce3711 3 жыл бұрын
awesome !!
@thomas3754
@thomas3754 3 жыл бұрын
What did i just witness...
@thacuber2a03
@thacuber2a03 3 жыл бұрын
i took my phone and the first thing i saw was this
@jomy10-games
@jomy10-games Жыл бұрын
So basically WebAssembly
@obvioustruth
@obvioustruth Жыл бұрын
I heard about forth when I was a kid, but I didn't expect it was so shitty.
@tschak909
@tschak909 Жыл бұрын
and again, your 99 bottles of beer example, can be broken up into a few different words, making it simpler to understand.
@DylanMatthewTurner
@DylanMatthewTurner 3 жыл бұрын
Isn't forth the first esolang? I think the reason there are so many stack based esolangs is bc many are inspired by forth too not just bc it's a data structure that makes sense in the context of creating a simple esolang.
@Truttle1
@Truttle1 3 жыл бұрын
It inspired many esolangs, but FORTH itself is technically not an esolang.
@StefanNoack
@StefanNoack 3 жыл бұрын
It really does make writing a compiler easier. just look at this implementation of a forth compiler in forth (the ":" word, example taken from CollapseOS) : : ENTRY 1 ( compiled ) C, BEGIN WORD LIT" ;" S= IF COMPILE EXIT EXIT THEN CURWORD PARSE IF LITN ELSE CURWORD FIND IF DUP 1- C@ $80 AND ( imm? ) IF EXECUTE ELSE , THEN ELSE (wnf) THEN THEN AGAIN ; It just reads: Create a new entry in the dictionary, mark it as a "compiled word". Then repeat the following: If the next word is ; compile* the exit word, and then exit yourself, otherwise try to parse a number and put it as a literal, 'but if it wasn't parsable as a number, find the word in the dictionary. if it has the immediate flag set, execute it now (this the hijack point for adding new compiler features), else write it at the end of the word being compiled (the word doing the writing is "," which is easy to miss...). Else (if the word was not found) go to the word not found (wnf) handler. But not only esolangs use the simplicity of the stack machine, "intermediate languages" such as MSIL or WebAssembly are also stack based, which makes it easier to write backends for many different platforms, I guess. Probably code optimization also works very well with this approach. * the COMPILE word does nothing more than finding the word, then writing the reference to it at the end of the current word, but without all the stuff regarding the immediate flag
@SimonClarkstone
@SimonClarkstone 3 жыл бұрын
Ah, I see that ":" in that Forth contains the whole compiler mode, rather than just starting a word and switching the parser to compile-mode. That is clever, but makes compilation very hard to separate from :-definitions though.
@HansBezemer
@HansBezemer 2 жыл бұрын
@@Truttle1 IMHO it's NOT an esolang. Esolangs are basically works of art - not workhorses. With (net) 35 yrs of Forth programming under my belt and more than 50 KLOCs of Forth code - both private and professional - I can definitely state it's NOT an esolang. Some examples: (1) It took a guy a full day of work to merge a dozen CSV files to one consistent dataset. I wrote a program in 5 working days. The estimate to do the same thing in C by an external company was three man months; (2) I once hacked a simple LDAP converter in an hour or two. The guy who asked me to was impressed and asked for the source. Then he opened the paper drawer - and I asked him why. He said: "There's only one page coming out, so I supposed it was out of paper"; (3) Late 90-ies, early noughties a guy from networking came in with a Cisco XML file - and needed a CSV. He asked me if I could do anything - but didn't expect much, because "you need quite some lib to parse this stuff". I treated the tags as commands - which is easy in Forth. I had a workable solution the same afternoon; (4) Some files had to be merged and generate a new file. Forth produced a 30-50K executable. Later the guy came in and asked me to "make it a PHP script - because if the program was so small, it couldn't amount to much". The program contained a DBMS, an RFC 4180 implementation and an INI file interpreter - and no: it didn't require any .DLLs.
@jumhig
@jumhig Жыл бұрын
I would just redefine "then" as "endif"...
@davidgari3240
@davidgari3240 Жыл бұрын
Well done! Forth is way better than Third.
@yash1152
@yash1152 2 жыл бұрын
4:14 the video is nice but the pace is not what i like. offtracked needlessly long all around.
@finlayl2505
@finlayl2505 2 жыл бұрын
Good video, then
@normalcat
@normalcat 3 жыл бұрын
firs- uhhh fourth
@mkDaniel
@mkDaniel 3 жыл бұрын
You are second. Oh, you did that.
@normalcat
@normalcat 3 жыл бұрын
@@mkDaniel well i wouldnt count truttle since hes able to post before 99% of people WITH notifications can even know it exists
@boscorner
@boscorner 3 жыл бұрын
Forth!
@cramble
@cramble 2 жыл бұрын
four words, Try Porth
@faraday4160
@faraday4160 2 жыл бұрын
you seem sadder than usually everything alright?
@Truttle1
@Truttle1 2 жыл бұрын
Yeah?
@Blue-Maned_Hawk
@Blue-Maned_Hawk 3 жыл бұрын
Great video! A couple things: you forgot to credit the usage of the XKCD you used, and the audio seemed a bit more echoey than normal. Otherwise, pretty cool!
@pauldusa
@pauldusa Жыл бұрын
Autostart
@official-obama
@official-obama 2 жыл бұрын
i'll try to implement brain***k so i can program easier
C
12:36
Truttle1
Рет қаралды 59 М.
Javagony!
7:55
Truttle1
Рет қаралды 37 М.
번쩍번쩍 거리는 입
0:32
승비니 Seungbini
Рет қаралды 182 МЛН
УНО Реверс в Амонг Ас : игра на выбывание
0:19
Фани Хани
Рет қаралды 1,3 МЛН
Andro, ELMAN, TONI, MONA - Зари (Official Audio)
2:53
RAAVA MUSIC
Рет қаралды 8 МЛН
FORTH - Better than BASIC?
14:30
NCOT Technology
Рет қаралды 43 М.
Turing Incompleteness, The Halting Problem, and Waduzitdo!
13:22
"Programming a 144-computer chip to minimize power" - Chuck Moore (2013)
40:13
Strange Loop Conference
Рет қаралды 14 М.
(Dead)Fish!
11:40
Truttle1
Рет қаралды 20 М.
Atari 2600 Programming is a NIGHTMARE
15:38
Truttle1
Рет қаралды 21 М.
P vs. NP: The Unsolvable(?) Computer Science Problem
13:37
Truttle1
Рет қаралды 10 М.
Shakespeare Programming Language!
11:50
Truttle1
Рет қаралды 28 М.
A Competition for Unreadable Code?
12:33
LaurieWired
Рет қаралды 170 М.
A Brief Introduction to Esoteric Programming Languages
21:35
Hillel Wayne
Рет қаралды 337 М.
the TRUTH about this NEW Language (BETTER Than Rust and C++?)
7:37
번쩍번쩍 거리는 입
0:32
승비니 Seungbini
Рет қаралды 182 МЛН