Koji je najstariji, najčudniji, najopasniji ili najneobičniji jezik na kojem ste ikada kodirali?

Ne uključujući ezoterične jezike kao što je brainfuck itd.

Počet ću s RTL/2, jezikom u stvarnom vremenu s naglaskom na (a) ponovnom ulasku i (b) ružnoći. Jedini primjer koda koji mogu pronaći je ovaj, sa stranice Wikipedije. Ipak, bilo je dovoljno da se vrate traumatična sjećanja.

Kodirati:

TITLE Hello World; LET NL=10; EXT PROC(REF ARRAY BYTE) TWRT; ENT PROC RRJOB() INT; TWRT("Hello World#NL#"); RETURN(1); ENDPROC;

The EXT PROC deklaracija je uvući TWRT funkciju iz standardne biblioteke kako bismo mogli ispisati nešto. RRJOB() je ekvivalent za main().

RTL/2 (ili, barem verzija koja je meni bila nametnuta) došao je s neugodnim okruženjem za izvođenje koje se izvodilo na DOS računalu, a morali ste koristiti zastrašujuće neprijateljski uređivač da biste ga napisali. Nepotrebno je reći da je dobio malo popularnosti izvan britanske kemijske industrije i sada je potpuno mrtav. Učili su me to kao dio modula u stvarnom vremenu na sveučilištu, prije nekih 30-ak godina.

Davno su me zanimali računalni jezici pa bih ih preuzeo i igrao se neko vrijeme, a oni bi krenuli dalje. Napisao sam neke stvari u ABC-u (prethodniku Pythona) na svom Atari ST-u radi zabave. Neki asemblerski jezici mogu biti grubi. Napisao sam neki SHARC sklop. Osim toga, ne bih rekao da sam napisao dovoljno na hrpi drugih jezika da bih mogao računati (sve stvari poput on-off). Imali smo dva profesora na koledžu koji su bili veliki obožavatelji ADA pa smo to morali koristiti za nekoliko predavanja. Napisao nešto Lispa i Prologa. Vidio sam malo Cobola, ali ga zapravo nisam morao napisati. Ipak, morao sam napisati biblioteku koja uvozi podatke Cobol ravne datoteke.

Nisam siguran da li se oba kvalificiraju, ali moj prvi jezik je bio BASIC, a najteži je bio x86 ASM.

Međutim, najgori jezik bio je vlasnički jezik jedne medijske tvrtke. MTL: Morris Templateing Language. Doslovno nije postojao izvan stranica Morrisovih novina. Pokušao je pojednostaviti uobičajene stvari kako bi omogućio brži razvoj stvari kao što su kalendari, popisi, grafikoni itd., ali u stvarnosti se gotovo nikada nije koristio od strane većine objekata jer je rijetkih trenutaka bilo potrebno nešto izvan radnog vremena ljudi poput mene pa su rekli jebi ga i napravili grafiku :p

Ah... Zaboravio sam jednu... na mjestu gdje sam radio, stvorili smo neku vrstu 'jezika' koristeći XML. Prilično je teško objasniti kako je to funkcioniralo, ali zapravo je bilo prilično cool. Bio je za stream obradu velikih XML datoteka... ali nije kao XSLT... poput integracije s bazom podataka i hrpa drugih stvari.

Najstariji su Fortran i COBOL. Najneobičniji je bio IBM JCL. Ali i COBOL i JCL trajali su vrlo kratko. Fortran za vrijeme trajanja moje diplome.

Htio sam reći JCL zajedno s REXX i EXEC2.

Ono što je bilo prilično ljutito je to što sam bio tip za UNIX & C do kraja, ali sam morao surađivati ​​s bazom podataka na IBM-ovom glavnom računalu putem poslova izvlačenja podataka opisanih gore. Mrzio sam to!

najstariji? = OSNOVNI
Najčudniji? = LISP, MIPS i TCL/Tk, ali oni su korišteni u mom dodiplomskom programu kao nastavni jezici.
Najčudnije je što sam zapravo koristio IRL? = ColdFusion oko vremenskog okvira Macromedia.

C.

Također sam napravio nešto x86 sklapanje. Imam i brata matematičara, pa sam mu pomogao napraviti Fortran.

(Nijedan od ta tri ne bih ponovno dotaknuo da mogu. Uvijek kažem da mnogi studenti CS-a kažu da vole C dok uče. I to im je u lijepom sjećanju... dok ne moraju pisati C za novac.)

To bi bili najstariji/najopasniji, mislim. (Pa, najopasnije može uključivati ​​i .bat datoteke.)

Radio sam i neke 6502 montaže, 68k montaže, C64 Basic i Blitz Basic (taj mi se svidio, smatram da me to pretvorilo u programera).

