from typing import List


def smart_join(elements: List[str], sep: str) -> str:
    """
    Uses regular join after filtering null elements from the initial list
    Parameters
    ----------
    elements : List[str]
        list of /possibly null/ strings to join
    sep : str
        joining delimiter

    Returns
    -------
    joined string
    """
    # deletes null-objects before regular joining
    elements = list(filter(lambda x: x, elements))
    return sep.join(elements)