# local variables

Published articles for local variables.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Writing a Debugger From Scratch - DbgRs Part 6 - Stacks

DevFeed: [Writing a Debugger From Scratch - DbgRs Part 6 - Stacks](<https://devfeed.tech/articles/writing-a-debugger-from-scratch-dbgrs-part-6-stacks-39738.md>)

Original publisher: [Read original article](<https://www.timdbg.com/posts/writing-a-debugger-from-scratch-part-6/>)

Author: Tim Misiak

Published: 2023-11-22T17:40:45Z

Content type: tutorial

Language: en

Sources: [TimDbg](<https://devfeed.tech/sources/timdbg.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [debugging](<https://devfeed.tech/topics/debugging.md>), [Windows](<https://devfeed.tech/topics/windows.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [debugger](<https://devfeed.tech/tags/debugger.md>), [execution](<https://devfeed.tech/tags/execution.md>), [function](<https://devfeed.tech/tags/function.md>), [local-variables](<https://devfeed.tech/tags/local-variables.md>), [windows](<https://devfeed.tech/tags/windows.md>)

### AI overview

This tutorial explains how DbgRs, an x64 Windows debugger, walks call stacks by unwinding register contexts to inspect stack frames, return addresses, and local variables.

### Source excerpt

(New to this series? Consider starting from part 1) At the end of the last post, DbgRs could finally set breakpoints. That was the last really critical feature needed for controlling execution of a program. Now that it can stop on an arbitrary function or code location, the next step is to find more information about the state of the program. In my opinion, the single most useful piece of information is the call stack, so that's what this post will be about.

## Emulating Window Functions in MySQL 5.7

DevFeed: [Emulating Window Functions in MySQL 5.7](<https://devfeed.tech/articles/emulating-window-functions-in-mysql-5-7-28938.md>)

Original publisher: [Read original article](<https://blog.jooq.org/emulating-window-functions-in-mysql-5-7/>)

Author: lukaseder

Published: 2023-01-20T11:07:00Z

Content type: tutorial

Language: en

Sources: [jOOQ](<https://devfeed.tech/sources/jooq.md>)

Topics: [MySQL](<https://devfeed.tech/topics/mysql.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Databases](<https://devfeed.tech/topics/databases.md>)

Tags: [dense-rank](<https://devfeed.tech/tags/dense-rank.md>), [deprecated](<https://devfeed.tech/tags/deprecated.md>), [emulations](<https://devfeed.tech/tags/emulations.md>), [local-variables](<https://devfeed.tech/tags/local-variables.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [mysql-5-7](<https://devfeed.tech/tags/mysql-5-7.md>), [ordering](<https://devfeed.tech/tags/ordering.md>), [rank](<https://devfeed.tech/tags/rank.md>), [row-number](<https://devfeed.tech/tags/row-number.md>), [sql](<https://devfeed.tech/tags/sql.md>), [window-functions](<https://devfeed.tech/tags/window-functions.md>)

### AI overview

This tutorial explains how to emulate window functions in MySQL 5.7 using user variables. It warns that the technique depends on incidental evaluation order, can break when query execution changes, and is deprecated in MySQL 8.x.

### Source excerpt

One of MySQL 8's biggest improvements is the support of window functions. As I always said in conferences, there's SQL before window functions and SQL after window functions. Once you start using them, you'll use them everywhere. Some of you poor souls are unfortunate enough to be stuck on MySQL 5.7, either of your own ... Continue reading Emulating Window Functions in MySQL 5.7 ->

## LATERAL is Your Friend to Create Local Column Variables in SQL

DevFeed: [LATERAL is Your Friend to Create Local Column Variables in SQL](<https://devfeed.tech/articles/lateral-is-your-friend-to-create-local-column-variables-in-sql-28955.md>)

Original publisher: [Read original article](<https://blog.jooq.org/lateral-is-your-friend-to-create-local-column-variables-in-sql/>)

Author: lukaseder

Published: 2022-11-04T08:56:17Z

Content type: tutorial

Language: en

Sources: [jOOQ](<https://devfeed.tech/sources/jooq.md>)

Topics: [SQL](<https://devfeed.tech/topics/sql.md>), [Databases](<https://devfeed.tech/topics/databases.md>)

Tags: [apply](<https://devfeed.tech/tags/apply.md>), [cross-apply](<https://devfeed.tech/tags/cross-apply.md>), [cross-join-lateral](<https://devfeed.tech/tags/cross-join-lateral.md>), [derived-table](<https://devfeed.tech/tags/derived-table.md>), [examples](<https://devfeed.tech/tags/examples.md>), [lateral](<https://devfeed.tech/tags/lateral.md>), [lateral-derived-table](<https://devfeed.tech/tags/lateral-derived-table.md>), [local-variables](<https://devfeed.tech/tags/local-variables.md>), [oracle](<https://devfeed.tech/tags/oracle.md>), [outer-apply](<https://devfeed.tech/tags/outer-apply.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [sql](<https://devfeed.tech/tags/sql.md>), [sql-server](<https://devfeed.tech/tags/sql-server.md>), [variables](<https://devfeed.tech/tags/variables.md>)

### AI overview

This article explains how SQL's LATERAL clause can be used to define local column variables next to the tables that provide their values. It compares this approach with derived tables and notes database-specific syntax, including SQL Server's CROSS APPLY.

### Source excerpt

The standard SQL WITH clause has been tremendously helpful in structuring SQL queries. Instead of nesting everything in unreadable derived tables like this: People have started moving the logic up front, just like in any other programming language, where we declare things first, lexically, then use them: Both queries will produce the 5 actors with ... Continue reading LATERAL is Your Friend to Create Local Column Variables in SQL ->

## Debugger Lies: Stack Corruption

DevFeed: [Debugger Lies: Stack Corruption](<https://devfeed.tech/articles/debugger-lies-stack-corruption-39722.md>)

Original publisher: [Read original article](<https://www.timdbg.com/posts/debugger-lies-part-1/>)

Author: Tim Misiak

Published: 2022-08-21T16:57:31Z

Content type: tutorial

Language: en

Sources: [TimDbg](<https://devfeed.tech/sources/timdbg.md>)

Topics: [debug](<https://devfeed.tech/topics/debug.md>), [debugging](<https://devfeed.tech/topics/debugging.md>), [MSVC](<https://devfeed.tech/topics/msvc.md>), [Security](<https://devfeed.tech/topics/security.md>), [Variable](<https://devfeed.tech/topics/variable.md>)

Tags: [bug](<https://devfeed.tech/tags/bug.md>), [crash](<https://devfeed.tech/tags/crash.md>), [debug](<https://devfeed.tech/tags/debug.md>), [debugger](<https://devfeed.tech/tags/debugger.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [local-variables](<https://devfeed.tech/tags/local-variables.md>), [memory](<https://devfeed.tech/tags/memory.md>), [msvc](<https://devfeed.tech/tags/msvc.md>), [security](<https://devfeed.tech/tags/security.md>), [stack](<https://devfeed.tech/tags/stack.md>)

### AI overview

This article explains why debuggers can produce misleading stack walks, focusing on stack corruption caused by buffer overflows that overwrite return addresses. It discusses how MSVC's /GS security checks affect crash stacks and recommends enabling /GS, along with using memory access breakpoints to investigate corruption.

### Source excerpt

There are lots of reasons your debugger might be lying to you. Sometimes it's because information is lost when compiling due to optimizations. Sometimes the symbolic debug information isn't expressive enough. Other times it can be due to a bug in the debugger (although I hope that reason is rare). One frustrating case where the debugger sometimes "lies" to you is the stack walk. It's the single most important piece of information to come out of a crash, so when the stack walk is wrong, it's probably going to make analysis difficult.

## Let's Build A Simple Interpreter. Part 18: Executing Procedure Calls

DevFeed: [Let's Build A Simple Interpreter. Part 18: Executing Procedure Calls](<https://devfeed.tech/articles/let-s-build-a-simple-interpreter-part-18-executing-procedure-calls-33321.md>)

Original publisher: [Read original article](<https://ruslanspivak.com/lsbasi-part18/>)

Author: Ruslan Spivak

Published: 2020-02-20T13:00:00Z

Content type: tutorial

Language: en

Sources: [Ruslan Spivak](<https://devfeed.tech/sources/ruslan-spivak.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [function](<https://devfeed.tech/topics/function.md>), [Algorithm](<https://devfeed.tech/topics/algorithm.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [blog](<https://devfeed.tech/tags/blog.md>), [code](<https://devfeed.tech/tags/code.md>), [constructor](<https://devfeed.tech/tags/constructor.md>), [create](<https://devfeed.tech/tags/create.md>), [function](<https://devfeed.tech/tags/function.md>), [local-variables](<https://devfeed.tech/tags/local-variables.md>), [object](<https://devfeed.tech/tags/object.md>), [parameter](<https://devfeed.tech/tags/parameter.md>), [program](<https://devfeed.tech/tags/program.md>), [variables](<https://devfeed.tech/tags/variables.md>)

### AI overview

This tutorial extends an interpreter to execute procedure calls. It focuses on procedures that access parameters and local variables, explaining activation records, call-stack handling, procedure execution, and the implementation of the visit_ProcedureCall method.

### Source excerpt

Do the best you can until you know better. Then when you know better, do better. ― Maya Angelou

## Static and extern keywords in C

DevFeed: [Static and extern keywords in C](<https://devfeed.tech/articles/static-and-extern-keywords-in-c-40742.md>)

Original publisher: [Read original article](<https://radek.io/posts/static-and-extern-keywords-in-c/>)

Published: 2011-09-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Radek Pazdera](<https://devfeed.tech/sources/radek-pazdera.md>)

Topics: [C](<https://devfeed.tech/topics/c.md>), [standard](<https://devfeed.tech/topics/standard.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [c](<https://devfeed.tech/tags/c.md>), [compilation](<https://devfeed.tech/tags/compilation.md>), [external](<https://devfeed.tech/tags/external.md>), [function](<https://devfeed.tech/tags/function.md>), [local-variables](<https://devfeed.tech/tags/local-variables.md>), [memory](<https://devfeed.tech/tags/memory.md>), [runtime](<https://devfeed.tech/tags/runtime.md>), [scope](<https://devfeed.tech/tags/scope.md>), [standard](<https://devfeed.tech/tags/standard.md>)

### AI overview

A tutorial explaining how the static and extern keywords in C affect linkage, storage duration, memory allocation, and visibility across scopes and compilation units. It also describes external, internal, and no linkage, along with static and automatic storage duration.

### Source excerpt

What does the C standard actually say about these?

## Understanding this in JavaScript Objects, Inner Functions, and Callbacks

DevFeed: [Understanding this in JavaScript Objects, Inner Functions, and Callbacks](<https://devfeed.tech/articles/javascript-objects-and-what-is-this-35421.md>)

Original publisher: [Read original article](<https://darkcoding.net/software/javascript-objects-and-what-is-this/>)

Author: Graham King

Published: 2009-02-23T02:06:41Z

Content type: tutorial

Language: en

Sources: [Graham King](<https://devfeed.tech/sources/graham-king.md>)

Topics: [JavaScript](<https://devfeed.tech/topics/javascript.md>), [callback](<https://devfeed.tech/topics/callback.md>), [bug](<https://devfeed.tech/topics/bug.md>)

Tags: [bug](<https://devfeed.tech/tags/bug.md>), [callback](<https://devfeed.tech/tags/callback.md>), [closure](<https://devfeed.tech/tags/closure.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [local-variables](<https://devfeed.tech/tags/local-variables.md>), [scope](<https://devfeed.tech/tags/scope.md>), [software](<https://devfeed.tech/tags/software.md>), [window](<https://devfeed.tech/tags/window.md>)

### AI overview

This tutorial explains how JavaScript's this behaves in object methods, inner functions, and callbacks. It shows how object context can be lost and how closures and local variables can preserve access to the intended object.

### Source excerpt

"Navigate the tricky waters of 'this' in JavaScript objects and callbacks."