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

Druga rečenica u prethodni posttreći ¶ trebao bi reći "Uvjet unutar zagrada iskaza tada bi implementirao '*' kao bitwise I operator i '-' kao a bitwise isključivi OR u izrazu, a srednji broj naredbe od tri koja slijede iza zatvorene zagrade bio bi granan na ako izraz procijenjeno na FALSE." Stoga bi izvođenje naredbe IF (HANDLE * 777777 - 6HDAVIDH) 701,702,701 rezultiralo grananjem naredbe pod brojem 702 ako sadržaj od jednoslojni varijabla HANDLE bila je tekst "DAVIDH".

To je najbolje što mogu učiniti da se prisjetim jezika koji sam posljednji put koristio 1969. Bilo je to staro, čudno i gadno dok nisi naučio.

Još jedan čudan i neobičan jezik koji sam kodirao bio je program podatkovnog kanala koji je bio ugrađen u DOS program za sklapanje za IBM System/360 Model 30. Kada C-E-I-R Inc. kupio je Control Data Corp. 1969. godine zamijenio je svoja IBM 7094 mainframe računala s CDC 6600 superračunalima—tako da više nije mogao pokretati PERT/Time i PERT/Cost aplikacijske programe temeljene na AFSC 7094. Stoga sam pratio svoje klijente u ITT Data Services u Paramus NJ, koji je mogao pokrenuti 7094 aplikacijskih programa u emulaciji na IBM System/360 Model 65.

Moj novi šef, koji je bio zadužen za tehničku podršku, nepromišljeno je rekao Lakehurst Naval Air Stationu da će moći koristiti OS/360 Job Control Language za unos bez procjepa magnetske vrpce generirane pogonom trake spojenim na njihovo miniračunalo DEC na FORTRAN programe koji rade na modelu 65. Kad se pokazalo da JCL to ne može, dobio sam zadatak da napišem program za pretvorbu koji će raditi na ITT-ovom lokalnom modelu 30. Sjetio sam se da je C-E-I-R programer sa sjedištem u Arlingtonu VA napisao program za obradu EKG vrpci bez razmaka na 7094, pa sam potražio njezin članak Komunikacija ACM-a.

Razlog zašto je Lakehurst generirao vrpce bez razmaka bio je taj što njihov telemetrijski sustav nije imao dovoljno veliki međuspremnik za pohranu podataka, dok je miniračunalo DEC pisalo standardni razmak od 1/2" među blokovima. Njihov pogon trake imao je posebnu značajku koja je mogla čitati takve trake, ali ograničena glavna memorija miniračunala DEC isključila je sofisticiranu inženjersku analizu. Odgovor C-E-I-R programera bio je korištenje dva IBM-a programabilan podatkovni kanali za kopiranje vrpci bez razmaka na vrpce s razmakom; ovo je funkcioniralo ako je pogon trake koji čita traku bez razmaka radio znatno sporije od pogona trake koji je pisao traku s razmakom.

Pa sam napisao DOS/360 asemblerski program koji je započeo jednostavno program podatkovnog kanala koja se vrti između naredbe koja čita 10K bajtova u jedan memorijski međuspremnik i naredbe koja čita 10K bajtova u drugi memorijski međuspremnik, signalizirajući DOS programu kada svaka naredba završi izvršenje. Asemblerski program bi zatim zapisao sadržaj upravo popunjenog međuspremnika na pogon trake veće brzine prije nego što bi se kanalni program vratio u petlju kako bi ponovno napunio međuspremnik.

Lakehurst NAS generirao je testnu traku koju je moj program uspio uspješno pokrenuti. Međutim, otkrili su da pogon trake spojen na njihovo miniračunalo ima glavu za čitanje i pisanje nakošeno, a ITT bi morao nakriviti glavu na jednom od svojih 360/30 pogona trake da bi odgovarao. ITT nije bio voljan to učiniti, tako da moj program konverzije nikada nije pokrenut u produkciji.

Prolog i LISP kada sam imao iskustva samo s BASIC-om, Pascalom i asemblerom.

Evo poveznice na Wikipediju to je bolje objašnjenje mog programa podatkovnog kanala od veze u prvoj rečenici u pretposljednjoj ¶ od moj prethodni post. IIRC I koristio je ulančavanje naredbi—ne ulančavanje podataka—za selektorski kanal; stoga je moj program kanala mogao poslati signal programu S/360 Asembler da je međuspremnik ispunjen, tako da može započeti pisanje.

