Slashdot Mirror


User: padzo

padzo's activity in the archive.

Stories
0
Comments
5
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 5

  1. Re:I liked Amiga E a lot. . . on C, Objective-C, C++... D! Future Or failure? · · Score: 1

    LZX was stolen (well, the coder was employed) by Microsoft. It became part of their CAB compression tool. What a great compression algo it was, especially at the time.

  2. Dangerous and far too vast? on C, Objective-C, C++... D! Future Or failure? · · Score: 1
    Is it just me (coming from, and currently enjoying, Java), or does this language reek of unsafe and dangerous programs with potential for some really tricky-to-find bugs?

    For example:

    Dynamic array length

    Yeah, this sounds like a cool feature, but (quote):
    The .length property of a dynamic array can be set as the lvalue of an = operator:

    array.length = 7;

    This causes the array to be reallocated in place, and the existing contents copied over to the new array. If the new array length is shorter, only enough are copied to fill the new array. If the new array length is longer, the remainder is filled out with the default initializer.

    To maximize efficiency, the runtime always tries to resize the array in place to avoid extra copying. It will always do a copy if the new size is larger and the array was not allocated via the new operator or a previous resize operation.

    This means that if there is an array slice immediately following the array being resized, the resized array could overlap the slice; i.e.:

    char[] a = new char[20];
    char[] b = a[0..10];
    char[] c = a[10..20];

    b.length = 15; // always resized in place because it is sliced
    // from a[] which has enough memory for 15 chars
    b[11] = 'x'; // a[15] and c[5] are also affected

    a.length = 1;
    a.length = 20; // no net change to memory layout

    c.length = 12; // always does a copy because c[] is not at the
    // start of a gc allocation block
    c[5] = 'y'; // does not affect contents of a[] or b[]

    a.length = 25; // may or may not do a copy
    a[3] = 'z'; // may or may not affect b[3] which still overlaps
    // the old a[3]
    This is SO dangerous - it doesn't seem like the way forward for a modern programming language. It puts the impetus on the coder to undestand a rather strange side-effect of an efficiency in the language to know that they might accidentally be modifying a different array without realising.

    Another example:

    Out / inout function parameters

    These sound like a nice short-cut to allow pass-by-reference or multiple return values, but also seem dangerous:
    void foo(out int bar)
    {
    }

    int bar = 3;
    foo(bar);
    // bar is now 0
    I have only briefly skimmed the surface of the language, but it seems to me like an attempt to cater for everyone. I fear that, like C++ can be, it will result in too many unknowns and areas of murky understanding. This will in-turn lead to hard to maintain code and the nasty bugs!

    padzo

  3. Re:UK Availability on The New Handspring Visor: The Edge · · Score: 1

    Check out: http://www.handspring.co.uk
    you will find it on that site for the price of
    £280 plus VAT. You can even order it online there.

    I guess once it finds its way to the streets the price may be around 280 including VAT.

  4. Re:Don't buy any of them! on Playstation 2 delayed again · · Score: 2

    Do you really think that a "New PC" will be able to realistically emulate a Dreamcast, PS2 and a Dolphin???????

    Huh???

    firstly - a PC might be able to match a DC in terms of hardware, but certainly not the PS2 or Dolphin.

    secondly - it takes time to write emulators. The first PC PSX/N64 emulators are only just maturing. That's after the console has been on the market for >4 years.

    Maybe after a few years this will be possible, but not now. My advice - remember, the DC is available now, and the PS2/Dolphin will probably be >6 months away. Many good games may come out on multiple systems, so if you need a new console now, the DC is the only option. Remember, if you are own a PSX, that when the PS2 comes out, it will play all your old games, and use all your old peripherals. (The PS2 will use the PSX dual-shock joypad as standard.)

    just my 2 cents

    padzo

  5. Re:Amiga and Transmeta on Amiga Growing Silent Again? · · Score: 1

    It started sometime last year, when Amiga Inc announced a mystery "Multimedia Chip" (MMC), that would power their new-fangle PC.
    VERY reliable insiders said "It's amazing, never seen any performance like this.... but I can't say what it is."
    The then CEO - Jeff Schindler, said "we can't announce our CPU partner yet, but believe us, it's revolutionary".
    At this point, the "Amiga Community"(tm) went speculation mad (as usual), and several names, including TransMeta's were bandied around.
    More recently, the hype got going again, because AInc were hiring, and talking about MIPS engineers, and links to ATI, etc. People started to suggest Transmeta again, and it started to become widespread.
    When the Linux choice was announced, people put 2+2 together, and got Transmeta (again).
    At the recent World of Amiga show, the video showed the Transmeta Logo (along with Sun's logo, ATI's logo, Corel's logo etc.) Amigans took this to mean that this was the chip choice.

    BUT... remember - this has NEVER been officially announced or even hinted at in any statement by AInc. The Transmeta logo may have been used in the Linux->Linus->Transmeta context to represent their choice of Linux for the Kernel base.

    That's the story.... it could just as easily turn out to be the Sun MAJC chip...

    Padzo