Što se neobičnog tiče, pomogao sam poznaniku da napiše "C+-", bizarnu prilagođenu C/C++ kombinaciju njihovog sveučilišta. Zašto? ZAŠTO? Bili su to za neke užasne tečajeve algoritama. Zašto bi trošili vrijeme na pisanje bizarnog opskurnog jezika kada im je nastavni plan i program TAKO JAKI? Kakva šteta.

Kad sam se prvi put igrao s bilo kojim stvarnim računalom (ne računajući Atari 2600 ili Intellivision), igrali smo se s Logoom.

OH... skroz zaboravio spomenuti OOF... Objektno orijentirani Fortran. U njemu smo radili zadatak za paralelno programiranje ~1991.

SQL je prilično čudan. Volim koristiti nazive stupaca kao što su "FROM", "WHERE" i "DISTINCT" kako bih ga poboljšao.

najstariji? Fortran 77, vjerojatno na kodu koji je još u upotrebi. Mnoštvo vremenske/atmosferske prognoze i istraživanja, aerodinamika ga još uvijek koristi.
Najčudniji? Prolog, puno zabave
Najneobičnije? OS port u sklopu za ARC 'rekonfigurabilnu' arhitekturu. To je/bila je ISA specifikacija i implementacija referentne mikroarhitekture koja izričito ostavlja prostor za instrukcije proširenja specifične za čip, registre, arhitektonsko stanje i tako dalje. U osnovi, optimiziran za dizajniranje ASIC funkcionalnosti koja je usko integrirana na razini cjevovoda instrukcija s prilično generičkom CPU jezgrom.

Oh, također sam eksplicitno napisao neki PostScript za svoj preddiplomski tečaj teorije/dizajna/principa programskog jezika.

RPG 2.

Sad ću se odšuljati.
Također, COBOL i IBM JCL.

Sysadmin, ali radio sam malo COBOL-a i NATURAL-a na starom poslu.

najstariji? Z80 Montaža pod CP/M na starim Addressograph/Multigraph / Varityper računalnim slovoslagačima.

Najčudniji? Magna8 pod GCOS8. Jezik za "brzi razvoj" koji stvara COBOL na starom glavnom računalu Bull kojega je imao moj poslodavac. Magna8 je bila "funkcionalno programiranje" prije nego što je to postalo stvar. Trebali ste (u osnovi) unijeti naredbe bilo kojim starim redoslijedom i to bi imalo smisla za cijelu stvar i generiralo bi COBOL program da to učini. U stvarnosti su autori jezika znali da ne može učiniti puno bez pomoći, pa ste također upisali brojeve redaka u određenim rasponima (rasponi za svaki "modul", IIRC) i onda je morao uzeti COBOL izlaz, shvatiti što nije u redu, a zatim napisati još retka brojevima. bleh.

Najgadniji? 80286 Montaža. dvostruko bleh.

Najneobičnije? Dalje. Deep Blue C bio je drugoplasirani, ali Forth pobjeđuje.

Nikada nisam radio s nečim iznimno starim, čudnim, gadnim ili neobičnim, ali broj nezgrapnih, frustrirajući, loše dokumentirani, nepotpuni skriptni jezici u vlasništvu dobavljača s kojima sam se morao boriti bio je iznenađenje.

Nikada nisam koristio nešto posebno čudno, ali sam lutao kroz neke užasno vlasničke jezike u svoje vrijeme. Apogee je bio jedan od njih -- bio je poput dBase-a, samo drugačiji. Čini mi se da se sjećam da je bilo potrebno malo muke da ih natjeramo da nam daju Windows DLL-ove za pristup našim podacima.

Posljednji poslodavac imao je više interno razvijenih konfiguracijskih DSL-ova za svoj vodeći proizvod.

najstariji? Vjerojatno neki FORTRAN IV koji sam morao modificirati za svoj prvi ljetni posao tijekom fakulteta. Dolazeći iz svijeta pisanja malih, čistih programa u Schemeu i C++, bio je to brutalan uvod u stvarnost.

Čudno i/ili gadno? Sendmail.cf i sendmail.mc, njegovo kopile s M4 makro procesorom.

RPG (RPG3) i IBM CL bi mi bili najneobičniji.

FOCUS i JCL za dobivanje podataka s IBM glavnog računala dok sam radio u osiguravajućem društvu

