Case sensitivity in Livecode ??

Mark Wieder ahsoftware at sonic.net
Tue Jun 7 12:16:21 EDT 2022


On 6/7/22 00:18, Mark Waddingham via use-livecode wrote:

> How is that any better than putting something like this in a library or 
> back script:
> 
>      function gkMyMagicValue
>          return 17
>      end gkMyMagicValue
> 
> Including the global declaration its the same number of lines (indeed 
> less, as you'd need to put a global declaration in every script which 
> wanted to use said global constant...).

1. Because it's a function, not a constant.
   put gkMyMagicValue() into tVar
is cognitively different from
   put gkMyMagicValue into tVar

Something like 17 is a trivial case. Something more like real world 
usage would be

constant kRootURL="http://example.com/aUrlThatMightChange/api/v2"

2. Because the server already build supports the "include" keyword which 
would neatly solve the issue, but none of the other platforms do. Why?

3. Because every other language I've used has global constants and makes 
this easy. It's only xtalk that makes this hard. If an LC goal is to 
provide a tool for learning coding then multiple definitions of the same 
constant is a paradigm that is not transportable to other languages, and 
indeed will probably result in a compiler error.

4. Because it gets tiresome having to explain to new developers that you 
have to declare constants in multiple scripts even though it's the same 
constant you already declared and the workaround is to use a getter 
function as you described.

-- 
  Mark Wieder
  ahsoftware at gmail.com



More information about the use-livecode mailing list