Swift Argument Parser Pitch

Hey Swift Community and @nnnnnnnn ,

My name is Aashritha Ananthula and I’m currently a sophomore at the University of Texas at Dallas pursuing Computer Science. Although I haven’t done Swift since High School, It’s really exciting to start working on a Swift related project again! I found out about GSoC recently from a friend and, although I’m a little late, I can hopefully finish the proposal before the deadline.

For my first proposal, The Swift ArgumentParser because it seems like a really cool project to work on! In my LINUX class at UTD, I worked on a project that utilizes TCLAP (or Templatized Command Line Argument Parser in C++) and integrating Swift with the CLI is an amazing concept in itself. Working with TCLAP and the CLI has given me an idea of how command line parsing works and, although I’m a beginner in Swift, I’d love to integrate these concepts to Swift.

Like SwitchArg, ValueArg, and other argument types in TCLAP, I would love to implement similar argument alternatives to create a swift version of the command line argument parser.

Here are some of my questions regarding the proposal…

[1] First, I wanted to ask whether Swift already has an implementation that’s similar to my proposal? If so, what can I contribute to Swift’s existing implementation?

[2] What are some challenges I might encounter when working on this project?

[3] As a beginner, I have no idea if I’m trying to do too much in the short amount of time we have available. Will I realistically be able to implement all the different argument types? What would the rough timeline look like for a project like this?

[4] If I want to write 2 proposals, can I include them in the same document if they are addressed to the same organization?

Thank you so much for reading my post! This is my first time applying for GSoC so any insights about the proposal and my topic overall is highly appreciated!!

Sincerely,
Aashritha A.

1 Like

Hello Aashritha — thanks for your interest!

A successful project would expand the feature set of the ArgumentParser library, which mostly overlaps with the main functionality of libraries like TCLAP. Have you looked into ArgumentParser, to see what kind of expansion you would be proposing? The challenges and schedule would really depend on what kind of expansion you're planning — feel free to reach out over DMs to discuss further!

I'm not sure about this one! cc @ktoso

2 Likes

@aashrithaa2001 It sounds like you would submit your two different proposals separately. :+1:

2 Likes