Također sam napisao neke VBA makronaredbe u Excelu za unos podataka u IBM PCOMM koristeći mrežu piksela i korištenje sendkeysa za automatiziranje zadataka poput kretanja kroz izbornike i ažuriranja datoteka s ocjenama. Uštedio sam doslovce tisuće radnih sati ručnog unosa podataka, ali bio sam užasnut da nešto ne krene po zlu budući da je to bio motor za cijeli sustav određivanja cijena, i bio je doslovno koristeći Excel za obavljanje stvari "stavite Y u 24. redak i 36. stupac na zaslonu, pošaljite tipku tipku Enter" i radite cijeli dan samo kružeći kroz tisuće ekrani

Oh, zaboravio sam FOKUS. Bio sam Oracle konzultant (da, znam) primljen na jednom mjestu i završio sam radeći FOCUS. Osjećao sam se vrlo čudno.

Također, izvorni C++, prije nego što je postojao kompajler, kada je pretvoren u srednji C. Što je, naravno, značilo da je otklanjanje pogrešaka bilo zabavno (ali barem nije izbacivalo stranice grešaka predložaka).

Što me također navodi na razmišljanje o C++-ovom predlošku meta-programiranja 😱 - i to ne na dobar način!

Petljao se s brojnim jezicima tijekom godina, ali nikad nije rezultiralo ničim korisnim
  • Osnovno na TRS-80 (ranih 1980-ih u srednjoj školi)
  • Basic, Forth, neka verzija C-a, sve na 8-bitnom Atariju
  • Pascal, C, Modula-2 na Atari ST
  • HyperTalk
  • VAX Pascal i Turbo Pascal

Mnogo knjiga o raznim jezicima poput Prologa (volim čitati knjige o različitim jezicima, čak i ako ih nikad neću koristiti)

Java (u to vrijeme bila je nejasna, meni u svakom slučaju - imao sam radni projekt da uzmem Mac +zaslon osjetljiv na dodir+Javu i učinim nešto s njom. Srećom, otkazan je prije nego što je napisan i jedan red koda.)
VAX Basic - prvi pravi posao koji sam imao kao programer uključivao je ovo.

Aktivnosti kodiranja temeljene na C# i .NET-u sada zauzimaju moj radni vijek, ali one nisu nejasne.

Postojao je i domaći funkcionalni jezik koji je moj student koristio za tečajeve CS II. Njegova sintaksa donekle je modelirana na Prologu, budući da su korišteni uzastopno u tečaju. Njegova najizrazitija značajka bila je vrlo jednostavna sintaksa za lijeno vrednovanje specifičnih izraza. Mislim da se samo zalijepilo $ ispred njih za označavanje thunk. To je učinilo vrlo lakim podučavanje koncepata kao što su generatori koji proizvode beskonačne popise, ali samo dok se troše.

Redoslijedom kojim sam ih naučio:
Izviđači PL/1
Home BASiC
Fakultet ForTran
Pascal
Modula-2
Smalltalk 85
PDP 8 ASM
Rad RPGII
COBOL
PL/SQL
C
Poslovni objekti

Smalltalk je bio najčudniji, RPGII je bio kod samo za pisanje. Dobro sam zarađivao jer sam mogao modificirati RPG od 1983. do 1998. Uživao sam u tome da PL/SQL bude brži

U RPG-u, numeričke varijable imaju 2 slova, Booleovi su 2-znamenkasti brojevi, veći od, manji od i jednaki pozicijama na kartici od 80 stupaca. Komentari idu od stupca 81 do 96.

Sendmailova konfiguracijska datoteka je jednostavno zla.

Morao sam učiti Prolog na sveučilištu, kakav je to čudan, ali cool jezik. Da sam bio stariji i da sam imao više iskustva s deklarativnijim jezicima, vjerojatno bih se snašao s tim, ali u to vrijeme mi se uopće nije dopao. Uglavnom sam obavio svoje zadatke, ali nikad mi nije bilo intuitivno.

Gledajući unatrag, izvorni AMOS Basic bio je prilično čudan i gadan jezik. Sintaksa je bila posvuda, neki su dijelovi nalik prirodnom jeziku, neki su više nalik c-u, sve se radi putem ključnih riječi umjesto API-ja, tako da ih ima doslovce na stotine, bez ikakve dosljednosti oko ičega, a mnogi od njih su stvarno WTF materijal. A tu je i ugrađeni jezik animacije, AMAL :eek:

Ne na stvarnom hardveru, imali smo softverski emulator koji je radio na računalima temeljenim na 8088 (čak i tada). Imali smo nastavu koja je bila "Into to..." nešto, ne mogu se sada sjetiti što, gdje smo morali programirati u sklopu PDP-11 cijeli semestar.

Također je malo radio na glavnom računalu serije Univac 1100 (to je bio glavni stroj sveučilišta u to vrijeme). 36-bitna riječ i radila je pomoću komplementa jedinica tako da je imala pozitivnu i negativnu nulu ;)