Bilo bi bolje da sam mogao urediti svoj prethodni post, ali to mi je zabranjeno nakon više od sat vremena.

P.S.: Evo članka Komunikacije ACM-a Spomenuo sam u zadnjoj rečenici drugog ¶ od moj prethodni post.

Mlađi ljudi će možda trebati dodatna objašnjenja ovaj prethodni post i ovaj prethodni post.

Bio je potreban razmak između blokova jer se brzi pogoni trake prije LTO-a nisu mogli "zaustaviti na novčiću" kako bi ih se moglo sektorski adresirati poput HDD-ova ili SSD-ova. Drugi ¶ u tom odjeljku članka Wikipedije kaže "Može se koristiti veliki međuspremnik memorije stavite podatke u red čekanja", ali telemetrijski mehanizam mornaričke zračne postaje Lakehurst—kao što je "EKG" (sada skraćeno kao "EKG" prema njemačkoj terminologiji) u članak o komunikacijama—nije imao veliki memorijski međuspremnik, tako da IBM-ov 7-tračni standardni 3/4" međublokovni razmak nije mogao biti umetnut za Čekanje u redu. LNAS je imao 12-bitnu riječ DEC/CDC mini-računalo, tako da je analiza bila ograničena—zbog čega su htjeli čitati svoje vrpce s podacima bez praznina koristeći FORTRAN na ITT-ovom S/360 Model 65.

Podatkovni kanal IBM 7090/94 ili System/360 bio je zaseban procesor koji je radio paralelno s CPU-om. Prema odjeljku "Povijest" tog članka, "Za niže modele System/360 50 i ispod..., kanali su implementirani u CPU-ove mikrokod, a sam CPU radio je u jednom od dva načina rada, ili "CPU Mode" ili "Channel Mode", s načinom kanala 'krađa' ciklusa iz CPU moda." IMHO programiranje kanala predstavljalo je jezik različit od S/360 Asembler.

Prepustit ću objašnjenje zakrivljenosti glave za čitanje i pisanje audio stručnjaku. Ali popravljanje na LNAS-u učinilo bi postojeće trake nečitljivima.

ZAUŠNJACI. To je apsolutno najopasnije smeće iz 1960-ih koje se još uvijek koristi, iako je sada "M" jer je to očito manje nekul.

