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

Implement a parser for .NET #4

Open
aslakhellesoy opened this issue Feb 4, 2013 · 15 comments
Open

Implement a parser for .NET #4

aslakhellesoy opened this issue Feb 4, 2013 · 15 comments
Labels

Comments

@aslakhellesoy
Copy link
Contributor

IT could use GPPG which is a Lex/Yacc clone, and would therefore be very similar to the other ones.

@gasparnagy is this something you'd be interested in helping out with as well as native .NET support for Gherkin3?

@gasparnagy
Copy link

Sure. I'm definitely interested in this.

@aslakhellesoy
Copy link
Contributor Author

@gasparnagy great!

I think it would be a good idea to start with a .NET implementation of the bool parser, to get familiar with the tool chain. Ideally it should be possible to build it with mono so we can make releases from a single OS X/Linux box.

Once this is working it will be much easier to implement a gherkin parser based on the bool project structure.

How does that sound?

@mattwynne
Copy link
Contributor

I can help a bit with this too, I still have some .NET experience left. In fact I wrote some C# today :)

@sebrose
Copy link
Contributor

sebrose commented Feb 6, 2013

On 6 February 2013 11:33, Matt Wynne notifications@github.com wrote:

I can help a bit with this too, I still have some .NET experience left. In
fact I wrote some C# today :)

I haven't done any .NET for a while, but can turn my hand to this if it
would help.


Reply to this email directly or view it on GitHubhttps://github.com//issues/4#issuecomment-13177851.

ACCU - Professionalism in Programming - http://accu.org

http://www.claysnow.co.uk
http://twitter.com/#!/sebrose
http://uk.linkedin.com/in/sebrose

@aslakhellesoy
Copy link
Contributor Author

@gasparnagy @mattwynne @sebrose please update http://cukes.info/team.html to reflect this.

When you start I suggest you just add gplex.exe and gppg.exe to ./csharp/bin along with a copy of the license for each.

You may want to create some more fine grained tickets to divide work between you.

@gasparnagy
Copy link

I'm quite overloaded next week, but in the week starting with the 18th i can look into that. I think the mono building should not be an issue.

@gasparnagy
Copy link

created an initial structure using GPPG generation. this is using an initial grammar/lexer files, i have not tested them yet, but at least the generated stuff can be compiled.
I did not check it with Mono yet.
All this is in the csharp branch - if anyone want to pick up the thread.

@ilanpillemer
Copy link
Contributor

On Sunday, February 24, 2013, Gáspár Nagy wrote:

created an initial structure using GPPG generation. this is using an
initial grammar/lexer files, i have not tested them yet, but at least the
generated stuff can be compiled.
I did not check it with Mono yet.
All this is in the csharp branch - if anyone want to pick up the thread.

  1. What do I need to build / compile on a Mac. Any steps for me to follow?
  1. If I use Windows do I just open in Visual Studio 2013? Any steps for me
    to follow?

Ilan


Reply to this email directly or view it on GitHubhttps://github.com//issues/4#issuecomment-14008132.

@gasparnagy
Copy link

With Visual Studio 2012 it should build fine (currently the generated files are also included). The only thing is that you need the to enable nuget package restore.
I'm pretty sure it complies with MsBuild - so that can be used maybe on Mac.
To regenerate the parser/lexer from the grammar files, there is a generateall.cmd in the csharp/Grammar folder.

@ilanpillemer
Copy link
Contributor

On Sunday, February 24, 2013, Gáspár Nagy wrote:

With Visual Studio 2012

Cool.

it should build fine (currently the generated files are also included).
The only thing is that you need the to enable nuget package restore.

I'm pretty sure it complies with MsBuild - so that can be used maybe on
Mac.
To regenerate the parser/lexer from the grammar files, there is a
generateall.cmd in the csharp/Grammar folder.

I am using Cygwin on Windows 7 and I had to chmod the NuGet exe in the .nuget folder
before I could get it to build.

Ilan


Reply to this email directly or view it on GitHubhttps://github.com//issues/4#issuecomment-14014939.

@ilanpillemer
Copy link
Contributor

Are you adding the visitor stuff in? Should I take a stab at it this evening?

@mattwynne
Copy link
Contributor

Typed with my Thumbs.

On 24 Feb 2013, at 20:47, Ilan Pillemer notifications@github.com wrote:

On Sunday, February 24, 2013, Gáspár Nagy wrote:

With Visual Studio 2012

Cool.

We need to aim for a travis build which will require mono, right?

Personally I'd prefer not to have to use windows/visual studio to hack on it either, and I think we certainly should keep the code usable for contributors who want to use free tools.

it should build fine (currently the generated files are also included).
The only thing is that you need the to enable nuget package restore.

I'm pretty sure it complies with MsBuild - so that can be used maybe on
Mac.
To regenerate the parser/lexer from the grammar files, there is a
generateall.cmd in the csharp/Grammar folder.

I am using Cygwin and I had to chmod the NuGet exe in the .nuget folder
before I could get it to build.

Ilan


Reply to this email directly or view it on GitHubhttps://github.com//issues/4#issuecomment-14014939.


Reply to this email directly or view it on GitHub.

@ilanpillemer
Copy link
Contributor

On Monday, February 25, 2013, Matt Wynne wrote:

Typed with my Thumbs.

On 24 Feb 2013, at 20:47, Ilan Pillemer <notifications@github.com<javascript:_e({}, 'cvml', 'notifications@github.com');>>
wrote:

On Sunday, February 24, 2013, Gáspár Nagy wrote:

With Visual Studio 2012

Cool.

We need to aim for a travis build which will require mono, right?

That's my understanding too.

Personally I'd prefer not to have to use windows/visual studio to hack on
it either, and I think we certainly should keep the code usable for
contributors who want to use free tools.

I also would prefer to only use free tools.

I am not a .NET expert in any way so my assistance in that regard is
limited.

But I someone can give me the steps to do this on my Mac I would really
appreciate it.

Also typed with my thumbs.

Ilan

it should build fine (currently the generated files are also
included).
The only thing is that you need the to enable nuget package restore.

I'm pretty sure it complies with MsBuild - so that can be used maybe
on
Mac.
To regenerate the parser/lexer from the grammar files, there is a
generateall.cmd in the csharp/Grammar folder.

I am using Cygwin and I had to chmod the NuGet exe in the .nuget folder
before I could get it to build.

Ilan


Reply to this email directly or view it on GitHub<
https://github.com/cucumber/bool/issues/4#issuecomment-14014939>.


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHubhttps://github.com//issues/4#issuecomment-14033498.

@aslakhellesoy
Copy link
Contributor Author

We need to aim for a travis build which will require mono, right?

According to travis-ci/travis-ci#649 there won't be mono on travis boxen, but there might be Windows/.NET one day.

We should still make sure it runs on Mono and can be built with a simple make so it's easy for non-Windows developers to hack on it.

@gasparnagy
Copy link

The entire project and the setup is very simple, so I would not worry about mono and non-windows building. I just don't have experience with Mono xbuild (the MsBuild compatible build system) and nuget support. But since we only have nunit as external nuget reference, we can even bypass the nuget stuff and just copy the necessary files to the bin folder.

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

No branches or pull requests

5 participants