Dosya:Algol&Fortran Family By Skippppp.svg
Sayfa içeriği diğer dillerde desteklenmemektedir.
Vikipedi, özgür ansiklopedi
Bu SVG dosyasının PNG önizlemesinin boyutu: 556 × 599 piksel. Diğer çözünürlükler: 223 × 240 piksel | 445 × 480 piksel | 713 × 768 piksel | 950 × 1.024 piksel | 1.901 × 2.048 piksel | 645 × 695 piksel.
Tam çözünürlük (SVG dosyası, sözde 645 × 695 piksel, dosya boyutu: 80 KB)
Bu dosya Wikimedia Commons'ta bulunmaktadır. Dosyanın açıklaması aşağıda gösterilmiştir. Commons, serbest/özgür telifli medya dosyalarının bulundurulduğu depodur. Siz de yardım edebilirsiniz. |
Özet
AçıklamaAlgol&Fortran Family By Skippppp.svg |
English: A timeline and family tree of the Algol, Fortran, and COBOL programming language families. |
Tarih | |
Kaynak | Shazz, Borkowsk, User:Qwertyus |
Yazar | Skippppp,Shazz,Borkowsk, User:Qwertyus |
Diğer sürümler | https://commons.wikimedia.org/w/index.php?title=File:Algol%26Fortran_family-by-Borkowski.svg |
Tikz source code
\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\usepackage{xcolor}
\colorlet{bg1}{blue!10}
\begin{document}
\begin{tikzpicture}[scale=0.35, thick]
% Used to rescale the later decades.
\ExplSyntaxOn
\long\def\y#1#2{
\str_case_e:nnF {#1#2} {
{00} {100}
{02} {101}
{03} {101}
{08} {104}
{10} {105}
{11} {106}
{12} {107}
}{#1#2}
}
% Fancy tikz to find the midpoint of 2 anchors.
\long\def\findmid#1#2#3{
($(#2)!#1!(#3)$)
}
\ExplSyntaxOff
% Background colours
\fill[bg1] (-27, \y51) rectangle (25, \y60);
\fill[white] (-27, \y60) rectangle (25, \y70);
\fill[bg1] (-27, \y70) rectangle (25, \y80);
\fill[white] (-27, \y80) rectangle (25, \y90);
\fill[bg1] (-27, \y90) rectangle (25, \y00);
\fill[white] (-27, \y00) rectangle (25, \y10);
\fill[bg1] (-27, \y10) rectangle (25, \y12);
% Dates
\node[anchor=south west, opacity=0.5] at (-27, \y51) {\large 1950's};
\foreach \date in {60, 70, ..., 90} {
\node[anchor=south west, opacity=0.5] at (-27, \expandafter\y\date) {\large 19\date's};
}
\node[anchor=south west, opacity=0.5] at (-27, \y00) {\large 2000's};
\node[anchor=south west, opacity=0.5] at (-27, \y10) {\large 2010's};
% Nodes with linebreaks should have center alignment
\tikzset{every path/.append style={align=center}}
% All the nodes.
% I have tried to make it somewhat organised, but it's still a mess.
\node (speedcoding) at (-10, \y53) {Speedcoding (1953)};
\node (fortran 1) at (-10, \y55) {Fortran (1955)};
\node (flowmatic) at ( 20, \y55) {\textsc{flow-matic}\\(1955)};
\node (algol 58) at ( 00, \y58) {Algol (1958)};
\node (cobol 60) at ( 20, \y60) {\textsc{cobol}\\(1960)};
\node (fortran 2) at (-15, \y58) {Fortran II};
\node (algol 60) at ( 00, \y60) {Algol 60};
\node (simula 62) at ( 10, \y62) {Simula\\(1962)};
\node (cpl) at ( 05, \y63) {\textsc{cpl}\\(1963)};
\node (basic) at (-20, \y64) {\textsc{basic}\\(1964)};
\node (fortran 4) at (-15, \y66) {Fortran IV\\(1966)};
\node (bcpl) at ( 05, \y66) {\textsc{bcpl}\\(1966)};
\node (simula 67) at ( 10, \y67) {Simula 67};
\node (algol 68) at ( 00, \y68) {Algol 68};
\node (pascal) at (-05, \y70) {Pascal\\(1970)};
\node (smalltalk) at ( 15, \y72) {Smalltalk\\(1972)};
\node (c72) at ( 05, \y72) {C\\(1972)};
\node (fortran 77) at (-15, \y77) {Fortran 77};
\node (modula 2) at (-10, \y78) {Modula-2\\(1978)};
\node (modula 3) at (-10, \y88) {Modula-3\\(1988)};
\node (ada 83) at ( 00, \y83) {Ada\\(1983)};
\node (cpp83) at ( 10, \y83) {C++\\(1983)};
\node (cobol 85) at ( 20, \y95) {\textsc{cobol} 85};
\node (c89) at ( 05, \y89) {C 89};
\node (fortran 90) at (-15, \y90) {Fortran 90};
\node (vba) at (-20, \y91) {Visual Basic\\(1991)};
\node (fortran 95) at (-15, \y95) {Fortran 95};
\node (ada 95) at ( 00, \y95) {Ada 95};
\node (delphi) at (-05, \y95) {Delphi\\(1995)};
\node (cpp98) at ( 10, \y98) {C++98};
\node (c99) at ( 05, \y99) {C 99};
\node (cobol 02) at ( 20, \y02) {\textsc{cobol} 2002};
\node (fortran 03) at (-15, \y03) {Fortran 03};
\node (fortran 08) at (-15, \y08) {Fortran 08};
\node (c11) at ( 05, \y11) {C 11};
\node (cpp11) at ( 10, \y11) {C++ 11};
% Add 0.5 because there is no good way to route connections otherwise
\node (pl 1) at (-10, \y64+0.5) {\textsc{pl/i} (1964)};
% All the connections should have rounded corners.
\tikzset{every path/.append style={rounded corners}}
% The PL/I mess
\draw (fortran 2) -| \findmid{0.2}{pl 1.south}{pl 1.south west};
\draw (algol 58) -| \findmid{0.2}{pl 1.south}{pl 1.south east};
\draw (cobol 60) |- (10.4, \y64+0.5)
( 9.6, \y64+0.5) -- ( 5.4, \y64+0.5)
( 4.6, \y64+0.5) -- ( 0.4, \y64+0.5)
(-0.4, \y64+0.5) -- (-4.6, \y64+0.5)
(-5.4, \y64+0.5) -- (pl 1.east);
% The obvious tree branches
\draw (speedcoding)
-- (fortran 1)
-| (fortran 2)
-- (fortran 4)
-- (fortran 77)
-- (fortran 90)
-- (fortran 95)
-- (fortran 03)
-- (fortran 08);
\draw (fortran 1)
-| (algol 58)
-- (algol 60)
-| (cpl)
-- (bcpl)
-- (c72)
-- (c89)
-- (c99)
-- (c11);
\draw (algol 60)
-| (simula 62)
-- (simula 67)
-- (cpp83)
-- (cpp98)
-- (cpp11);
\draw (fortran 2)
-| (basic)
-- (vba);
\draw (algol 60)
-| (pascal)
-| (modula 2)
-- (modula 3);
\draw (algol 60)
-| (algol 68)
-- (ada 83)
-- (ada 95);
\draw (flowmatic)
-- (cobol 60)
-- (cobol 85)
-- (cobol 02);
\draw (pascal) -- (delphi);
\draw (simula 67) -| (smalltalk);
% Random cross-connections.
\draw (c72) -| \findmid{0.5}{c72}{cpp83} |- (cpp83);
\draw (c89) -| \findmid{0.5}{c89}{cpp98} |- (cpp98);
\draw (c99) -| \findmid{0.5}{c99}{cpp11} |- (cpp11);
\draw (algol 68) -| \findmid{0.5}{algol 68}{c72} |- (c72);
\draw (cpp98) |- (cobol 02);
\draw (smalltalk) |- (cobol 02);
\end{tikzpicture}
\end{document}
Lisanslama
Ben, bu işin telif sahibi, burada işi aşağıdaki lisans altında yayımlıyorum:
Bu dosya, Creative Commons Atıf-Benzer Paylaşım 4.0 Uluslararası lisansı ile lisanslanmıştır.
- Şu seçeneklerde özgürsünüz:
- paylaşım – eser paylaşımı, dağıtımı ve iletimi
- içeriği değiştirip uyarlama – eser adaptasyonu
- Aşağıdaki koşullar geçerli olacaktır:
- atıf – Esere yazar veya lisans sahibi tarafından belirtilen (ancak sizi ya da eseri kullanımınızı desteklediklerini ileri sürmeyecek bir) şekilde atıfta bulunmalısınız.
- benzer paylaşım – Maddeyi yeniden karıştırır, dönüştürür veya inşa ederseniz, katkılarınızı orijinal olarak aynı veya uyumlu lisans altında dağıtmanız gerekir.
Bu dosyada gösterilen öğeler
betimlenen
6 Mart 2024
image/svg+xml
Dosya geçmişi
Dosyanın herhangi bir zamandaki hâli için ilgili tarih/saat kısmına tıklayın.
Tarih/Saat | Küçük resim | Boyutlar | Kullanıcı | Yorum | |
---|---|---|---|---|---|
güncel | 21.50, 6 Mart 2024 | 645 × 695 (80 KB) | Skippppp | Uploaded own work with UploadWizard |
Dosya kullanımı
Bu görüntü dosyasına bağlanan sayfa yok.
Küresel dosya kullanımı
Aşağıdaki diğer vikiler bu dosyayı kullanır:
- en.wikipedia.org üzerinde kullanımı
Meta veri
Bu dosyada, muhtemelen fotoğraf makinesi ya da tarayıcı tarafından eklenmiş ek bilgiler mevcuttur. Eğer dosyada sonradan değişiklik yapıldıysa, bazı bilgiler yeni değişikliğe göre eski kalmış olabilir.
Genişlik | 515.922pt |
---|---|
Yükseklik | 555.601pt |
"https://tr.wikipedia.org/wiki/Dosya:Algol%26Fortran_Family_By_Skippppp.svg" sayfasından alınmıştır