How? Just a bunch of volunteers? Make a wiki-like and let people edit it, show HN, and maybe eventually PL makers will add their PL to your database.
Even if you scrape Wikipedia, or stack overflow or whatever, you're going to miss the newest and also the esoteric and possibly even wider use stuff. Basically you can't do it alone.
My life is a series of "why doesn't this exist? Oh, what a gigantic pain in the ass. That's why it doesn't exist. God bless anyone who makes this, because it ain't gunna be me" situations. I hope someone has done what you are looking for.
SELECT ?language ?languageLabel ?inceptionDate
(GROUP_CONCAT(DISTINCT ?website; SEPARATOR=", ") AS ?websites)
(GROUP_CONCAT(DISTINCT ?developerLabel; SEPARATOR=", ") AS ?developers)
(GROUP_CONCAT(DISTINCT ?paradigmLabel; SEPARATOR=", ") AS ?paradigms)
WHERE {
# Find items that are either programming languages or types of programming languages
{
?language wdt:P31 wd:Q9143 . # programming language
} UNION {
?language wdt:P31 wd:Q116481801 . # type of programming language
}
# Get the inception date
?language wdt:P571 ?inceptionDate .
# Filter for languages created within the last 10 years
FILTER(?inceptionDate >= "2009-05-12"^^xsd:dateTime)
# Optional properties to get more information
OPTIONAL { ?language wdt:P856 ?website . } # official website
OPTIONAL {
?language wdt:P178 ?developer .
?developer rdfs:label ?developerLabel .
FILTER(lang(?developerLabel) = "en")
} # developer
OPTIONAL {
?language wdt:P3966 ?paradigm .
?paradigm rdfs:label ?paradigmLabel .
FILTER(lang(?paradigmLabel) = "en")
} # programming paradigm
?language rdfs:label ?languageLabel .
FILTER(lang(?languageLabel) = "en")
}
GROUP BY ?language ?languageLabel ?inceptionDate
ORDER BY DESC(?inceptionDate) # Sort by date, newest first
LIMIT 100
It's a good start, and i can't think of missing items off-hand, and i didn't know you could do that. I've done queries like this on the wiki sql itself locally, but i didn't know there was a notebook interface to querying like that.
Even if you scrape Wikipedia, or stack overflow or whatever, you're going to miss the newest and also the esoteric and possibly even wider use stuff. Basically you can't do it alone.
My life is a series of "why doesn't this exist? Oh, what a gigantic pain in the ass. That's why it doesn't exist. God bless anyone who makes this, because it ain't gunna be me" situations. I hope someone has done what you are looking for.