Re^2: How much Perl6 have we got?
by thor (Priest) on Aug 21, 2005 at 15:59 UTC
|
It is very simple to answer - we have most of it.
Yeah...simple indeed. Of course when someone says that "most" of something is done, there's an implication that whomever is working on it would have a reasonable estimation of a completion date. Moreover, if they have an estimated completion date, it's sometime in the near future. Perhaps I'm being cynical, but whenever I glance at "This week in Perl 6" on perl.com, there's some pretty fundamental stuff being ironed out still. Not that therey's anything wrong with that; it's a big project. You'll forgive me if I don't agree with your assessment of the situation.
This is also what keeps me away from Perl 6 except for curiosity. I want to wait until there's an official, 100% done version in my hands before I take on the task of learning anything of the language. Why? Right now, I have no guarantee that some feature isn't going to be completely re-written and/or obviated tomorrow. Again, I'm fine with this; Perl 6 is stil in the design stage...a stage in which things are supposed to change. However, my sanity doesn't play well with moving targets.
I'm also in awe of the Pugs project. Again, however, I don't want to write programs that are ahead of the runtime. That is to say that Pugs isn't a feature complete version of Perl 6. It can't be; Perl 6 isn't done. My luck being what it is, I'd write some program based on the specifications and Pugs will have not implemented some key feature of that program. I'm not saying that I'm sort of über coder, just saying that I'm unlucky. ;)
thor
Feel the white light, the light within
Be your own disciple, fan the sparks of will
For all of us waiting, your kingdom will come
| [reply] |
|
My luck being what it is, I'd write some program based on the specifications and Pugs will have not implemented some key feature of that program. I'm not saying that I'm sort of über coder, just saying that I'm unlucky. ;)
What is wrong with that? This type of thing has been driving the Pugs project from the very begining. I started writing (failing) tests based off the Synopsis in the early days of the project, and within days autrijus would have turned them into passing tests. Both chromatic and Darren Duncan and their work on the p6 versions of Test::Builder and Locale::KeyedText respectively, drove much of the early OO functionality in Pugs. The current work on the Javascript and Perl 5 backends have helped fuel autrijus's work on PIL (Pugs Intermediate Language) and my work on the Object MetaModel.
My point is really that Pugs is a different sort of project than your usual compiler/interpreter project. It is (in autrijus's words) optimized for fun. And autrijus has always said he does not intend Pugs to be "the" Perl 6, and one of the original goals of the project was to help iron out the design of Perl 6 itself by providing a reference implementation.
Another thing about Pugs is that all you need to do to get a commiter bits is ask, and all you need do to get your name in the AUTHORS file is contribute something (even commiting it yourself is not a requirement). No one is expected to contribute any more then they want to or can. Because after all, it's optimized for fun :)
| [reply] |
|
The thing is that I learn by doing. Most if not all of how I learned Perl 5 was trying out small snippets, seeing that my understanding was off, revising my understanding, rinse, lather, and repeat. I think that my frustration would grow and I'd end up giving it up anyways. I aplaud yours and everyone elses efforts. I'm sure that they help the Perl 6 folks immeasureably. It's not for me, however.
thor
Feel the white light, the light within
Be your own disciple, fan the sparks of will
For all of us waiting, your kingdom will come
| [reply] |
|
A reply falls below the community's threshold of quality. You may see it by logging in.
|
|
| [reply] |
|
There's another way of looking at it .... if you code stuff in pugs, then you're way ahead of those who don't, as far as being Perl6-ready. Of course, i wouldn't advise coding anything intended for production, but it's worth exploring fun stuff in your spare time.
--
TTTATCGGTCGTTATATAGATGTTTGCA
| [reply] |
Re^2: How much Perl6 have we got?
by lolajl (Acolyte) on Aug 21, 2005 at 11:16 UTC
|
Speaking of which, is there a binary package of Pugs for OSX? Like PxPerl, which is compiled for Windows OS ? | [reply] |
|
| [reply] [d/l] [select] |
|
Unfortunately, it's not that simple. After installing this package, this is what shows up when I run this:
install Perl6::Pugs
ghc-pkg: cannot find package plugins
*** Inline Haskell support disabled. If you want dynamic loading
of haskell modules, please install the hs-plugins library:
http://www.cse.unsw.edu.au/~dons/code/hs-plugins
Remember to "make register" after "make install" for hs-plugins!
*** Perl 5 embedding disabled. If you want Perl 5 support, please set the
PUGS_EMBED environment variable to contain "perl5".
*** GHC 6.4.0 cannot work with GCC 4.0 on Mac OS X.
Please use "sudo gcc_select 3.3" to pick an earlier version of gcc,
or set the CC environment variable to "/usr/bin/gcc-3.3".
Running make test
Make had some problems, maybe interrupted? Won't test
Running make install
Attempting to install the hs-plugins ultimately brings up this, after running make:
Rebuilding dependencies ... Could not find module `Language.Haskell.Hsx':
use -v to see a list of the files searched for
(imported from System/Plugins/Parser.hs)
Moving on, after changing gcc to 3.3, I then attempted to install Perl6::Pugs, it wouldn't install at all. I got this:
Makefile.PL returned status 65280
Running make test
Make had some problems, maybe interrupted? Won't test
Running make install
Make had some problems, maybe interrupted? Won't install
I've attempted this before, so that's why I asked if there's a binary installation. | [reply] |
|
|
|
|
|
Re^2: How much Perl6 have we got?
by Anonymous Monk on Aug 22, 2005 at 05:41 UTC
|
Perl 6 is not ready, period! Don't sound like a salesman who does not know his job.
| [reply] |
|
| [reply] |