Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Common Lisp barely has syntax. Where are all the reliable F/OSS cross-platform CL implementations then?

    chromatic, I understand your frustration with jpersson's comparison, but that does not make your false analogy correct.

    If we start with the premise that "sharp objects are cheap and easy to fabricate", it's a huge leap to ask "where are all of the disposable samurai swords [wikipedia.org]?" In fact, there are very many "disposable sharp objects", but we call them "razor blades", "box cutters" and "toothpicks".

    Th

    • Consider what happens when you add vectors, hashes, macros, MOP, generic functions, and format strings. The only thing the surface syntax simplifies is the Common Lisp reader function, not the entirety of the implementation.

      I think that was exactly chromatic’s point: whether or not the surface syntax is complex is not what makes the entirety of the implementation big and complex. Unlike the Schemes you mention, Perl 6 puts the entirety of the implementation (or nearly) under the syntax umbrella. This means there is no language core to implement sooner than the rest of the system.

      So you are correct, but so is chromatic.

      (Even pumpkings assert that Only Perl Can Parse Perl, with all seriousness.)

      Sorry, that doesn’t support your argument. The fact that only perl can parse Perl is not because Perl’s syntax is so quirky that implementing a parser would be painfully difficult. It’s because you cannot parse Perl without executing it.

      But not being able to statically reason about code without executing it is not at all exclusive to Perl. F.ex., IDE code completion is never going to be as robust for a language with open, runtime-mutable classes as it is for, say, Java. (Unless the IDE is part of the same VM as the code, and the code is compiled on the fly during editing. I hear there is a language where they do that sort of thing…)

      • The fact that only perl can parse Perl is not because Perl’s syntax is so quirky that implementing a parser would be painfully difficult. It’s because you cannot parse Perl without executing it.

        So only perl can execute Perl, then? Why is that?

        • That is because the language is big and quirky in all sorts of ways, obvious and obscure alike – much more so than just the surface syntax itself.

          But we were talking about surface syntax, so that is beside the point.