Описание тега lexical-scope

Lexical scoping (sometimes known as static scoping) is a convention used with many programming languages that sets the scope (range of functionality) of a variable so that it may only be called (referenced) from within the block of code in which it is defined. The scope is determined when the code is compiled. A variable declared in this fashion is sometimes called a private variable.
1 ответ

Можете ли вы включить функцию R, чтобы увидеть значения своих формалей при оценке?

В языке R предположим, что у меня есть функция ff(jj, kk, mm). Я хотел бы, чтобы вызывающая функция (или вызывающий человек в интерактивном сеансе) могла сделать мм произвольным образом зависящим от jj и kk во время вызова. Для конкретности предполо…
11 июл '14 в 06:55
0 ответов

Лексический пример не работает

Почему это закрытие не работает? var derivedKey; lightwallet.keystore.deriveKeyFromPassword(password, function (err, pwDerivedKey) { derivedKey = pwDerivedKey; }); if (!derivedKey){ console.error ("ERROR no derivedKey"); } Отдает ошибку. Каковы возм…
1 ответ

Лексическая область видимости в C# лямбда / анонимные делегаты

Я хочу проверить, не переполнится ли простое математическое выражение (используя checked а также catch(OverflowException)), но без необходимости каждый раз использовать блок try-catch. Таким образом, выражение (не результат!) Должно быть передано фу…
18 фев '10 в 10:27
1 ответ

Как использовать лямбду в качестве лексической области в C++

Коды такие: int a = 1; auto f = [a] {return a;}; a = 100; std::cout << f() << endl; return 0; Я ожидал увидеть 100 в результате. Тем не менее a как замерзает при захвате в f, Результат 1, Есть ли способ сохранить a соответствует когда a …
1 ответ

Emacs lisp: передать лексическую область видимости функции?

Python 3 имеет функцию locals() анс globals() которые позволяют передавать именованные значения текущей области как минимум для целей только для чтения в функцию. В emacs lisp я хочу написать функцию для интерполяции строк. Для этого потребуется дос…
25 июл '15 в 19:19
1 ответ

JavaScript Map shadowing

При написании синтаксического анализатора на JavaScript для любого языка, очевидно, используется Map для хранения отображений имен в переменных. Большинство языков позволяют тем или иным образом переменную во внутренней области видимости скрывать од…
08 апр '17 в 16:52
0 ответов

Почему "this" теряет свой контекст в этом примере?

Я был под впечатлением this нашел бы ближайший объект (vampire) и ссылаться на него, однако в этом примере this относится к окну и, таким образом, undefined, Почему this потерять свой контекст здесь? var vampire = { dislikes: [ 'garlic', 'crosses', …
26 ноя '18 в 23:23
1 ответ

Когда определяется Lexical Scope для функции внутри функции?

Я посмотрел на другие лексические вопросы об области применения в R, и я не могу найти ответ. Рассмотрим этот код: f <- function(x) { g <- function(y) { y + z } z <- 4 x + g(x) } f(3) f(3) вернет ответ 10. Мой вопрос почему? В точке g() опр…
14 апр '15 в 17:44
4 ответа

Лексический импорт полезных функций в большом скрипте

Иногда мне нужна полезная функция полезности, как List::Util::max в середине большой программы, которая делает много вещей. Так что если я сделаю use List::Util 'max'; В верхней части моей программы я застрял с этим символом, загрязняя все мое прост…
14 июн '10 в 16:52
1 ответ

Блоки не видят методы (ресурсы шеф-повара)

Допустим, у нас есть два ресурса: template 'template1' do owner 'root' group 'root' end template 'template2' do owner 'root' group 'root' end Я хотел бы повторно использовать код внутри ресурсов. Однако, если я определю процедуру в рецепте, вы получ…
13 май '12 в 20:25
2 ответа

Странное взаимодействие между лексической привязкой и defvar в emacs lisp

В следующем файле emacs lisp рассказывается о том, что происходит, когда Алиса использует локальную переменную с лексической привязкой. foo в ее файле инициализации и Боб определяет foo в качестве глобальной специальной переменной с defvar в своем ф…
01 июл '13 в 08:53
3 ответа

Лексические параметры видимости в javascript

Работая через Javascript Koans, я зацикливался на следующем коде: it("should use lexical scoping to synthesise functions", function () { function makeMysteryFunction(makerValue) { var newFunction = function doMysteriousThing(param) { return makerVal…
11 июл '13 в 23:55
2 ответа

Эксперты JavaScript: почему `with` сводит на нет оптимизацию компилятора, связанную с областью действия

Читая книгу Кайла Симпсона "Вы не знаете": "Области применения и замыкания", он утверждает, что вам следует держаться подальше от eval() функция и with ключевое слово, потому что всякий раз, когда компилятор видит эти 2 (я перефразирую), он не выпол…
11 сен '17 в 17:37
2 ответа

Рекурсивное закрытие в Javascript

function buildList( list ) { var i = 0; var first = function () { console.log( "in" ) console.log( i ); } var Second = function () { console.log( "out" ) first(); } return Second; } var a = buildList( [1, 2, 3] ) console.dir( a ); a(); // Here clos…
3 ответа

Как перевести "это" в D3 JavaScript для TypeScript?

Я знаю, что "this" в JavaScript имеет другое значение, чем в TypeScript, в соответствии с этой статьей "this" в TypeScript. У меня есть следующий код в JavaScript, который используется для создания более толстого штриха на выбранном узле и для всех …
3 ответа

Есть ли у лексической сферы динамический аспект?

Кажется, это обычное явление, когда доступ к лексической области может быть осуществлен во время компиляции (или статическим анализатором, так как мой пример на Python), основанным просто на расположении в исходном коде. Вот очень простой пример, ко…
22 сен '15 в 21:51
3 ответа

Почему IIFE необходим для создания новой области?

От вас не знают, JS: for (var i=1; i<=5; i++) { setTimeout( function timer(){ console.log( i ); }, i*1000 ); } дает 6 6 6 6 6 но с использованием IIFE, как так for (var i=1; i<=5; i++) { (function(){ var j = i; setTimeout( function timer(){ co…
31 май '18 в 02:00
0 ответов

Примеры языков программирования без лексического контекста

Я знаю, что большинство языков программирования, используемых в наши дни, использует лексическую область видимости (javascript, pyton и т. Д.). На каких языках не используется лексическая область? Есть ли какой-то язык, который использует как лексич…
1 ответ

Лексическая область действия функции обратного вызова

Может ли кто-нибудь объяснить мне, почему startDate и endDate не находятся в области видимости в обратном вызове, переданном в функцию фильтра. var events = [], eventsDataSource = [], statusChstatusChanges = [], statusChangesDataSource = []; functio…
29 мар '16 в 12:00
2 ответа

Что именно означает понятие лексического контекста в JavaScript?

У меня есть следующие сомнения относительно точного значения понятия лексической области видимости в JavaScript. Итак, из того, что я понял, это можно объяснить: void fun() { int x = 5; void fun2() { printf("%d", x); } } показывая, что любой внутрен…
18 авг '16 в 13:07