[Laszlo-dev] org.openlaszlo.sc.CompilerError: class names only differ by upper/lower case: "Top" versus "top"
P T Withington
ptw at pobox.com
Wed Aug 6 12:36:11 PDT 2008
<flame>
Wow.
Is the bonehead who decided your file name must match your class any
relation to the bonehead who decided that line breaks had to be
represented by CR _and_ LF?
</flame>
<sigh />
On 2008-08-06, at 15:10EDT, Donald Anderson wrote:
> I don't think AS3 is the problem, the HFS+ file system is.
> And even if you take global vars out of the picture,
> you have the issue of someone that wants
> both class foo and class Foo in the same program.
> If you want to allow that (and I think AS3 probably does),
> we need a way to do that. Putting the global vars into their
> own subdirectory just splits the namespace into two. Admittedly
> a bandaid, but maybe good enough.
>
> I tried creating a java program creating names files with names
> "\u0041" and "\u0061".
> The second failed, since this is exactly equivalent to creating "A"
> and "a".
>
> http://forums.macosxhints.com/showthread.php?t=14607
>
> is one of many places that confirms that HFS+
> is case preserving, but it does not distinguish between upper and
> lower case.
>
> My recollection is that Windows FAT32 has some similar properties.
> So I think we are stuck
> with subdirectories as a solution, and it's our choice how
> sophisticated we want to be with that.
>
> - Don
>
> On Aug 6, 2008, at 1:39 PM, P T Withington wrote:
>
>> Surely in AS3 you can have a global and a class that only differ in
>> case. In which case, we need a different strategy for how we
>> implement global vars.
>>
>> On 2008-08-06, at 13:15EDT, Henry Minsky wrote:
>>
>>> I think the flex compiler, like Java, requires that the file name be
>>> the same as the top level definition which
>>> it publishes, so there's not any choice of file name for a given
>>> global declaration.
>>>
>>>
>>>
>>> On Wed, Aug 6, 2008 at 12:13 PM, P T Withington <ptw at pobox.com>
>>> wrote:
>>>> Maybe we just need to come up with an encoding for the names to
>>>> indicate
>>>> case. Is the filesystem case-insensitive if you use a utf8
>>>> filename?
>>>>
>>>> On 2008-08-06, at 09:36EDT, Donald Anderson wrote:
>>>>
>>>>> Well, I think both 'var top' and 'class Top' are competing for
>>>>> file name top.as vs. Top.as.
>>>>>
>>>>> We can always use subdirectories to distinguish names (I think!).
>>>>> Your idiom seems natural to me, and makes it seem like we
>>>>> should try it. For example, all globals are pushed to their
>>>>> own directory:
>>>>> global/top.as
>>>>>
>>>>> You still wouldn't be able to have classes or globals that
>>>>> aren't distinguished within their own set. If we wanted full
>>>>> distinguishing, we'd have to do something like:
>>>>>
>>>>> 0/ClassName.as
>>>>> 1/AnotherClassName.as
>>>>>
>>>>> yuck.
>>>>>
>>>>> - Don
>>>>>
>>>>> On Aug 6, 2008, at 8:51 AM, P T Withington wrote:
>>>>>
>>>>>> I should have included my example code:
>>>>>>
>>>>>>> <canvas debug="true" >
>>>>>>> <script when="immediate">
>>>>>>> var free = 'outer';
>>>>>>>
>>>>>>> class Top {
>>>>>>> function test () { return free; }
>>>>>>> }
>>>>>>>
>>>>>>> class Sub extends Top {
>>>>>>> var free = 'inner';
>>>>>>>
>>>>>>> function test () { return free; }
>>>>>>> }
>>>>>>>
>>>>>>> var top = new Top;
>>>>>>> var sub = new Sub;
>>>>>>> Debug.info("top.test() => %s", top.test());
>>>>>>> Debug.info("sub.test() => %s", sub.test());
>>>>>>> </script>
>>>>>>> </canvas>
>>>>>>
>>>>>> There is only one class Top. Is the check overly conservative?
>>>>>>
>>>>>> On 2008-08-06, at 08:39EDT, Donald Anderson wrote:
>>>>>>
>>>>>>> That check is in because classes must be named to files.
>>>>>>> Class Glorp must be in file Glorp.as. But some file systems
>>>>>>> including MacOS, do not have complete distinguishing between
>>>>>>> case:
>>>>>>>
>>>>>>> $ echo foo >> glorp.as
>>>>>>> $ echo bar >> Glorp.as
>>>>>>> $ cat glorp.as
>>>>>>> foo
>>>>>>> bar
>>>>>>>
>>>>>>>
>>>>>>> On Aug 6, 2008, at 8:06 AM, P T Withington wrote:
>>>>>>>
>>>>>>>> Why am I getting this error when compiling to swf9?
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>>
>>>>>>> Don Anderson
>>>>>>> Java/C/C++, Berkeley DB, systems consultant
>>>>>>>
>>>>>>> voice: 617-547-7881
>>>>>>> email: dda at ddanderson.com
>>>>>>> www: http://www.ddanderson.com
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>>
>>>>> Don Anderson
>>>>> Java/C/C++, Berkeley DB, systems consultant
>>>>>
>>>>> voice: 617-547-7881
>>>>> email: dda at ddanderson.com
>>>>> www: http://www.ddanderson.com
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Henry Minsky
>>> Software Architect
>>> hminsky at laszlosystems.com
>>
>
>
> --
>
> Don Anderson
> Java/C/C++, Berkeley DB, systems consultant
>
> voice: 617-547-7881
> email: dda at ddanderson.com
> www: http://www.ddanderson.com
>
>
>
More information about the Laszlo-dev
mailing list