Khan / Khan/live-editor

function declarations get converted to variable assignment without infinite loop safety

Open
#748 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
776
Forks
180
PR merge metrics
No merged PRs in 30d

Description

variable declaration expressions such as:
```js
var test1 = function ( a, b ) {
return a + b;
};
```
result in the expected output with `KAInfiniteLoopProtect`

while function declarations such as
```js
function test2 ( a, b ) {
return a + b;
}
```
do not

repro here:
https://www.khanacademy.org/computer-programming/func-decl-vdecl-without-loop-safety/5771192026742784

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the difference between the variable declaration and function declaration examples at the linked Khan Academy program. Trace how each JavaScript form is transformed and verify that the function declaration receives KAInfiniteLoopProtect without changing the expected output.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.