Skip to content
This repository has been archived by the owner on Nov 18, 2019. It is now read-only.

Add link to Perl 6 bindings #48

Merged
merged 1 commit into from Oct 28, 2015
Merged

Add link to Perl 6 bindings #48

merged 1 commit into from Oct 28, 2015

Conversation

azawawi
Copy link
Contributor

@azawawi azawawi commented Oct 20, 2015

This is a currently working implementation that works with PhantomJS via ghostdriver.

@lukeis
Copy link
Member

lukeis commented Oct 20, 2015

Any particular reason you chose to make a new fork rather than contribute to the existing perl bindings? Fragmentation here is not a good thing for users.

Also it appears your bindings only work with phantomjs? (Or is it the only concrete driver and the rest use remote?)

@ddavison
Copy link
Member

looks like his bindings are in the official perl 6 modules directory: http://modules.perl6.org/

@azawawi
Copy link
Contributor Author

azawawi commented Oct 20, 2015

It is for Perl 6 which is coming to you this christmas 👍

@lukeis PhantomJS is the first working implementation. I am working on the rest as detailed in the project status

Thanks for your time.

@lukeis
Copy link
Member

lukeis commented Oct 20, 2015

so you're saying Perl and 'Perl 6' are not related at all? There's no way a Perl 6 project could live side by side with a Perl project? It would make sense to point users to the same place and believe me, on an open source project you want as many people collaborating as possible (and it looks like the other perl project is fairly active)

@azawawi
Copy link
Contributor Author

azawawi commented Oct 20, 2015

@lukeis Thanks for your valuable feedback. Yes, Perl 6 is the next generation Perl. Please take a look at http://perl6.org.

There is also Inline::Perl5 for using Perl 5 modules within Perl 6 but one needs to follow some build instructions for it to work properly.

Also I already wrote a Parse::Selenese module using Perl 6 Grammars in an effort to automatically convert test suites and test cases into Perl 6 code from the Selenium IDE.

@ddavison
Copy link
Member

I don't see a problem with this.. I've seen major languages deviate entirely like this before. (hence "major" version [very little, or no backwards compatibility)

Perl5:

my $driver = Selenium::Remote::Driver->new;
$driver->get('http://www.google.com');
print $driver->get_title . "\n"; # "Google"

Perl6:

my $driver = Selenium::WebDriver::PhantomJS;
$driver.url("http://google.com");
say "Title: "         ~ $driver.title;

The dialect is completely different.

@azawawi
Copy link
Contributor Author

azawawi commented Oct 28, 2015

@ddavison Thanks. I fixed the Perl 6 example to include the missing .new call. My bad 👍

Also now firefox (via the webdriver extension) and chrome (via the chromedriver) are now working.

@lukeis
Copy link
Member

lukeis commented Oct 28, 2015

while I appreciate the nuances of a major version update. My point is more so that any effort should be in conjunction with the other already existing project, rather than spinning off a new project.

That being said, I'll merge this... begrudgingly :)

lukeis added a commit that referenced this pull request Oct 28, 2015
Add link to Perl 6 bindings
@lukeis lukeis merged commit 36433b2 into SeleniumHQ:master Oct 28, 2015
@azawawi
Copy link
Contributor Author

azawawi commented Oct 29, 2015

Thanks 👍

@cygx
Copy link

cygx commented Oct 29, 2015

@lukeis Perl6 is not the next iteration of Perl5, but a 'sister language' in the same family. Think of Perl5 vs Perl6 as C vs C++ or even C++ vs D.

@andreastt
Copy link
Member

Unlike Python 3, Perl 6 is actually an entirely new language for all practical purposes.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants