title: Is there a version of the removeElement function in Go for the vector package like Java has in its Vector class?
body: <p>I am porting over some Java code into Google's Go language and I converting all code except I am stuck on just one part after an amazingly smooth port. My Go code looks like this and the section I am talking about is commented out:</p>
  
  <pre><code>func main() {
      var puzzleHistory * vector.Vector;
      puzzleHistory = vector.New(0);
      var puzzle PegPuzzle;
      puzzle.InitPegPuzzle(3,2);
      puzzleHistory.Push(puzzle);
  
      var copyPuzzle PegPuzzle;
      var currentPuzzle PegPuzzle;
  
      currentPuzzle = puzzleHistory.At(0).(PegPuzzle);
      isDone := false;
      for !isDone {
          currentPuzzle = puzzleHistory.At(0).(PegPuzzle);
          currentPuzzle.findAllValidMoves();
  
          for i := 0; i &lt; currentPuzzle.validMoves.Len(); i++ {
              copyPuzzle.NewPegPuzzle(currentPuzzle.holes, currentPuzzle.movesAlreadyDone);
              copyPuzzle.doMove(currentPuzzle.validMoves.At(i).(Move));
              // There is no function in Go's Vector that will remove an element like Java's Vector
              //puzzleHistory.removeElement(currentPuzzle);
              copyPuzzle.findAllValidMoves();
              if copyPuzzle.validMoves.Len() != 0 {
                  puzzleHistory.Push(copyPuzzle);
              }
              if copyPuzzle.isSolutionPuzzle() {
                  fmt.Printf("Puzzle Solved");
                  copyPuzzle.show();
                  isDone = true;
              }
          }
      }
  }
  </code></pre>
  
  <p>If there is no version available, which I believe there isn't ... does anyone know how I would go about implementing such a thing on my own?</p>