Tsoding is just a chad. "i made a web server using my own self hosted, stack based, reverse polish notated language, while hacking the standard c libraries and POSIX libraries, all while writing it in emacs navigating the kajillion shortcuts with ease as if i was the one who made them" Also Tsoding: "im not a developer, im just a boomer"
@legendrags Жыл бұрын
fr
@danielschmitt57502 жыл бұрын
Hey I discovered your channel recently and I just wanted to leave a comment and tell you that I really enjoy your content. You have a gift to explain complex matters in a fairly simple way and it just makes fun seeing you build stuff and following your thoughts on the way. Keep it up.
@souls.70332 жыл бұрын
Not only that, but this guy is funny af ! mf randomly goes uwu lmao
@BryanChance2 жыл бұрын
He's crazy amazing!!
@vivekascoder2 жыл бұрын
Next Video: I made my website using my own framework using my own language in a ide written in my own language.
@BloodRoseRecords2 жыл бұрын
goals af
@socktt55342 жыл бұрын
On an operating system in my own language
@wijiler58342 жыл бұрын
You just gave me a very good idea on how to make my language readable lol
@DecoyBBQCam Жыл бұрын
@@socktt5534templeos
@MrKristian2522 жыл бұрын
Now you need to make a web server blog running on porth, that would be pretty neat
@stephenkamenar2 жыл бұрын
yea you can simply port wordpress, it's open source
@imaginaoYouTubesoquecomarrobas2 жыл бұрын
I'm legit excited for Porth's development, as it looks really cool
@telnobynoyator_61832 жыл бұрын
When it printed "100007F" for the localhost address it actually omitted a 0 in the front. If you look at it like "0100007F" you can more easily see what byte goes where.
@soyitiel2 жыл бұрын
bruh, I wish to achive your level of happiness when coding my passion projects, it usually is just pain
@JakobKenda Жыл бұрын
i respect tutorialspoint because at least they know what they're doing. geeks for geeks just throw something together and call it an article
@noonjeem21912 жыл бұрын
BTW There is a constant 'INADDR_LOOPBACK' which is 127.0.0.1 You reinvented it with a different name.
@pragyan3942 жыл бұрын
This is indeed pog
@monsieuralexandergulbu36782 жыл бұрын
p in pog means porth, change my mind
@小鳥ちゃん2 жыл бұрын
@@monsieuralexandergulbu3678 so pog is Porth OG?
@monsieuralexandergulbu36782 жыл бұрын
@@小鳥ちゃん i like yOur cut G
@Khusyasy2 жыл бұрын
very guud, i was watching the stream replay, and then suddenly this comes up in youtube notification
@abhaythakur85722 жыл бұрын
no words , thanks to KZbin for recommending me this video
@MatrixSanAndreasOfficial2 жыл бұрын
This gets me goosebumps every time you doing this!
@lachee30552 жыл бұрын
8:57 HTTP3 doesn't use TCP, but rather QUIC. So, "we are forever going to use TCP" aged well.
@itallstartedwhen2 жыл бұрын
I was literally writing a "multipart/form-data" parser today, and was wondering why are they using ` `, and by enjoying this video I found out this was part of the standard / RFC. I haven't read the RFC, but might do it soon
@RubiksSolver252 жыл бұрын
When binding or accepting sockets you would specify the pointer to a socket and it’s length because they handle generic sockets and you can use sockets for LAN, Bluetooth or raw, even others hence length, as their socket structures are different sizes
@burakuren51882 жыл бұрын
Really !? Wow bro bravo! Instantly subscribed
@13thlwvemike952 жыл бұрын
Is there anything you didn't make ?
@wtfisgoingon5352 ай бұрын
This men love calling himself "just a troll" but man... He is so inspiriting. Too bad we can't like each time we look a video. Thanks for your content :)
@SiddharthPanda_infinity_crew2 жыл бұрын
1.5x and this is gold! Inspiring
@sabyrzhankadir25462 жыл бұрын
omg didnt expect porth getting that far
@nefrace Жыл бұрын
The really funny thing for me is that fantasy retro-console called WASM4 has Porth bindings for it and uses "4orth" compiler to build WASM binaries. I've heard about Porth there in the first place and didn't know you've made it. Really impressive stuff!
@dronkarian2 жыл бұрын
Didnt understand much but cool to watch an expert working with code =)
@johanrong2 жыл бұрын
I never knew i would watch over an hour of an uploaded livestream
@barterjke2 жыл бұрын
Hello! Really impressed with the state of the language. Much further then in previous time. Wanted to ask: did you considered llvm? Build time is slow, but cross platform, all speed power of c is included. By the way, you can use llvm ir to check types and struct with ease.
@miguelbautistaperez79032 жыл бұрын
59:31 just made my day. Love u youre the best
@maxoumimaro2 жыл бұрын
So you know you can just open /usr/include/sys/socket.h , the file exist in plain text and is plain C with macros defining those values.
@gabriellevesque21852 жыл бұрын
I was confused about that too, just open the header file directly and that’s it haha
@alexandrohdez39822 жыл бұрын
Great video, great project 💪
@Sirvierl0ffel2 жыл бұрын
42:24 You missed a typo: "...an opposite *ot* INADDR_ANY" instead of "...an opposite *to* INADDR_ANY"
@vonatok2 жыл бұрын
The stream was epic, paug!
@AshtonSnapp2 жыл бұрын
What about UDP (User Datagram Protocol), which is like TCP but cares about speed rather than ensuring data gets to its destination.
@grmancool2 жыл бұрын
fuck turing completeness, *this* is the trial that makes this a real programming language
@pabloduran2032 жыл бұрын
How about `in*` with the same functionality as `if*` that uses the previous let binding's end for not to repeat ends and to reduce indentation?
@no-ld3hz2 жыл бұрын
lmao my grandmother wanted to teach me reverse polish notation when I was younger.
@kijetesantakalu2 жыл бұрын
The quine output txt-file should be a symlink to the source file. :D
@nekoill2 жыл бұрын
17:10 I believe it's called "option paralysis", Tso
@Bobbias2 жыл бұрын
Or "Analysis Paralysis" of you like rhymes.
@TarousDT2 жыл бұрын
I love that you have to have 16777343 as a constant for localhost. Reminds me of the quake fast inverse sqrt "what the fuck?"
@scottspitlerII2 жыл бұрын
Glad to know I am not alone in my own language journey :p
@antonioduarte23862 жыл бұрын
You’re saying in the video that we’re stuck with TCP for a while, but I think QUIC is gaining quite a lot of traction ;)
@replikvltyoutube37272 жыл бұрын
Multiplayer snake in porth using server in porth? 😆
@gifti2582 жыл бұрын
wtf has rpn to do with reversing the order of arguments?!?
@jaopredoramires2 жыл бұрын
I'd really like to know what's your configuration (like OS, WM, colors, etc). Do you have a video on that? Or do you plan on doing it?
@eclipse6322 жыл бұрын
looks like stock i3 to me
@EmielvanGoor2 жыл бұрын
Like the look of the font in the editor, which one is it?
@shikle3890 Жыл бұрын
dude, I used to have that microphone, but my electrical connection was so junkie that it will shock me if I touch it xD
@burakgazicetin36282 жыл бұрын
Im just cirious about your TCP selection. On intro you said I will do a basic thing and told about http version, and you selected the TCP instead of UDP, why?
@otherkrabs2 жыл бұрын
HTTP uses TCP
@burakgazicetin36282 жыл бұрын
@@otherkrabs Im really stuppid 😀
@kaksisve40122 жыл бұрын
So now Porth is a Pogger complete language.
@mrgamer-lu1im2 жыл бұрын
INADDR_LOCAL is equivalent to INADDR_LOOPBACK
@mariomaliqi1842 жыл бұрын
Are u using vim keybindings?
@Konnuslahti2 жыл бұрын
Can anyone / tsoding explain what's the advantage of using Reverse Polish Notation for Porth? Is it for memes or actually useful in some cases :) Wikipedia says it's faster to type? Is this why
@bigmistqke2 жыл бұрын
It's for ease of compilation afaik. As porth is stack based, reversed polish notation removes the need for AST. For example '1 2 +' 👉 'push 1 to stack' 'push 2 to the stack' 'add 2 top elements of stack'.
@bigmistqke2 жыл бұрын
Btw i recommend watching the first episode of porth. It really shows the beauty/simplicity of this reverse polish notation from a compilation pov. Really crazy how quick he got something going.
@infernalsorcery7923 Жыл бұрын
Hey ! I Love your channel man!! Can you add to the mega pog todo list, to create a language with a syntax that amalgamates C, Luau, Python, and Rust essentially. Something like that written in itself could be game changing! And Im too noob to start something like this but contrib to a project that alr exists? Id be in for helping out where I can. Anyways, consider it, dont, your channel is dope, and Porth is already pretty immaculate ngl.
@infernalsorcery7923 Жыл бұрын
Oh crap, I forgot Java as well^
@greob2 жыл бұрын
8:35 on that note Google engineers have developped the QUIC protocol, which sits on top of the UDP protocol.
@leberkassemmel2 жыл бұрын
And people are already using it daily. Considering Google (and all their sites like youtube, golang etc) and other companies like Uber use it, and Chrome is the most common web browser that also supports it.
@NateLevin2 жыл бұрын
Came to the comments to say this!
@sdblck2 жыл бұрын
i'd really love if someone made a supercut of some sort of his vods, bc as much as i'm hooked by his title and thumbnail, my watchtime for yt videos are in minutes
@Bobbias2 жыл бұрын
Next up: running PHP on the Porth server.
@robheusd2 жыл бұрын
... but your implementation of htons just swaps the bytes, also in the case your machine already has the network order of bytes. It should first check the endianness of the machine. If it is big endian, do nothing, else swap the bytes...
@DanCojocaru20002 жыл бұрын
Well, for now Porth only compiles for little endian architectures.
@icringe81662 жыл бұрын
I want to ask: What's the editor you're using? Just curious.
@dromedda68102 жыл бұрын
The editor is emacs, with i3 as the window manager, and i think he uses debian linux?
@davydorynbaev2 жыл бұрын
This is very cool
@defini72 жыл бұрын
Its very hard to read porth code
@NobFella2 жыл бұрын
Its still on development, ik porth is hard to read
@leastexpected31152 жыл бұрын
now just for a rofl i want to write my own web server on some low level(ish) language
@csolorio882 жыл бұрын
My only question is... Why?
@qm3ster2 жыл бұрын
Ok, now do HTTP/3 :v
@dmitryponyatov21582 жыл бұрын
next step: porth in WASM
@ErikUden2 жыл бұрын
Poggers
@merthyr18312 жыл бұрын
part of me thinks this is a cool ass hobby project. another part thinks if you kept this shit up it could be a great general purpose language
@Bobbias2 жыл бұрын
I mean, it is already a usable general purpose language.
@ribosomerocker2 жыл бұрын
But what is greater is Forth itself - perhaps Factor if you wish for more. They are more consistent with standardising their syntax and standard libraries. I would say they are simply better Porth, though Porth is still really good.
@Bobbias2 жыл бұрын
@@ribosomerocker to be fair, Forth has had a much longer time to sort everything out too.
@Rssks2 жыл бұрын
Epic
@sajadabdulridha47362 жыл бұрын
Hello hello, I like you, I am a beginner in the field of information technology, can you give me advice, I hope it helps me in the coming period
@massakra2 жыл бұрын
Wtf is Linux cisco? Ok. Syscalls. ;)
@mrchysen7 ай бұрын
Я не знаю почему, но, когда я слышу английский с русским акцентом, я воспринимаю язык лучше
@Visleaf2 жыл бұрын
PorthChamp
@DriftJunkie2 жыл бұрын
3:07 AHAHAHAHA
@PorthoGamesBR2 жыл бұрын
If you see my name, you will understand why i want to learn this language.
@fater87112 жыл бұрын
Alá, outro brasileiro
@dmitryponyatov21582 жыл бұрын
I understand that's for fun, but anyway it is not a good idea to avoid implementing language core in C for the OS deadly inlines the C in itself. I'd myself prefer something like bytecode for wide portability 8)
@Bobbias2 жыл бұрын
Yes, Porth is not portable, but remember, that's not the point of the project. The point was to create a self hosted language.