Među njegovim brojnim prekrasnim svojstvima: globalno postojano stanje. Nema ključnih riječi (sve ovisi o kontekstu, pa bi "IF IF=PRINT PRINT 'HELLO'" mogla biti važeća izjava.
Također možete skratiti stvari sve dok su nedvosmislene, dakle

I I=P P 'HELLO' bi vrijedilo.

Neke izjave traju do kraja retka.

Pozadina vašeg sustava medicinske dokumentacije, a možda i vaše banke, piše u ovome.

Sada se prodaje kao baza podataka s tankim slojem SQL-a na vrhu i zove se Intersystems Cache. Bezbožno je skupo.

Što osvajam?

(Najlošiji, ne najstariji ili najčudniji)

Skriptni jezik za Spatial Analyzer. Ukratko, Spatial Analyzer je za geodete ono što je AutoCAD za tehničke ladice.

Njegov skriptni jezik ne koristi nizove znakova, već slijed blokova kojima rukujete u GUI-u koji izgleda kao Windows 95. Jedini oblik grananja koji poznaje su gotos, koristi pogreške u kodu umjesto iznimaka i sprema se kao maskirana binarna datoteka (koja nije kompilirani kod, već serijalizirani prikaz bloka slijed).

Imali smo projekt koji je uključivao ovu aplikaciju i isprva smo htjeli staviti maksimum poslovne logike u te skripte, ali napravili smo sigurnosnu kopiju kako bismo upotrijebili njen API za samo pozovite relevantne funkcije (hranjenje aplikacije podacima, proračuni, komunikacija s instrumentima) i koristite ifs, whiles i fors iz razumnijeg Jezik. API pozivi su i dalje bolni, poziv procedure s N argumenata i M rezultata zahtijeva N+M+X LoC-ova, gdje je X u [1..10[.

Usput, čudno je kako u takvim poslovnim nišama licencni softver od 6000 € može izgledati tako amaterski/zaglavljen u 2004. godini.

Pohađao sam sat PLC programiranja gdje smo koristili logiku vizualnih ljestvica, ali nisam siguran čiju implementaciju. To je sranje. Imao sam i projekt u LabViewu, za koji sam čuo da je postao bolji, ali je u to vrijeme bilo stvarno loše raditi s njim.

Zajedničko im je vizualno sučelje, pa mislim da mi je tipkanje za kodiranje izražajnije.

Ajar je rekao:
Pohađao sam sat PLC programiranja gdje smo koristili logiku vizualnih ljestvica, ali nisam siguran čiju implementaciju. To je sranje. Imao sam i projekt u LabViewu, za koji sam čuo da je postao bolji, ali je u to vrijeme bilo stvarno loše raditi s njim.

Zajedničko im je vizualno sučelje, pa mislim da mi je tipkanje za kodiranje izražajnije.

Kliknite za proširenje...
To bi bilo prije 25+ godina, ali sjećam se da je moj menadžer u to vrijeme bio uzbuđen zbog alata za programiranje koji je prikazivao dijagram toka kod, iako je svaka čast bio sofisticiraniji od toga, jer je mogao grupirati izjave unutar petlje ili zajedno na način da vizualno ima smisla, dobro izgleda kodiranje boja za vrstu izjava, dobra ravnoteža koje su stavke predstavljene okomito naspram vodoravne, ne loše. Zvučalo je obećavajuće.

Pa je dao cijelom timu da ga instalira i kad sam pogledao prvi primjer koji je bio složeniji od hello worlde, mozak mi se zaključao.

Svaka izjava je imala svoj mali oblačić ili što već, ali u glavnom prikazu niste mogli vidjeti varijable ili parametre ili bilo što imenovano unutar izjave. Morali ste kliknuti na oblačić da biste vidjeli detalje. Mogli ste imati otvoren samo jedan mjehurić u isto vrijeme, pa je bilo gotovo nemoguće pratiti na koje varijable je koja izjava utjecala. Htjeli ste vidjeti što se događa s varijablom zvanom temp? Morali ste kliknuti na svaki oblačić, pogledati ga, zapisati ili napraviti mentalnu bilješku, zatim pojedinačno provjeriti svaki drugi oblačić jer niste mogli vidjeti koje izjave koriste koje varijable. Kako je temperatura postavljena na 42? Morate kliknuti svaki oblačić izjave jedan po jedan da biste saznali!

Jednostavno nisam mogao zamisliti koliko bi ovo bilo beskorisno za programiranje bilo kojeg koda koji, znate, koristi varijable.

Nije programski jezik već jezik za označavanje. Dakle, David W Packard (sin onog Davida Packarda) razvio je označni jezik nazvan 'beta kod' u 70-ima koji je korišten za kodiranje grčkih papirusa i drugih tekstova. Dugo je prethodio konceptima kao što su unicode, pa čak i SGML/XML/HTML. Kodirao je i glifove znakova kao i neke aspekte rasporeda ako je raspored bio relevantan. Radio sam s beta kodom u prijelaznom razdoblju na označavanje izvedeno iz SGML-a (HTML je upravo stigao na scena) i rani dani unicodea gdje se uključivanje povijesnih tekstova još uvijek ocjenjivalo. Beta kod nije bio strašan, ali je očito bio zastario. Hdužan, također sam radio s nekim ostacima njegovog prethodnika Alpha koda koji je bio apsolutna monstruoznost loše promišljenih izbora, jer smo imali neka kodiranja koja su nije dobro prevedeno u beta kod, a oni su zveckali cijelo desetljeće i mijenjali se i u nekom trenutku samo trebaš strgnuti taj flaster i srediti riješenje. Bilo je možda desetak ljudi koji su imali iskustva s tim, a većina ih je to znanje pokušala ostaviti iza sebe. Srećom, imao sam nekoliko njih na raspolaganju, uključujući i nekoliko pitanja upućenih Davidu Packardu i Pridružio sam se tom vrlo kratkom popisu ljudi koji su imali nešto o tome - i bio sam daleko najmlađi, dakle Vjerojatno ću u jednom trenutku biti posljednja preživjela osoba koja će imati to znanje.

To je također bilo moje jedino iskustvo u radu s odgovarajućim sustavom namotavanja trake iz ere 70-ih jer je jedan od pohranjenih prijenosnih tvrdih diskova bio nečitljiv i morali smo loviti traku i ponovno je prenijeti. Možda je u ovom trenutku bilo brže ponovno nabaviti original iz bilo kojeg muzeja u kojem se nalazio i dati ga ponovno kodirati, ali ovaj je proces za nas bio pomalo zabavan.

Najstariji jezik bio je Fortran IV. Jedini put sam koristio i bušene kartice. Dovoljno sam star da sam se ušuljao u neke od ovih starih tehnologija koje su već očito bile zastarjele, ali su se još uvijek koristile na nekoliko mjesta. Prema modernim standardima Fortran IV bio je prilično gadan, ali u to je vrijeme bio samo dosadan.

Uredi: nisam siguran koliko je ljudi oko tog naučenog logotipa. I naučio sam asemblerski jezik TI TMS9900, još jednu stvar s kojom bih mogao završiti kao posljednja preživjela osoba znanje, jer sam to naučio u srednjoj školi i ne znam da je TI isporučio toliko njih za početak s.

O da, moja je mama radila za Wang 70-ih i naučio sam nešto COBOL-a na jednom od njihovih miniračunala kad sam povremeno bio zaglavljen u njezinom uredu. Sam Bog zna koji je to model računala bio ili koliko sam toga zapravo naučio.

Moj prvi posao bio je podrška i razvoj aplikacije koristeći VAX Basic i sql pozive Oracle bazi podataka. Obrambeni izvođač za mornaricu u New Orleansu 90-ih.

Jesu li upućeni SQL pozivi od VAX BASIC-a? Ako je tako, opa.

Još uvijek kodiram u njemu.

LINC, sretno u pronalaženju prave pomoći s tim. Ako želite to potražiti, svakako uključite riječ UNISYS u traku za pretraživanje.

Također se prepisuje neki COBOL kod i XGEN kod.

Evo primjera dijela LINC koda.

SD; INV-TOTAL LE; 10 ED; + DE; 2. DETERMINE; EVERY INVOICE (CUSTOMER INVOICE-NO) ADD; EVENT.AMOUNT INV-TOTAL. END; DW; GLB.STATUS = (*****) MESSAGE; ERROR (This Customer has not used this Invoice Number) END.EXIT;

Evo relevantnih odjeljaka članka Wikipedije o LINC-u. Pododjeljak "Povijest" kaže da je izvorno razvijen za Burroughs računala, ali znam da se Burroughs kasnije spojio s Unisysom.

Taj odjeljak kaže da je LINC razvijen oko 8 godina nakon mog dvogodišnjeg programiranja Burroughsovih računala u Ebasco Services. Koristio sam isključivo Burroughsove verzije COBOL-a, a moja prilagođena aplikacija od 5 programa bila je dizajnirana oko hijerarhijske implementacije—upotrebom "ažuriranje s tri trake"— od čega bi kasnije nazvati proračunskom tablicom. Moj prvi skup podataka 1970. bio je raspored crtanja inženjerske integracije za Fukushima I—i kasnije II—elektrana. (WP savjeti Ebasco inženjeri su nadjačali položaj WRT komponenti za ta postrojenja; koji je diktirao Tokyo Electric Power Co..)

Srednja škola: FORTRAN IV radi na OS/360 MFT na 360/44. Čudno kako se neki detalji drže jednog.
Koledž: IBM 360 Asembler i APL na 360-50; RPG II na System/3; IBM 029 bušilica za kartice; PL/I i JCL na 360-44; APL na DOS/360 (360-40). 360/44 je imao dvije memorijske particije od 128K. Većina programerskih projekata radila je u bilo kojem od njih. Mrzili smo kad su klase Statistike pokretale SPSS poslove jer im je bilo potrebno 256K da bi se pokrenuli, blokirajući sve ostale.
Raditi, prilično redom: FORTRAN, PDP-8 Assembler (u daljnjem tekstu Asm), DIBOL-8, PDP-11 Asm, DIBOL-11, TECO (ako DEC, onda TECO), 6800 Asm, 6502 Asm, Z-80 Asm, BASIC na 6800 s Asm sučeljem za laboratorijsku opremu, BASIC na raznim drugim mikroima, Revelation baza podataka (Pick OS clone), C, dBase II. Nisam siguran trebam li računati vatrozid ili Windows Server AD konfiguraciju, oboje bih usporedio s RPG-om.
Negdje usput se igrao sa SNOBOL-om, malo LISP-a, Pascala, LOGO-a, HTML-a, Asm-a za mikrokontrolere (naravno) i vjerojatno još ponešto koje sam uspio zaboraviti.

Najčudniji mora biti APL. Upravo smo malo radili u jednom razredu na faksu, ali jebeš tu buku. Morali smo sve to napraviti na papiru jer nijedan od naših strojeva nije imao postavljen font ili kompajler.

Moram izbaciti i Haskella. Naviknuo sam se na to u kratkom vremenu koliko sam s njim radio.

Većinu sam na Rustu, ali posuđujem, boksam itd. još uvijek mi je prilično stran, iako sam našao objašnjenje takvih stvari za ljude koji dolaze iz C/C++ pozadine što je puno pomoglo.

Dakle, najstariji bi vjerojatno bio Lisp (iako sam, iskreno, uglavnom radio na novijim dijalektima koji nisu da star). Najčudniji je definitivno Prolog, gdje, umjesto da pokušavate reći računalu što da radi, vi mu kažete što da učini istinitim, a ono shvaća kako. A najprokletiji je vjerojatno Perl/Mason.

LabView je jezik koji sam koristio i koji mi se najmanje svidio. Djelomično zato što je baza koda s kojom sam se pomešao uključivala "virtualne instrumente" (labview za "modul") koji zahtijevaju tri monitora da u potpunosti stanu na zaslon odjednom, i bi li IT ili moj PI platili toliko zaslona za skroman doktorat student?

Nakratko sam nestao u Perl zečjoj rupi oko 2002. Napisao je veliki užasan program za izdvajanje podataka iz Backup Execovih log datoteka (zbog potpunog nedostatka izvješća, barem u verziji koju smo kupili - nema sumnje da je postojalo superpoduzeće elitno izdanje koje vam je dalo nešto grozno poput Crystal Reports) i imali ste razloga vratiti mu se godinu dana kasnije. Nije jebeni scooby doo. Mogao sam isto tako otvoriti zip datoteku u Notepadu.

ZapovjednikJameson je rekao:

Nakratko sam nestao u Perl zečjoj rupi oko 2002. Napisao je veliki užasan program za izdvajanje podataka iz Backup Execovih log datoteka (zbog potpunog nedostatka izvješća, barem u verziji koju smo kupili - nema sumnje da je postojalo superpoduzeće elitno izdanje koje vam je dalo nešto grozno poput Crystal Reports) i imali ste razloga vratiti mu se godinu dana kasnije. Nije jebeni scooby doo. Mogao sam isto tako otvoriti zip datoteku u Notepadu.

Kliknite za proširenje...
Nakratko sam radio u startupu (da, originalni Dotcomov procvat i kasniji pad) i naš je proizvod uključivao klijenta e-pošte usmjerenog prema korisniku. Kupili smo prilagodljivi gotovi sustav za implementaciju te značajke.

Napisano je u Perlu.

Reći ću ovo: Bio je to najčitljiviji Perl koji se mogao održavati i koji sam ikada vidio. Iako je ovo kao da tvrdite da je bio 'najviši mrav', bio je dovoljno čitljiv da smo ga mogli modificirati kako bi odgovarao našim potrebama.

Iskustvo mi je doživotno ostavilo odbojnost prema jeziku. Nikad više.

Najstariji i najčudniji u kojem sam kodirao bio je polusastavni jezik koji se koristi u Appleu [ i Commodoreu VIC-20. Uključivalo je obilato korištenje PEEK i POKE naredbi unutar BASIC-a za čitanje i pisanje neobrađenih podataka iz/u memoriju. Prilično sam siguran da je postojala treća naredba za koju se ne mogu sjetiti da se koristila za izvršavanje asemblerskog jezika program koji sam zapisao u memoriju s POKE izjavama, ali ne mogu se sjetiti što je bilo na Jabuka ][.

Najnoviji post na blogu

Microsoft skenira unutrašnjost zip datoteka zaštićenih lozinkom u potrazi za zlonamjernim softverom
September 26, 2023

Također, dopuštaju pop protokol i možete koristiti svoj Yahoo poštanski sandučić za provjeru događaja. Na primjer, možete organizirati provjere is...

Microsoft skenira unutrašnjost zip datoteka zaštićenih lozinkom u potrazi za zlonamjernim softverom
September 25, 2023

Computantis je rekao: Kao i sa svim Alatima i Oružjima, nakon što Microsoft dobije ovu mogućnost, može je koristiti i za:Materijal zaštićen autorsk...

Microsoft skenira unutrašnjost zip datoteka zaštićenih lozinkom u potrazi za zlonamjernim softverom
September 25, 2023

Computantis je rekao: Kao i sa svim Alatima i Oružjima, nakon što Microsoft dobije ovu mogućnost, može je koristiti i za:Materijal zaštićen autorsk...