Imali smo tečaj programskih jezika koji smo imali otprilike 8 zadataka i svaki je zadatak morao biti napisan na drugom jeziku... pa Smalltalk, Prolog, Lisp, C, ADA, OOPascal (Borland) i neki drugi.

Imam veliku želju pisati programe u Algolu.

To je bilo super. Znam da postoje oznake spojlera koje bih mogao upotrijebiti, ali ne želim komentirati i kvariti članak drugima. Ipak, malo predugo, moram priznati da sam preletio...

Zanimljiva tema...

Akademska uporaba - x86 asembler ili Ada. Nisam siguran zašto, ali volio sam raditi na montaži, iako nikad nisam morao raditi ništa kompliciranije od nekoliko preddiplomskih zadataka. Adu su podučavali na mom sveučilištu jer smo imali neke obrambene tvrtke koje su uvelike zapošljavale iz naše škole i posebno tražile ovu vještinu. Nikada nisam razmišljao o tome.

Profesionalna upotreba - star C++. Radio sam oko 95% Java razvoja već 20 godina, ali trenutno nadgledam veliku C++ bazu kodova iz 90-ih. Postoji ogromna količina složenosti koja proizlazi iz 1) izvlačenja prihvatljive izvedbe iz hardvera iz ere 90-ih i 2) implementacije funkcionalnosti od nule koja je sada standardna u većini jezika.

Najstariji, najčudniji i najopasniji jezik na kojem sam ikada kodirao bio je onaj na kojem sam napisao svoj prvi plaćeni program—FORTRAN II II kao prošireno (od IBM-ove open-source-for-customers implementacije) za IBM 7090 od strane C-E-I-R Inc. uz pomoć Smithsonian Astrophysical Observatorija. Moje najveće postignuće na tom jeziku bio je program faze 3 opisan u ovaj post. Moja implementacija dubinske pretrage (više-manje neovisno ponovno izmišljene) bila je uvelike komplicirana jer FORTRAN II nije imao rekurzivne pozive potprograma, pa sam morao ispočetka implementirati hrpu pretraživanja koristeći niz.

Pogreška kodiranja koju sam spomenuo u prošlom pre-P.S. paragraf tog posta bio je rezultat užasnog ograničenja kontrolne strukture prikazanog u "Jednostavan program FORTRAN II" u članku na Wikipediji. IIRC I imao je trosmjernu granu koja je pod određenim okolnostima išla na pogrešan broj izvoda. Trebalo mi je 14 sati dana od utorka do nedjeljnog ranog jutarnjeg pljuska da prepoznam tu pogrešku, nakon što sam isključio pogrešku prevoditelja (prije sam pronašao jednu uvedenu C-E-I-R proširenjem).

Glavno proširenje C-E-I-R-a na FORTRAN II bila je implementacija logično trosmjerno grananje ako je izjava o grananju imala 'B' (za Booleov) u prvom stupcu izvorne kartice. Uvjet unutar zagrada izjave tada bi implementirao '*' kao AND operator i '-' kao isključivi ILI operator u izraz, a srednji broj naredbe od tri iza zatvorene zagrade bio bi granan na ako bi se izraz procijenio na FALSE (mislim). Ovo proširenje je omogućilo pisanje programa koji uspoređuju tekstualne nizove od 6 znakova (duljina 7090 riječi), što ga čini moguće napisati programe koje je COBOL-61 učinio potpuno jednostavnima. Unatoč tome, moj je šef trebao napustiti program prve faze opisan u istom zadnjem odlomku u COBOL-61, tako da se mogao proširiti kako bi se ispravile pogreške tipkanja u pogrešnom stupcu u RCA-PERT-formatu ulazni. Nije; morao sam ručno popraviti takve pogreške koje je otkrila faza 1.

Najnoviji post na blogu

Borbe Osnovno i srednje obrazovanje u SAD-u
November 07, 2023

Predlažem da čarter škole budu bolje jer roditelji više ulažu u školu i svoju djecu i to pruža dodatnu motivaciju i poduku izvan učionice koja se ...

Sadržaj generiran umjetnom inteligencijom i kutija za sapun
November 07, 2023

Da, uhvatili su me, potrebno mi je više truda nego što mogu uložiti da se prilagodim činjenici da kao što kažeš; ovih dana jednostavno ne možete p...

Sadržaj generiran umjetnom inteligencijom i kutija za sapun
November 07, 2023

Da, uhvatili su me, potrebno mi je više truda nego što mogu uložiti da se prilagodim činjenici da kao što kažeš; ovih dana jednostavno ne možete p...