'Draw a dot with diameter size, using color.
Optional arguments:
size -- an integer >= 1 (if given)
color -- a colorstring or a numeric color tuple
Draw a circular dot with diameter size, using color.
If size is not given, the maximum of pensize+4 and 2*pensize is used.
Example (for a Turtle instance named turtle):
>>> turtle.dot()
>>> turtle.fd(50); turtle.dot(20, "blue"); turtle.fd(50)'

def dot(self, size=None, *color):

    if (not color):
        if isinstance(size, (basestring, tuple)):
            color = self._colorstr(size)
            size = (self._pensize + max(self._pensize, 4))
        else:
            color = self._pencolor
            if (not size):
                size = (self._pensize + max(self._pensize, 4))
    else:
        if (size is None):
            size = (self._pensize + max(self._pensize, 4))
        color = self._colorstr(color)
    if hasattr(self.screen, '_dot'):
        item = self.screen._dot(self._position, size, color)
        self.items.append(item)
        if self.undobuffer:
            self.undobuffer.push(('dot', item))
    else:
        pen = self.pen()
        if self.undobuffer:
            self.undobuffer.push(['seq'])
            self.undobuffer.cumulate = True
        try:
            if (self.resizemode() == 'auto'):
                self.ht()
            self.pendown()
            self.pensize(size)
            self.pencolor(color)
            self.forward(0)
        finally:
            self.pen(pen)
        if self.undobuffer:
            self.undobuffer.cumulate = False
