[Thread Prev][Thread Next][Index]
[ferret_users] additional ')' in repeat loop does not lead to error but wrong values
- To: ferret users <ferret_users@xxxxxxxx>
- Subject: [ferret_users] additional ')' in repeat loop does not lead to error but wrong values
- From: "Riede, Hella" <hella.riede@xxxxxxx>
- Date: Mon, 3 Jul 2017 19:49:52 +0000
- Accept-language: en-US, de-DE
- Arc-authentication-results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of hella.riede@xxxxxxx designates 192.67.218.51 as permitted sender) smtp.mailfrom=hella.riede@xxxxxxx
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:content-transfer-encoding:content-id:fcc:user-agent :content-language:accept-language:message-id:date:thread-index :thread-topic:subject:to:from:arc-authentication-results; bh=C7E24LRNsK9ST5XZBu1Zq3pg4O0X/icXc0fA06mOleY=; b=BrNbAe1vt0UvLrplXYEZ1r92eFvZ7ms1HgnSrhEo7m+uJHfa4JB41shaFaLhBtBXXk /vorZ9ByRduMvMIw9SF4jGg9vz/pEq+LrY6RVywlMivu++BB00J+OOaMeJdzYT1OmURo 16ORYpQA7kfK+Wk2N8ub4r6Cm7Rizhnua/8c1CBsf3JvKv19xOiK/KfVKT8tTfruZGOv 9u3jPZ1DSSSZiJGsGvsqLkA6jygjQwGUjNVz7WbaJK9w7/dkm+ylaVLRvIQRVdyNqSNC envh1tcWCTjkSnMaoSchzgAlknFt+WEPOe0NIGLaTiV0hvs46mK870tM2MM2UpoJK6rc JjRw==
- Arc-seal: i=1; a=rsa-sha256; t=1499111400; cv=none; d=google.com; s=arc-20160816; b=lJAJ7tsZ+ot5x7FphXzPR9ddl8ARiwFOsbzrIzncH1kas+c+wlOGqj3ecHmVsTJty1 WK+vzfx2N3jFGHTXjs/wp0hq4Kw/WfXdIBkeXCt+2oNxsFACx4lGSxDqyFpQvqoeriNV /IiPH15MIejJYQATz3eziCNoXs/VC9qmw9g8g32xb1IRk8t+vS9IEbKDdSvFuc1jm3U2 K9Rs5Wg3m5gkTraeXxaVU1JPaOJi0oIdpt0I+f77v0s4hS/+LFpQbq7GR+Mr0cMfYG8D aaIhZXIXlu8KZHx61gMY9tnyDe1Ww+sp5XfhvrT9U3gZtGYV7jy4uTEjSrbYSV0TTZ9t woUw==
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=noaa-gov.20150623.gappssmtp.com; s=20150623; h=from:to:subject:thread-topic:thread-index:date:message-id :accept-language:content-language:user-agent:fcc:content-id :content-transfer-encoding:mime-version:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :list-post:list-help:list-archive; bh=C7E24LRNsK9ST5XZBu1Zq3pg4O0X/icXc0fA06mOleY=; b=aS/pB5zgYgxUZqIm8EvelkeCJQKRpOt4dGUkLDXTSgVtWtneLx79i4icTd2gVsErAJ cEEXg+2IlEdYuIcDyHHzLqhkhqeJ0xORoC/pklFChmJVQSec6oxloOZv2ToEnfRKm5gD lpBi2PlWrhxboV6V1g7GkGl7+y8trrDWk2Tc8Xwoly1tkAhqpG4psT+6riT8+yL9lFHE vO+Lubw3HwBzHkS7gG8UmGHrtwixW56Aj7VyfT1YAjdSszqN17u1C5wqUFPwQMAqyRjV Pglnp25jeBp7fY587xyiaKEDRmnrDCKgw+QPp/TUv/mw/7sbaTL6vr+bnktN2Fp+1jhP VuvA==
- Fcc: imap://hella.riede@xxxxxxxxxxxx/Sent Items
- List-archive: <https://groups.google.com/a/noaa.gov/group/ferret_users/>
- List-help: <https://support.google.com/a/noaa.gov/bin/topic.py?topic=25838>, <mailto:ferret_users+help@noaa.gov>
- List-id: <ferret_users.noaa.gov>
- List-post: <https://groups.google.com/a/noaa.gov/group/ferret_users/post>, <mailto:ferret_users@noaa.gov>
- Mailing-list: list ferret_users@xxxxxxxx; contact ferret_users+owners@xxxxxxxx
- Sender: owner-ferret_users@xxxxxxxx
- Thread-index: AQHS9DB8ySIIvBmpI0+bKZkniB4qxg==
- Thread-topic: additional ')' in repeat loop does not lead to error but wrong values
- User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.1
Dear ferreters,
I discovered that an additional round bracket at the end of a repeat statement does not lead to an error that exits the command but instead carries on with wrong / old values. Some statements within the loop are apparently then not executed anymore.
Here's an example where the loop works as expected:
NOAA/PMEL TMAP
FERRET v7.1 (optimized)
Linux 2.6.32-642.13.1.el6.x86_64 64-bit - 02/15/17
3-Jul-17 17:53
yes? repeat/range=1:3:1/name=count (def sym count = `count`; say ($count); message)
1
Hit Carriage Return to continue
2
Hit Carriage Return to continue
3
Hit Carriage Return to continue
Here's an example where the loop has an additional round bracket at the end. The value of the ($count) symbol is not reassigned anymore despite 'def sym count = `count`':
yes? repeat/range=1:3:1/name=count (def sym count = `count`; say ($count); message))
4
Hit Carriage Return to continue
4
Hit Carriage Return to continue
4
Hit Carriage Return to continue
Listing the variable 'count' as well shows that this values changes within the repeat loop as expected, so just the symbol statement seems to be skipped:
yes? repeat/range=1:3:1/name=count (list count; def sym count = `count`; say ($count); message))
VARIABLE : constant
1.000
4
Hit Carriage Return to continue
VARIABLE : constant
2.000
4
Hit Carriage Return to continue
VARIABLE : constant
3.000
4
Hit Carriage Return to continue
So in this way one might inadvertently end up with wrong values assigned to a symbol, or at least other values than expected.
Best wishes,
Hella
[Thread Prev][Thread Next][Index]
Contact Us
Dept of Commerce /
NOAA /
OAR /
PMEL /
Ferret
Privacy Policy | Disclaimer | Accessibility Statement