0:00
you got 10 minutes you're on awesome
0:03
thank you I'll try to share the screen
0:05
from the another account because like on
0:07
that I don't have um I hope you can see
0:10
it can you see the
0:12
screen
0:14
yes okay I I I assume you can see yes
0:17
you can see the screen so um yes uh my
0:22
adventure fors actually started back
0:25
like four years ago and uh I just
0:27
recently understood for them by just I
0:30
mean like around uh like three months or
0:33
something like that like and uh this
0:36
like this iteration of Fort I I've done
0:39
like 10 20 fors by now like uh this is
0:42
like a month old and um yeah this is
0:47
like this is a uh actually like
0:52
Fort defined by like inspired by color
0:55
Fort and uh I first saw it from Timothy
0:59
lattes and like I really liked it and I
1:01
uh implemented and I thought like uh I'm
1:05
I'm very happy with it and um I can like
1:09
maybe showcase something interesting
1:11
about the editor like uh I care a lot
1:14
about like uh programmer comfort so I I
1:18
sort of um did like an editor from
1:21
scratch and c and won and like
1:25
um and like in three like screens uh
1:29
like there's like this uh x64 assembler
1:33
and um yeah this this test on the right
1:38
side that you see it's it's like
1:41
um generating assembly from uh Define
1:45
with in this language basically So like
1:50
um basically some like
1:54
um oops oh yeah I mean I can maybe
1:57
showcase the editor I guess the editor
1:59
is the most interesting part so it it
2:02
has like uh undo and redo and um it can
2:08
also yeah can also like tus words um and
2:14
it doesn't matter if they're like um you
2:18
can hear me right I assume okay yes yeah
2:23
yes uh so I can hear you yes great so um
2:29
I don't know if this is new maybe uh
2:31
some someone can tell me but like the
2:33
way I do this look up is not by search
2:36
but instead when I'm compiling I have
2:39
another four bytes uh per character for
2:42
a block um that gives the source
2:46
location for the currently compiled word
2:49
and like uh like that it's you can just
2:52
search right inside this block for uh
2:56
the next iteration uh I mean the next
2:59
occurrence of of of that value and then
3:01
like it it finds the word perfectly
3:03
which uh I thought would be only
3:05
possible with uh like binary encoded
3:08
fors you know with specific like IDs for
3:11
Words um but yeah I I found that with
3:15
the simple extension uh like four bytes
3:17
per character um it's it actually allows
3:22
to look up that and also go to the
3:23
definition like uh instantly without uh
3:28
like making okay a having to
3:30
about and like um another thing I found
3:34
like uh interesting was that
3:40
um like I added a word called this and
3:44
now it gives me all theur all the
3:46
calling um it traces the word basically
3:50
so you can look up all uh execution of
3:54
this word in order of execution that it
3:58
happen so it's okay first execute here
4:00
and then here and then like goes on like
4:03
this so sort of gives like a um
4:06
intuition about like what happens in the
4:08
program without having to execute it or
4:11
like do like uh print test or whatever
4:14
like um you know this I mean this this
4:17
might seem maybe yeah it's it's too fast
4:21
right uh but uh I hope people get the
4:24
idea like
4:27
um so actually another interesting thing
4:31
is like with Ford I found like because
4:33
it's so free it's uh we can even go one
4:36
level up right what is this word getting
4:41
like where is this word getting called
4:43
in order and where is that like where is
4:46
the word that is getting called from is
4:49
like uh is called right so it gives like
4:53
oh we're compiling like three times in
4:55
this like uh we're executing that verbs
4:57
three times over here one time over here
5:00
and so on like um basically like a
5:04
compile time
5:07
um idea of like what what gets executed
5:11
um without having to do print like
5:15
[Music]
5:17
um I'm really underprepared for this I I
5:21
use this for to uh like to do games and
5:25
Graphics uh at least that's what I will
5:27
use it for um right now I'm compiling
5:30
spr and um like I got some of this stuff
5:36
maybe x64 will be much more interesting
5:39
like the Syntax for the x64 looks like
5:42
this actually um so there's this like
5:46
Direction register I'm just going to
5:48
turn off the examples and I'm going to
5:50
turn off uh
5:53
oops turn off spe also so
5:58
yeah all right
6:01
so um yeah basically
6:04
like with with this assem you can just
6:07
change the direction and like
6:11
um uh it's it's it was it reads as uh
6:16
from Ax to BX register let's move uh and
6:20
unsign which I Define as 32 bits you can
6:23
change this to Long which makes it like
6:25
RBX to
6:27
uh oh wait
6:30
what okay this is this is somehow broken
6:34
I'm
6:35
sorry oh no
6:37
it's yes yes yes of course not of course
6:40
yeah it's it's it's exactly I mean you
6:44
could instead like reading I mean
6:46
writing from uh RX
6:49
to register RBX you could uh write to
6:52
memory RB RBX or uh maybe like have like
6:57
an offset here uh
7:00
um or you could even do like s bites
7:05
like um like S 4 c one c 2 uh C
7:11
8 uh Al or C with
7:15
offset so um all of that works and again
7:19
like with this um like Direction uh like
7:24
so yeah basically um we can have
7:28
variables like
7:30
oh sorry do we have questions or
7:33
comments Tomatoes I don't know so
7:39
um yeah or we could do like an add you
7:43
like unsign ad like long at or bat
7:46
without having to change like um the
7:50
registers as we usually do in the
7:52
assembly so I yeah I um
8:00
and what
8:01
else I mean
8:04
uh yeah there's also jumps and uh what
8:08
not like um over here that looks like
8:12
this like labels um I mean this is the
8:15
x64 assembler um then I also use this to
8:21
compile like where is it oh
8:26
sorry Compass per V which is is the um
8:30
intermediate representation for um
8:32
shaders in welcome and like um actually
8:37
I I was expecting x64 to be a lot like
8:41
um a lot
8:43
more complicated but turned out
8:46
to be actually uh a bit more complicated
8:50
because um I'm also doing things like
8:54
having like type checked um variables
8:57
and whatnot in this language it's it's
8:59
still work can you can you complete that
9:02
sentence it's not complicated because
9:04
it's less complicated
9:06
because oh
9:08
x64 uh is less complicated because like
9:13
um x64 is a machine language right uh
9:16
machine languages are in my opinion
9:19
easier to compile than like standards
9:21
which like I can't there has to be like
9:24
you know a specific order to these like
9:28
um like definitions inside the standard
9:30
right like the capability has the
9:32
capability Ops have to come first and
9:34
then the type of operations and then uh
9:37
the uh function deficients and whatnot
9:39
so instead of just compiling right I had
9:42
to introduce the concept of like um okay
9:45
where is that sections yeah there it is
9:48
uh the concept of sections uh to compile
9:53
into like a binary with uh multiple
9:55
sections and then I had to assemble that
9:57
versus on x64 it's it was like
10:02
um yeah a lot less complicated when like
10:06
um I
10:09
mean yeah apart from a few things
10:15
um like can you say it in
10:19
words with like without showing us just
10:21
your general
10:23
impression uh general impression
10:26
regarding what sorry regarding this
10:29
less complex to use x I'm gonna have to
10:33
ask you to to wrap it up in the next
10:35
minute or two and uh perhaps back next
10:40
month and give us a more uh
10:45
expanded uh yeah version of this but
10:48
thank you I appreciate your willingness
10:51
to
10:52
present uh I want to encourage you to to
10:55
uh work something up in a more orderly
10:59
organized presentation yes yes yes yes
11:02
this is like completely impris right now
11:05
and I'm not doing like a good job of it
11:07
I hope
11:08
like this looks like St folks would be
11:11
interested in and uh thank you
11:16
uh so you want to take another minute or
11:19
you you done um I I like thanks for
11:24
listening to this like very um you know
11:28
okay un share your
11:30
and we'll move on
11:37
yes oh maybe one thing one last thing I
11:39
could showcas is like I just
11:42
added
11:55
yes okay
12:02
hey
12:03
Masa hi who are you where are you from
12:08
where are you and uh say something about
12:11
Force okay
12:13
well uh I I'm actually joining the
12:17
meeting from
12:18
Sunnyville and um I'm pting things uh C4
12:23
uh version 2.3 to uh LPC
12:27
2148 uh board so uh once I'm success
12:30
successful I'm going to probably present
12:32
that the my
12:35
experience that's
12:37
it that sounds great so uh I noticed
12:42
that somebody I did not
12:45
uh Poll for the
12:48
introductions is this guy uh
12:55
Moore and
12:57
uh I was was thinking I would run a
13:00
YouTube video of the uh Fireside so
13:03
you're just going to have to uh
13:06
imagine a YouTube video of a Fireside
13:09
running for 30 seconds uh while I
13:12
blather uh because uh I feel that if I
13:16
try to do that it'll it'll
13:19
uh it'll cause me it'll kick me off the
13:22
air again so uh Chuck boore needs to
13:25
unmute and deliver his fireside chat at
13:28
this time
13:32
you
