Re:Let's compile like it's 1992 (2014)
by zozbot234 on Tuesday February 27, 2024 @05:21AM
(#39522384)
LOGO is a great take on LISP-like languages overall, unfortunately it uses dynamic scope. Of course this only comes up in larger programs but I do wonder if anyone has made a lexically-scoped LOGO variant and what it might be like to teach coding in it.
Re:Let's compile like it's 1992 (2014)
by fuzztester on Tuesday February 27, 2024 @03:29PM
(#39529413)
What is the difference between dynamic and lexical scope? And what are they?
I googled it, but could not figure it out on a quick look, at least.
#lazyweb
Re:Let's compile like it's 1992 (2014)
by trealira on Tuesday February 27, 2024 @03:45PM
(#39529644)
Dynamic scope means you that whoever last bound the variable at runtime determines its value, not whichever outer scope surrounds it.
I guess it would be something like this in pseudo code:
var dynamic = 5
function foo() {
print(dynamic)
}
function bar() {
var dynamic = 6
// foo() prints 6 due to the binding above
foo()
// After bar() exits, "dynamic" will go back to being 5
}
Free Logos are available even today.