Annotate bitwise017
This commit is contained in:
parent
ec3959a9f3
commit
1d71ec3f0e
|
@ -0,0 +1,50 @@
|
||||||
|
[video member=pervognsen stream_platform=twitch project=bitwise title="Ion Version 0" medium=admin vod_platform=youtube id=Oeqeqw4OHPE annotator=Miblo]
|
||||||
|
[0:08][Recap yesterday's stream and set the stage for the day][:speech]
|
||||||
|
[2:03][Plan for this week, making some fun stuff in Ion, and setting homework][:language :speech]
|
||||||
|
[5:11][Super fast walkthrough of features added over the weekend, including multi-line strings, bitwise const and array pointer-decay][:"code generation" :language :parsing :research]
|
||||||
|
[12:37][Review the work implementing basic enum support, pointer arithmetic and control-flow analysis][:"code generation" :language :parsing :research]
|
||||||
|
[15:48][Review the work implementing control-flow analysis, uncovering a bug][:"code generation" :language :parsing :research]
|
||||||
|
[18:14][Fix gen_stmt() to correctly handle the STMT_SWITCH case][:"code generation" :language :parsing :programming]
|
||||||
|
[19:04][:Run it to see that it works now, along with the control-flow analysis][:"code generation" :language :parsing]
|
||||||
|
[21:07][Review the implementation of C-style null pointers][:"code generation" :language :parsing :research]
|
||||||
|
[22:12][Q&A][:speech]
|
||||||
|
[22:33][@badflydog][@pervognsen Do you plan on supporting a \@complete note on switch statements that requires a case for all enums][:language]
|
||||||
|
[24:25][Set the Homework: Choose-Your-Own-Adventure Compiler Hacking][:"code generation" :language :parsing]
|
||||||
|
[26:39][Homework: Use of a function return value in if() statements][:"code generation" :language :parsing]
|
||||||
|
[32:51][Homework: Use of a function return value in while() loops][:"code generation" :language :parsing]
|
||||||
|
[34:42][Homework: Defer statements][:"code generation" :language :parsing]
|
||||||
|
[43:27][High-level overview of a "defer" handling implementation][:"code generation" :language :parsing]
|
||||||
|
[49:32][Q&A][:speech]
|
||||||
|
[50:46][@artexx2000][@pervognsen So defer can be statement block?][:"code generation" :language :parsing]
|
||||||
|
[51:59][A few words on the utility of the homework tasks][:"code generation" :language :parsing :speech]
|
||||||
|
[53:14][Determine to make applications and libraries in Ion][:language :library :speech]
|
||||||
|
[56:23][Download SDL2[ref
|
||||||
|
site="Simple DirectMedia Layer"
|
||||||
|
page="SDL version 2.0.8 (stable)"
|
||||||
|
url=https://www.libsdl.org/download-2.0.php] and create a new project "noir" including SDL][:library]
|
||||||
|
[1:02:49][Initialise an SDL context[ref
|
||||||
|
site="SDL Wiki"
|
||||||
|
page=SDL_Init
|
||||||
|
url=https://wiki.libsdl.org/SDL_Init]][:library :programming]
|
||||||
|
[1:09:21][@badflydog][@pervognsen I believe you have to set the system console for the project. Under linker in options]
|
||||||
|
[1:10:16][Set that SubSystem]
|
||||||
|
[1:12:32][@twicetimes][@pervognsen 'Platform' has gone back to 'win32' in that menu]
|
||||||
|
[1:12:38][Set that SubSystem for all platforms]
|
||||||
|
[1:12:50][Create an SDL window[ref
|
||||||
|
site="SDL Wiki"
|
||||||
|
page=SDL_CreateWindow
|
||||||
|
url=https://wiki.libsdl.org/SDL_CreateWindow]][:library :programming]
|
||||||
|
[1:14:35][:Run it, try to break into our program and experience MSVC's synchronous downloading of symbols]
|
||||||
|
[1:16:14][:Run it to see our SDL window]
|
||||||
|
[1:16:17][Enable our program to process keyboard input[ref
|
||||||
|
site="SDL Wiki"
|
||||||
|
page=SDL_GetKeyboardState
|
||||||
|
url=https://wiki.libsdl.org/SDL_GetKeyboardState][ref
|
||||||
|
site="SDL Wiki"
|
||||||
|
page=SDL_PumpEvents
|
||||||
|
url=https://wiki.libsdl.org/SDL_PumpEvents]][:"input handling" :library :programming]
|
||||||
|
[1:18:09][:Run it and again experience MSVC's synchronous downloading of symbols, this time for for twinapi.dll, twinapi.appcode.dll, rmclient.dll and bcrypt.dll][:library]
|
||||||
|
[1:18:46][Buffer up the keyboard input events and only print events that don't match the previous one, introducing KeyState struct and update_key_state()][:"input handling" :library :memory :programming]
|
||||||
|
[1:25:16][:Run it to find that it works][:"input handling" :library]
|
||||||
|
[1:25:25][Round up the main stream with a few additional words on the homework][:speech]
|
||||||
|
[/video]
|
|
@ -0,0 +1,3 @@
|
||||||
|
[video member=pervognsen stream_platform=twitch project=bitwise title="Ion Version 0 (Extra)" vod_platform=youtube id=DoPG4OCnh7A annotator=Miblo]
|
||||||
|
[0:00][\[Entire stream, not annotated\]][:library]
|
||||||
|
[/video]
|
Loading…
Reference in New Issue