Når det er sakt, er det et ikke up-to-date norsk programmeringsspråk
som heter simula som jeg vil påstå er like bra, kanskje vel så bra å
starte med som java. Bare det at ingen bruker det, det ligner litt på
turbo pascal
--Øistein
Erik Naggum <er...@naggum.no> writes:
> * Øystein Haare <oyh...@online.no>
> | Jeg har tenkt til å prøve å lære meg litt programmering.... Det jeg
> | lurer på er om jeg bør lære meg C eller C++ Eventuelt kan det kanskje
> | være smart å lære seg C først og så gå på C++ etterhvert...
>
> neppe noen kjempeidé å starte med noen av disse. jeg ville heller
> foreslå at du begynte med et rimelig ålreit _programmeringssprog_ og
> lærte deg C når du faktisk får behov for det. (C++ bør du håpe at du
> aldri får reelt behov for å _kunne_.)
>
> jeg synes folk bør bruke Common Lisp, siden det gjør programmering til en
> behagelig og krevende oppgave, ikke en slitsom og frustrerende som C
> gjør. du vil bli istand til å gjøre fornuftige ting i Common Lisp på
> noen få dager. i C tar det flere uker, og hver vanskelige ting du tar i
> øker hele sprogets kompleksitet for deg. Common Lisp er et digert sprog,
> men du kan lære hver ny ting for seg etter å ha fått med deg prinsippene.
>
> Franz Inc har for download på www.franz.com en fullt funksjonell versjon
> av Allegro CL 5.0.1 for Linux for Intel og PPC, men dog uten mulighet til
> å kjøre store programmer eller produsere images som man kan gi til andre.
> enkelte vil reagere voldsomt på at det ikke er gratis og fritt i alle
> himmelretninger, mens andre vil synes det er veldig OK av det største og
> mest seriøse firmaet i Common Lisp-verdenen å ha gi bort software til
> Linux-verdenen; normalt henvender de seg til profesjonelle programmerere
> som forstår verdien av høykvalitetsverktøy, men det er nok av folk som
> viser godt potensiale i Linux-verdenen, så de valgte en redningsaksjon
> for å få folk bort fra den katastrofen det er å tro at C/Perl/C++ er alt
> en god programmerer bør velge blant. hvis du heller vil ha en CD-ROM,
> send meg en mail med bakke-til-bakke adresse og den går ut med første
> postgang.
>
> | Noen som har no linker til programmering i linux... tips om gode bøker
> | for nybegynner osv???
>
> ikke tenk så altfor mye på at du lever under Linux i første omgang. skal
> du gjøre noe fornuftig som programmerer, er ikke OS'et ditt det du bør
> være mest opptatt av, men det er alltid bra at det ikke er Windows, for
> da må du _virkelig_ være mest opptatt av OS'et ditt. (Franz Inc har ikke
> fått portet IDE'en sin til Linux ennå, fordi å skrive ting som virker
> godt under Windows er slitsomt, men download og CD-ROM for Windows er
> like tilgjengelig som for Linux -- spør om du vil se den, også.)
>
> jeg vil anbefale ANSI Common Lisp av Paul Graham. ISBN 0-13-370875-6.
> Amazon har den, men mas på bokhandelen din, likevel.
>
> hvis du er veldig opptatt av maskin- eller OS-nære ting, kan du kanskje
> være interessert i mitt pågående prosjekt CLUNIX (står for Common Lisp
> Unix, men uttales akkurat som "clue? nix!" i ren frustrasjon) med det
> formål å gjøre alt det rare og tungvindte som Unix og Linux gjør litt
> enklere å forholde seg til fra Common Lisp. mail er fremdeles tingen.
>
> Common Lisp-programmering-followup til no.it.programmering.lisp [default].
> Linux-programmering-followup til no.it.os.unix.linux.diverse.
> flames for at Franz Inc ikke gir bort Allegro CL med GPL til /dev/null.
>
> for ordens skyld: jeg er dealer for Franz Inc, som dekker mine utgifter
> med å sende ut CD'er til folk, men ingen blir kontaktet som følge av å ha
> bedt om CD-ROM -- vi stoler på at de som liker det de ser følger opp med
> å ta kontakt på egenhånd. og til slutt -- dette ække reklame, men navna
> må jeg jo ha med (for de som er gamle nok til å huske den låten ;).
>
> #:Erik
> --
> save the children: just say NO to sex with pro-lifers
hvor langt har du kommet med det prosjektet? har du noen eksempler på
hvor CLUNIX gjør smarte ting?
-Bjørn
--
Bjørn Borud <bo...@fast.no>, <URL:http://borud.priv.no/>
Og CL er ikke objektorientert? :)
> med en syntax lik c++, men man slipper de evindelige pekerne.
Det første punktet er et mareritt, og det andre er vel feil i Java sitt
tilfelle, det er vel nettopp pekere en har..
> Java er faltisk
>lett å lære, det er up to date, og man blir en flink programerer.
"up to date" dvs, sånn en gang på 70-tallet?
CL er ihvertfall stort sett et barn av 80-tallet ;)
> Det at syntaxen ligner på c/c++ er fordel (se bare hvor stor andel av
>programmene til linux som vi har fri kildekode som er programmert i
>c/c++, vil en vidreføre forandre dette er det greit å kunne språket).
Tull og tøys. Jeg holder på med å lage en base for software development
på Unix-bokser som skal integreres i Emacs og etterhvert vil gi en
tilgang på mye mer av den informasjonen som kompilatorer sløser bort.
Dette er noenlunde språkuavhengig.. men tro meg, den største hodepinen
er faktisk c++ syntaksen og da bruker jeg/vi en c++ kompilator
front-end til parsing.. syntaksen som du priser er et helvete og medfører
at alle som programmerer for linux i c/c++ får dårligere verktøy da så mye
tid må brukes på noe som kunne vært trivielt. (Jeg vet om haugevis
av prosjekt som har havarert på akkurat dette.)
>Når det er sakt, er det et ikke up-to-date norsk programmeringsspråk
>som heter simula som jeg vil påstå er like bra, kanskje vel så bra å
>starte med som java. Bare det at ingen bruker det, det ligner litt på
>turbo pascal
Tja, Simula er et bedre alternativ. Men jeg tror nok at for en begynner
er Scheme kanskje den beste løsningen (dejanews har flere
diskusjoner på begynnerspråk fra no.it.programmering.* som du kan sjekke,
jeg tror de fleste argumentene er sett).
------------------------------------------------------------------
Stig Erik Sandoe Institute of Informatics, University of Bergen
st...@ii.uib.no http://www.ii.uib.no/~stig/
bare nok til at jeg slipper å tenke på endel ting i egen kode.
| har du noen eksempler på hvor CLUNIX gjør smarte ting?
tja, for å flytte en bruker fra én disk til en annen, mest som et forsøk
på å vise hva jeg tenker meg:
(setf (user-home-directory (find-user "whatever")) #P"/home/b/whatever/")
dvs, dette vedlikeholder konsistens i systemet, som ellers ville bestå i
endel manuelle konsistensvedlikeholdsøvelser:
(push "wheel" (user-groups (find-user "whatever")))
det meste jeg har gjort idag er kode for å holde noenlunde styring på
alle de merkelige variablene som er strødd utover utrolige mengder med
filer og som er forholdsvis vanskelige å få tak i.
jeg har også gjort endel arbeide for å få en rimelig enkel mapping over
/proc, siden det er så mye dumt folk har gjort med formatene på det som
ligger der, f eks:
CL-USER(73): (describe (/proc/net/tcp :stream *standard-output*))
#<tcp-socket #1254664 127.0.0.1:65500 127.0.0.1:61311 TXQ:0 RXQ:0 RTX:0 :established>
is a structure of type tcp-socket. It has these slots:
inode 1254664
local-host 2130706433
local-port 65500
remote-host 2130706433
remote-port 61311
state :established
transmit 0
receive 0
timer 0
expiration 0
retransmit 0
(nei, "/proc/net/tcp" er ikke et veldig genialt navn.) denne funksjonen
graver opp inode fra /proc/<pid>/fd/<fd>, og finner frem til linjen med
den inoden i /proc/net/tcp og parser og tolker verdiene der. dermed kan
man f eks titte på transmit queue for en socket stream og se om den andre
siden har fått det man har sendt, eller om uteblivelse av svar skyldes at
det ikke er ACK'et, ennå.
> Tja, Simula er et bedre alternativ. Men jeg tror nok at for en begynner
> er Scheme kanskje den beste løsningen (dejanews har flere
> diskusjoner på begynnerspråk fra no.it.programmering.* som du kan sjekke,
> jeg tror de fleste argumentene er sett).
Den fordelen scheme måtte ha kan oppveies av en god lærebok og/eller
lærer som sørger for at du ikke går deg vill i Common Lisp sin rikdom.
Jeg vil anta at java har et atskillig større problem med at studenter
roter seg bort i alle de rikholdige bibliotekene i stedet for å lære å
programmere.
Ulempen med scheme er at dersom man ikke går videre og lærer CL, kan
man komme til å trekke feilslutningen at lisp ikke er for Real World
Applications.
Og ulempen med java er at det er så ineffektivt at man kan komme
til å trekke feilslutningen at bare C/C++ er for Real World
Applications...
Jeg tror hva som egner seg best som første programmeringsspråk
avhenger litt av hva som virker intellektuelt motiverende, slik
at noen kanskje kan ha godt av å begynne med noe Helt Annet, som
prolog.
--
(espen)
Men finnes der en god og oppdatert begynnerbok for CL?
Har sett litt på Common LispCraft og den virker ikke helt dum,
men den er jo litt foreldet.
Selv om jeg setter pris på Grahams bøker så synes jeg ikke de
virker som de beste begynnerbøker, sammenliknet med f.eks
SICP og Little Schemer (for to typer begynnere riktignok).
>Ulempen med scheme er at dersom man ikke går videre og lærer CL, kan
>man komme til å trekke feilslutningen at lisp ikke er for Real World
>Applications.
Det er jeg litt obs på og er noe jeg kommer til å nevne spesielt
når jeg holder en Scheme-intro imorgen tidlig. (endelig et kurs på
ii i Bergen som bruker Scheme/Lisp :)
>Jeg tror hva som egner seg best som første programmeringsspråk
>avhenger litt av hva som virker intellektuelt motiverende, slik
>at noen kanskje kan ha godt av å begynne med noe Helt Annet, som
>prolog.
For mange vil nok Helt Annet være f.eks Scheme eller CL.
--
> Selv om jeg setter pris på Grahams bøker så synes jeg ikke de
> virker som de beste begynnerbøker, sammenliknet med f.eks
> SICP og Little Schemer (for to typer begynnere riktignok).
Det er mulig du har rett til det. Da jeg underviste Common Lisp selv,
var ikke Grahams bøker på markedet ennå, så da støttet jeg meg først
og fremst på å lage fornuftige forelesningsnotater til utdeling.
> >Jeg tror hva som egner seg best som første programmeringsspråk
> >avhenger litt av hva som virker intellektuelt motiverende, slik
> >at noen kanskje kan ha godt av å begynne med noe Helt Annet, som
> >prolog.
>
> For mange vil nok Helt Annet være f.eks Scheme eller CL.
Det jeg mente å si var at prolog vil være et inspirerende begynnerspråk
for en del typer mennesker, og at det uansett er et veldig godt valg
som "b-språk" for nybegynnere.
--
(espen)
Dette blir fort en religionskrig; MEN mitt inntrykk er at de fleste som
mener å ha peiling, ganske riktig hevder at C/C++ IKKE er det språket
du skal lære først.
For min del kan jo anbefale Pascal som (fremdeles) har betydelig
utbredelse og Free Pascal er gratis tilgjengelig fra
http://tfdec1.fys.kuleuven.ac.be/~michael/fpc/
Plattformer: Linux, DOS, Win32 m.fl.
> I den virkelige verden så vil jeg tro at sannsynligheten for å få
> brukt for C er større enn Common Lisp.
Spørs hva man skal programmere i. Hvis man skal programmere i C, tror
jeg kanskje man har mer bruk for C enn Lisp, selv om Lisp er nyttig da
også. Hvis man skal programmere i noe annet enn C, tror jeg man har
mer for Lisp enn C. Lisp hjalp meg f.eks. å programmere i Perl.
--
I hate to tell you what they call my son in Harlem.
- Jocasta
nei, nå snakker du om den uvirkelige verdenen: din fantasiverden, der
alle slike avgjørelser er uhyre enkle og alt som er for komplisert for C
ikke finnes. i den delen av verden der det som er så enkelt at det kunne
ha vært gjort i C av nybegynnere ikke på noen måte er relevant, er heller
ikke C noe viktig sprog. spørsmålet er således om man vil lære seg å bli
et null i en enkel verden eller bli flink i noe som har noe å si, og da
må man ty til sprog som er utenfor "mainstream" (eller "storgata"), som
f eks Common Lisp, Smalltalk, Prolog, Ada, Cobol, Fortran, etc.
men for all del, dersom man vil leke med maskin- og OS-nære ting, er C
for deg. hvor givende dette er på kanten av et nytt millennium er
uklart, men det er liten tvil om at det _var_ veldig gøy å mekke sine
egne rutiner for å skrive ut heltall og slikt på tidlig 80-tall og når
man ennå ikke har oppdaget at andre sprog har slikt lett tilgjengelig.
grunnen til at man i visse deler av verden fremdeles trenger C i så stor
grad, er at man _ikke_ har løst en hel del veldig enkle problemer, ennå,
og at det til tross for veldig mange år med veldig mange millioner av
kopier av helt enkle ting ennå ikke har kommet seg videre eller har klart
å gjøre det så riktig at man bare kan bruke noe andre har gjort. det
noen ynder å kalle "den virkelige verden" er altså den verden som de som
liker å mekke bil selv lever i, og da spesielt de som aldri vokser fra en
rusten haug som henger sammen utelukkende fordi de steller med den hver
dag. men bevares, det er kjekt å kunne mekke litt bil, også om man
kjøper seg en _ordentlig_ bil.
| [masse Common Lisp halleluja og reklame for et firma slettet]
jeg er faktisk helt imponert over at denne reaksjonen er mulig. takk.
>* Preben Randhol <ran...@pvv.org>
>| I den virkelige verden så vil jeg tro at sannsynligheten for å få brukt
>| for C er større enn Common Lisp.
>
> nei, nå snakker du om den uvirkelige verdenen: din fantasiverden, der
> alle slike avgjørelser er uhyre enkle og alt som er for komplisert for C
> ikke finnes.
Jeg vet ikke hvilken planet du lever på. Jeg har drevet med data siden
starten på 80-tallet - og jeg har aldri sett skyggen av et kommersielt
behov for å lære seg Common Lisp. Jeg har derimot sett et skrikende
behov etter C og C++ programmerere - faktisk så skrikende at
spamfilteret mitt (som er skrevet i C++) redirigerer slik støy til
bosspannet.
Common Lisp er sikkert hyggelig å leke med - og det er helt sikkert
ypperlig til å løse en masse problemer. Men dersom man vi arbeide
kommersielt med slike sære språk, må man enten være svært flink eller
svært kjent (eller aller helst begge deler).
Å begynne med et "mainstream" språk som C, som dessuten gir en grei
innføring i hvordan ting faktisk henger sammen, er derfor neppe noen
dum idé. Så kan man lære seg nye språk etterhvert som man modnes - og
velge rett språk til rett jobb når man sitter som en middelaldrende og
overbetalt "guru".
Jarle
--
Jarle Aase email: jg...@jgaa.com
Bergen http://www.jgaa.com
<<< no need to argue - just kill'em all! >>>
for et herlig argument! C er sannelig et bra sprog når man er nødt til å
late som om de som ikke er enig i det er virkelighetsfjerne og fra andre
planeter. jajamensann.
men for å svare: den planeten der det forekommer en større variasjon enn
hva hver enkelt av oss er mest trolig å oppleve helt på egenhånd når vi
holder oss unna det uvante. dvs, den kompliserte, ikke-overforenklbare,
virkelige jorden. du vet åpenbart mer om alternative planeter enn jeg
gjør. jeg ville egentlig også likt en langt mindre komplisert verden,
men et er blant annet derfor jeg ikke lenger arbeider primært i C.
| Jeg har drevet med data siden starten på 80-tallet - og jeg har aldri
| sett skyggen av et kommersielt behov for å lære seg Common Lisp.
ja, dette var et kraftfullt argument. siden jeg har arbeidet med "data"
siden 1978 og var med da Unix første gang ble kjørt i Norge og har vært
en Unix-mann i veldig mange år, har jeg naturligvis også sett veldig mye
til C-verdenen, men jeg har sett et kommersielt behov for Lisp siden
omkring 1980, også, kanskje så sent som 1983. faktisk er det det stadig
tilbakevendende ved Lisp som gjorde at jeg valgte å droppe det stupide
tullet C++ og heller se meg om etter et _ordentlig_ objekt-orientert og
moderne sprog omkring 1993. jeg har også sett reelle kommersielle behov
for Smalltalk og Ada, og var med å starte Ada i Norge i 1986. mitt
firmas logo bærer fremdels preg av den tiden jeg tjente penger på Ada,
enda det finnes mange tusener av mennesker som i likhet med deg aldri har
sett skyggen av kommersielle behov for noe annet enn det de kan (best).
| Jeg har derimot sett et skrikende behov etter C og C++ programmerere -
som jeg forsøkte å si og du ikke tok til deg: siden C _fremdeles_ er på
det nivået der folk må skrive sine egne funksjoner for å skrive ut tall i
binær form og folk som skriver i C _fremdeles_ løser det problemet bare
for binære tall og ikke generelt, så vil det alltid være et skrikende
behov etter C og C++-programmerere. det samme vil skje i en by som f eks
ikke får løst sine renovasjonsproblemer: de vil også ha et skrikende
behov etter renovasjonsarbeidere. løsningen kan være noe så enkelt som
en anderledes infrastruktur, som det naturligvis ikke finnes skyggen av
kommersielt grunnlag for før noen faktisk tar steget og bare gjør det.
det ble f eks sagt at hele den amerikanske befolkningen måtte ha arbeidet
som telephone operators i 1984 dersom ikke Bell Labs hadde funnet opp den
automatiske switchen rundt 1980.
det at man har et skrikende behov for det samme etter mange år, betyr
bare at man gjør noe veldig, veldig galt. har ikke alle de millionene av
folk som sier de kan C i verden klart å _redusere_ problemene sine enda
så mange manneår de har nedlagt i programmering i det sproget? hvorfor
_har_ de egentlig de samme problemene idag som de hadde i 1980, selv i
det luresproget de kaller C++?
| Common Lisp er sikkert hyggelig å leke med - og det er helt sikkert
| ypperlig til å løse en masse problemer. Men dersom man vi arbeide
| kommersielt med slike sære språk, må man enten være svært flink eller
| svært kjent (eller aller helst begge deler).
dette er det endel sant i, men det er dessverre et større problem med de
som sier de kan de populære sprogene: man må anta at de i likhet med 95%
av de andre som sier de kan det, lyver så det renner av dem. jeg kjenner
f eks flere som er dyktige i Common Lisp enn som er _tilsvarende_ dyktige
i C++, enda jeg arbeidet med Norges stemmegivning på ISO-standarden og
har hatt mye å gjøre med folk som har likt C++ i mange land siden 1990.
å bli svært flink i Common Lisp tar et rimelig godt hode omkring 3
måneder. å bli svært flink i C++ tar et rimelig godt hode 18 måneder.
du har i den sammenheng altså et poeng: man må bli svært flink i Common
Lisp og gjøre litt av seg, mens man ikke _trenger_ å bli mer enn bare
litt flinkere enn de andre på C++-markedet før man kan få en C++-jobb.
det svært ironiske i dette bildet er at det tar 3 måneder å bli bare litt
flinkere i C++ enn konkurrentene. på den tiden rekker man å bli svært
flink i Common Lisp, om man ikke setter seg på bakbena og begynner å
fjase og tulle om "den virkelige verden" og "hvilken planet lever du på",
som kun er egnet til å fortelle de som hører slikt fjas at de som sier
slikt egentlig er _redde_ for at verden er større enn de selv kjenner.
| Å begynne med et "mainstream" språk som C, som dessuten gir en grei
| innføring i hvordan ting faktisk henger sammen, er derfor neppe noen
| dum idé.
C er en grei innføring i hvordan ting faktisk hang sammen i 1975-78.
det har skjedd forholdsvis mye siden da, men bevares, Intel 8080 lever jo
evig i Pentium III, så hvorfor ikke også forestillingen om at C og verden
fremdeles holder lag.
| Så kan man lære seg nye språk etterhvert som man modnes - og velge rett
| språk til rett jobb når man sitter som en middelaldrende og overbetalt
| "guru".
slik er nettopp C-programmererens tragiske utvikling, men er man smart
nok til å lære seg flere gode sprog tidlig, kan man bli overbetalt og
"guru" lenge før man blir middelaldrende og yngelen ikke hører på en.
>| Jeg har drevet med data siden starten på 80-tallet - og jeg har aldri
>| sett skyggen av et kommersielt behov for å lære seg Common Lisp.
>
> ja, dette var et kraftfullt argument. siden jeg har arbeidet med "data"
> siden 1978 og var med da Unix første gang ble kjørt i Norge og har vært
> en Unix-mann i veldig mange år, har jeg naturligvis også sett veldig mye
> til C-verdenen, men jeg har sett et kommersielt behov for Lisp siden
> omkring 1980, også, kanskje så sent som 1983. faktisk er det det stadig
> tilbakevendende ved Lisp som gjorde at jeg valgte å droppe det stupide
> tullet C++ og heller se meg om etter et _ordentlig_ objekt-orientert og
> moderne sprog omkring 1993.
Det var mye snakk om OO på 80 tallet, - men det ble for det meste med
snakket.
> jeg har også sett reelle kommersielle behov
> for Smalltalk og Ada, og var med å starte Ada i Norge i 1986. mitt
> firmas logo bærer fremdels preg av den tiden jeg tjente penger på Ada,
> enda det finnes mange tusener av mennesker som i likhet med deg aldri har
> sett skyggen av kommersielle behov for noe annet enn det de kan (best).
Jeg liker systemprogrammering, - og da er c ok. Assembler blir *for*
lavnivå, og c++ egentlig litt for tungt. Men jeg har endt opp med å
bruke c++ av bekvemmelighet...
Dersom jeg hadde hatt andre interesser, ville jeg sannsynligvis valgt
andre verktøy. Jeg føler meg i alle fall ikke truffet av hentydningen
om at jeg/vi ikke er interessert i å lære noe nytt. Jeg bruker
bortimot 50% av tiden min til å se på nye ting.
>| Jeg har derimot sett et skrikende behov etter C og C++ programmerere -
>
> som jeg forsøkte å si og du ikke tok til deg: siden C _fremdeles_ er på
> det nivået der folk må skrive sine egne funksjoner for å skrive ut tall i
> binær form og folk som skriver i C _fremdeles_ løser det problemet bare
> for binære tall og ikke generelt, så vil det alltid være et skrikende
> behov etter C og C++-programmerere.
Jeg er slett ikke uenig i at c er lavnivå og primitivt. Men jeg synes
det er greit å kunne lavnivå før man lærer høynivå. Slik får man
perspektiv - noe du allerede har - men som du åpenbart mener nye
programmerere ikke trenger?
> det at man har et skrikende behov for det samme etter mange år, betyr
> bare at man gjør noe veldig, veldig galt. har ikke alle de millionene av
> folk som sier de kan C i verden klart å _redusere_ problemene sine enda
> så mange manneår de har nedlagt i programmering i det sproget? hvorfor
> _har_ de egentlig de samme problemene idag som de hadde i 1980, selv i
> det luresproget de kaller C++?
Da jeg drev med qnx på 80-tallet fantes det nesten ikke programmer for
dette systemet. Jeg skrev en rekke programmer, portet andre,
implementerte vituell memory i uemacs, og skrev en nettverksprotokoll
over serielinje mellom qnx og interactive unix. Alt dette i en svært
primitiv c dialekt. Du husker sikkert at det var slik vi c
programmerere drev på den gangen, dersom vi ville gjøre noe annet enn
å stirre tomt på skjermene våre.
I dag slipper vi dette - fordi det finnes enorme mengder ferdig
programvare for nesten alle tenkelige platformer. Så det er åpenbart
at "millionene" med c programmerere har drevet med litt annet enn å
gjøre de samme tingene opp igjen og opp igjen.
>| Common Lisp er sikkert hyggelig å leke med - og det er helt sikkert
>| ypperlig til å løse en masse problemer. Men dersom man vi arbeide
>| kommersielt med slike sære språk, må man enten være svært flink eller
>| svært kjent (eller aller helst begge deler).
>
> dette er det endel sant i, men det er dessverre et større problem med de
> som sier de kan de populære sprogene: man må anta at de i likhet med 95%
> av de andre som sier de kan det, lyver så det renner av dem. jeg kjenner
> f eks flere som er dyktige i Common Lisp enn som er _tilsvarende_ dyktige
> i C++, enda jeg arbeidet med Norges stemmegivning på ISO-standarden og
> har hatt mye å gjøre med folk som har likt C++ i mange land siden 1990.
Det finnes få mennesker som utmerker seg. Dette har ingenting med
hvilke programmeringsspråk de velger å gøre.
At det finnes svært mange udugelige c og c++ programerere har nok
sammenheng med at dette typisk er språkene de som vokser fra Visual
Basic prøver seg på.
> å bli svært flink i Common Lisp tar et rimelig godt hode omkring 3
> måneder. å bli svært flink i C++ tar et rimelig godt hode 18 måneder.
Skal man "bli flink" i c eller c++ må man også bli flink på en rekke
andre områder, som alogritmer, debugging, strukturering og prosessor
og operativsystemteori. Selve "språket" er svært enkelt å lære. Disse
tilleggskunskapene er neppe noen ufordel uansett hvilke språk man
arbeider med senere (selv om man noen ganger må lære seg å tenke på en
ny måte).
>| Å begynne med et "mainstream" språk som C, som dessuten gir en grei
>| innføring i hvordan ting faktisk henger sammen, er derfor neppe noen
>| dum idé.
>
> C er en grei innføring i hvordan ting faktisk hang sammen i 1975-78.
>
> det har skjedd forholdsvis mye siden da, men bevares, Intel 8080 lever jo
> evig i Pentium III, så hvorfor ikke også forestillingen om at C og verden
> fremdeles holder lag.
Teorien jeg leste i min far sine bøker, da han studerte informatikk på
70-tallet, er fortsatt relevante. Verden utvikler seg, men fundamentet
teknologien bygger på blir ikke byttet ut like raskt som de siste
aksellerator chip'ene.
eh, akkurat. Smalltalk-80. Flavors i (Common) Lisp. CLOS. det var i
C-verdenen det ble med snakket. i resten av verden gjorde man store og
meget vellykkede ting. C++ lærte aldri noe av det fordi Bjarne også
levde i den villfarelse at C var et viktig sprog i verdenssammenheng og
fnyste av alt han _burde_ ha lært noe av tidlig nok til at det kunne hatt
varig god effekt på sproget heller enn å bli hengt på siden. sukk, jeg
blir helt oppgitt over alt som liksom skal med i C++ fordi en eller annen
stakkar har funnet ut at det finnes i et annet sprog som kunne vært bedre
enn C++ om ikke C++ klarer å emulere det det har. STL, f eks. sukk.
| Jeg er slett ikke uenig i at c er lavnivå og primitivt. Men jeg synes
| det er greit å kunne lavnivå før man lærer høynivå. Slik får man
| perspektiv - noe du allerede har - men som du åpenbart mener nye
| programmerere ikke trenger?
eh, akkurat. hvordan klarte du å komme til den siste konklusjonen din?
det er nettopp perspektiv jeg etterlyser -- viljen til å se opp fra den
søte lille navlen sin og faktisk fatte at verden er litt større enn
enkelte C-folk har et intenst ønske om å insistere på at den er.
før i tiden var det relevant å kunne skrive assembly-kode. nå er det
bare relevant å lese det og kunne modifisere kompilator-output. det
samme gjelder i stor grad C. det perspektivet man trenger, er å forstå
hvorfor hardwaren ikke lenger ser ut slik de enkle sprogene leder folk
til å tro, hvorfor den assembly-koden du leser bare har et _semantisk_
forhold til hva som skjer, mens det som skjer faktisk er noe helt annet,
i en annen rekkefølge, med helt andre register, etc, involvert.
sprogene var mye mer maskin-nære tidligere. C har ++-operatoren fordi
det på PDP-11 fantes en "post-increment" addressing mode. Lisp har CAR
og CDR fordi maskininstruksjonene som hentet frem to deler av en CONS
celle het CAR og CDR på den første IBM-maskinen Lisp kjørte på. senere
har vi fått LDB i Common Lisp fra instruksjonen med samme navn og
funksjon på PDP-10. C's passing av array som pointer to element 0 kommer
også av hvordan peker og registre så ut på PDP-11. Common Lisp kjører
ikke på maskiner med CAR, CDR, eller LDB som instruksjoner, lenger, men
deres semantiske rolle er ivaretatt. hvorvidt man kan dereferere en
peker i en moderne prosessor og samtidig post-inkrementere den er helt
uvesentlig. C var like langt fra CPU'en i 1975-1978 som assembly på en
Pentium III er fra hva CPU'en faktisk gjør idag. i Lisp har man aldri
brydd seg noe særlig om hvordan det ble utført på maskin-nivå, og man er
derfor ikke flyttet seg noe mer eller mindre fra maskinen -- det man er
interessert i er og har vært semantikken. C forsøker krampaktig å holde
på at maskinen utfører semantikken i C. dét har ikke vært riktig på noen
moderne prosessorer siden 1990, omtrent.
| Det finnes få mennesker som utmerker seg. Dette har ingenting med hvilke
| programmeringsspråk de velger å gøre.
da er vel det du selv sa om at man måtte være svært flink eller svært
kjent for å lykkes med Common Lisp spesielt også feil, da? eller hva?
| Skal man "bli flink" i c eller c++ må man også bli flink på en rekke
| andre områder, som alogritmer, debugging, strukturering og prosessor og
| operativsystemteori. Selve "språket" er svært enkelt å lære.
vel, jeg regnet med noe slikt vås. det er Bjarne Stroustrup og Andrew
Koenig og Stanley Lippman og slike ubetydelige navn i C++-verdenen som
sier 18 måneder på å bli svært flink i C++. sproget C++ er _ikke_ enkelt
å lære seg. siden du tror det, og Bjarne og Andrew påpeker på nettet til
stadighet at det bare er de som ikke kan C++ som tror det, ligger det vel
ganske opp i dagen hvorfor du mener noe slikt åpenbart vrøvl. f eks er
instansiering av templates i C++ noe som svært få virkelig forstår, enda
begrepet "parameterisert type" er trivielt uttrykkbart i Common Lisp.
| Teorien jeg leste i min far sine bøker, da han studerte informatikk på
| 70-tallet, er fortsatt relevante. Verden utvikler seg, men fundamentet
| teknologien bygger på blir ikke byttet ut like raskt som de siste
| aksellerator chip'ene.
siden du liker deg på lavnivå lurer jeg på om du har lyst til å forklare
hvorfor John Hennessy og David Patterson finner det nødvendig å utgi en
andre utgave av sine bøker og hvorfor kompilator-folk begynner å bli
veldig opptatt av front-end-optimering av C, siden sproget har så store
semantiske svakheter at det ikke lenger kan optimeres fornuftig i
back-end, hvorfor caching strategies og data access prediction plutselig
har langt mer å si for en algoritmes effektivitet enn det som tidligere
var det store målet: intern prosessortid.
du vet jo ikke hva du snakker om, Jarle Aase, men holder fast ved gamle
myter og sludder som egentlig aldri stemte. ikke det minste rart du tror
på C og C++ fremdeles. ikke det minste rart at den verdenen heller ikke
forandrer seg noe særlig. og derfor ikke det minste rart at man ennå
trenger millioner av mennesker som sier de kan skrive C og C++ for å
gjøre et stykke arbeide som intet menneske burde gjort. ikke fordi vi
har Common Lisp spesielt, men fordi vi har Smalltalk, Ada, Common Lisp,
Eiffel, ML, Prolog, Erlang, Matlab, endog Perl til sitt skarve bruk.
det er ødsling med den korte tiden vi har her på kloden å be folk lære
seg ting som kaster bort så mye ressurser som det å kunne klare å få til
små oppgaver i C og C++. gi dem ihvertfall Java, selv om det er å regne
som et baby-sprog, men hold ihvertfall folk unna vrangforestillingen om
at det er verd noe menneskes tid å dille med manuell memory management
bare fordi Bjarne ikke ville akseptere at objekt-orientering nødvendigvis
innebærer at eierskapsprotokoller for objekter blir uhåndterlig komplekse
og at den enkle løsningen (reference counting eller locally owned copy)
er _langt_ mindre effektivt enn automatisk memory management.
men never mind, folk som _velger_ C og C++ idag gjør det ikke fordi de
ikke har sett lyset, men fordi de ikke fatter hvorfor de blir blendet av
det skrikende åpenbare i at begge er uegnet til alt de brukes til, og
velegnet til å løse problemer folk ikke lenger har.
#:Erik, som p.t. leser på Erlang og Eiffel for å finne ut hvorfor noen
måtte lage et helt nytt sprog for å få det de ville ha når vi i
Lisp-verdenen tar opp i oss utviklingen uten særlige vansker og
uten å vrake alt vi har fra før...
> sprogene var mye mer maskin-nære tidligere. C har ++-operatoren fordi
> det på PDP-11 fantes en "post-increment" addressing mode.
Dette er ikke helt korrekt, ifølge dmr:
Thompson went a step further by inventing the ++ and -- operators,
which increment or decrement; their prefix or postfix position
determines whether the alteration occurs before or after noting the
value of the operand. They were not in the earliest versions of B,
but appeared along the way. People often guess that they were
created to use the auto-increment and auto-decrement address modes
provided by the DEC PDP-11 on which C and Unix first became
popular. This is historically impossible, since there was no PDP-11
when B was developed. The PDP-7, however, did have a few
`auto-increment' memory cells, with the property that an indirect
memory reference through them incremented the cell. This feature
probably suggested such operators to Thompson; the generalization to
make them both prefix and postfix was his own. Indeed, the
auto-increment cells were not used directly in implementation of the
operators, and a stronger motivation for the innovation was probably
his observation that the translation of ++x was smaller than that of
x=x+1.
Se http://www.cs.bell-labs.com/~dmr/chist.html
TTFN,
--
Hans Peter Verne ( hpv @ kjemi.uio.no ) Phone: (+47) 22 85 54 14
Dept. of Chemistry, University of Oslo. Fax: (+47) 22 85 54 41
`It would seem that you have no useful skill or talent whatsoever,
have you thought of going into teaching?' -- Terry Pratchett, "Mort"
> Det var mye snakk om OO på 80 tallet, - men det ble for det meste med
> snakket.
> jeg har endt opp med å bruke c++ av bekvemmelighet...
Siden jeg ikke har ord, skal jeg ikke blande meg i debatten. Men det
var jo greit å påpeke hvorfor man ikke har ord. Ha en fin helg,
folkens.
verre og dummere FUD har jeg aldri sett. selv folk som bare er moderat
flinke i Common Lisp har akkurat null problem med å finne prosjekter og
interessante oppgaver. (folk som er like flinke i C/C++/whatever får
derimot ofte veldig kjedelige jobber.)
| Jeg trives ikke når jeg skriver library funksjoner eller ting tusen
| mennekser har gjort før meg. Jeg trives når jeg er i noenlunde ukjent
| farvann og kan bruke fantasi og kreativitet for å løse en oppgave.
| Tilfeldigheter har gjort at c++ for øyeblikket egner seg godt til det
| jeg driver med - men jeg vil ikke nøle med å skifte språk dersom jeg
| finner noe som egner seg mye bedre til de samme problemene - uten at
| jeg slutter å trives med å programmere!
ok, skal jeg sende deg en CD med Allegro CL 5.0.1 så du kan prøve litt
hvordan det er å arbeide med et sprog som eksplisitt støtter eksplorativ
programmering?
| - Og dersom du mener at de programmene jeg skriver, som i første rekke
| angriper Microsofts markedsstrategi på Internett, er noe "intet menneske
| burde gjort" - så er det heldigvis ganske mange som er uenig med deg ;)
sukk. hvorfor _må_ du svare så forbannet uintelligent? du skjønte at
jeg snakket om slike ting som at man fortsetter å dille med pekere og
manuell memory management, gjorde du ikke?
| Hva ville du skrevet en webserver i?
i Common Lisp, naturligvis. jeg har da også gjort det, riktignok bare
til internt bruk, men fordi jeg synes det er viktigere å binde funksjoner
til URL'er enn filer og mye morsommere å kjøre kode direkte enn å fyre
opp alskens merkelige interpreter, støtter den f eks ikke PhP eller CGI
eller slike ting på den gamle måten. URL'ene er naturligvis de samme.
(brukes for å vise status og statistikk i et system også skrevet i CL.)
| Det tok meg noen timer å implementere HTTP protokollen i en C++ klasse.
noen _timer_ for bare protokollen? geez. jaja, hver sin lyst.
#:Erik
kult! takk for den virkelige historien.
#:Erik
> * Jarle Aase
...klipp...
> ok, skal jeg sende deg en CD med Allegro CL 5.0.1 så du kan prøve litt
> hvordan det er å arbeide med et sprog som eksplisitt støtter eksplorativ
> programmering?
Utforskende programmering, altså? Unnskyld at jeg smetter meg inn for
å tigge litt: Har du en til meg også :-) ? Lisp-verktøyene som følger
med Linux-distroer er for begrensede til å vekke den store appetitten...
--
Herman Robak
Admiralveien 7
3183 HORTEN
> Erik Naggum <er...@naggum.no> writes:
>
> | neppe noen kjempeidé å starte med noen av disse. jeg ville heller
> | foreslå at du begynte med et rimelig ålreit _programmeringssprog_ og
> | lærte deg C når du faktisk får behov for det. (C++ bør du håpe at du
> | aldri får reelt behov for å _kunne_.)
>
> I den virkelige verden så vil jeg tro at sannsynligheten for å få
> brukt for C er større enn Common Lisp.
<rant>
Jeg undres på hvor mange halvferdige applikasjoner for Linux som kunne
ha vært fullført og nådd et anstendig stabilitets- og vedlikeholdsnivå
hvis programmererne slapp å bruke n% av tiden til å håndtere minne og
annen styggedom på lavnivå. Dette gjør det bare vanskelig å lage
gode programmer, både for erfarne og ferskinger.
Folk flest i dag bruker datamaskiner for å effektivisere sin hverdag.
Formularer i regneark, automatisk oppdatering av grafer, linking mellom
dokumenter osv. er features de tar for gitt. Sekretærer skriver ikke
brev inn på maskin for sjefen sin lenger. De bruker tekstbehandlere,
fletting, avanserte hjelpesystemer, makroprogrammering og annet.
(Hvis vi ser bort i fra regjeringen og andre IT-vegrere.)
Hvorfor så mange programmerere fremdeles bruker steintavle og kuleramme
er beyond meg.
[0] Dette gjelder selvfølgelig ikke alt, men jeg vil tro at 90%
av det som finnes på av programvare til Gnome godt kunne ha vært
skrevet i noe annet enn C. (Og noe er selvfølgelig skrevet i annet
enn C, og.)
--
Lars
| * Preben Randhol <ran...@pvv.org>
| | I den virkelige verden så vil jeg tro at sannsynligheten for å få brukt
| | for C er større enn Common Lisp.
|
| nei, nå snakker du om den uvirkelige verdenen: din fantasiverden, der
| alle slike avgjørelser er uhyre enkle og alt som er for komplisert for C
| ikke finnes. i den delen av verden der det som er så enkelt at det kunne
For et herlig argument herr Naggum. Du har jo virkelig slående
argumenter.
--
Preben Randhol oO "Don't think about domination, think
[ran...@pvv.org] .` ; about freedom, it doesn't dominate."
[www.pvv.org/~randhol/] \ G -- RMS, LinuxWorld 1999.
`_) n o m e
Jeg burde vist bedre enn å svare på et innlegg av en
fulltidskverulant. Nå har vi enda en av disse debattene om hvilket
språk som er best fordi man kan gjøre X og Y som man ikke kan i alle
andre språk.
> Jeg burde vist bedre enn å svare på et innlegg av en
> fulltidskverulant.
Om noen senket saklighetsnivået her, så var det vel du?
--
(espen)
> c *er* et viktig språk i "verdenssammenheng" enten du liker det eller
> ikke. Du har rett i mye av kritikken din mot c og c++, men språkene er
> like forbannet helt nødvendige å kjenne for alle programmerere som
> støter borti systemprogrammering i dag og i overskuelig fremtid.
lurer på om de sa det samme om COBOL for noen år siden..
ez
--
Mbit til folket.
Mye mulig det. Jeg prøvde bare å forholde meg til hva som det ble
spurt etter og ikke hvilket språk som er _best_ til å lage de _mest_
kompliserte tingene.
Siden det ble spurt om programmering for Linux og de aller fleste
programmene som jeg har vært borti er programmert i C, mener jeg
fortsatt at C er det større sannsynlighet for å få brukt for enn f.eks
Common Lisp.
> Siden det ble spurt om programmering for Linux og de aller fleste
> programmene som jeg har vært borti er programmert i C, mener jeg
> fortsatt at C er det større sannsynlighet for å få brukt for enn f.eks
> Common Lisp.
Det er spørsmål om livslang læring også. Hvis man blir jævlig flink i
C, har man liksom bare blitt jævlig flink i C. Hvis man blir jævlig
flink i Lisp, tror jeg man har lært og skjønt jævlig mye mer. Nok til
å forstå hvilket nødvendig onde C kan være om man skal hacke mye på
Linux, f.eks., men også til å tenke litt mer abstrakt selv med C som
verktøy, forhåpentligvis, om man da ikke fremdeles er på nivået der
man har parentesangst og er jævlig frustrert over disse uforståelige
Lisp-greiene. Isåfall er nok verden best tjent med at vedkommende
holder seg i C, iallefall så lenge det fremdeles er bruk for slike.
Alle signifikante operativsystemer i dag er skrevet i c. De aller
fleste viktige utviklingsverktøy er skrevet i c. Nesten all ledende
programvare for alle signifikante plattformer er skrevet i c eller
c++. De fleste tunge serverprogrammer er skrever i c eller c++. De
fleste biblioteker for skjermhåndtering, diskhåndtering,
cache-management, memory-management, nettverksprotokoller osv. osv er
skrevet i c eller c++. Og nesten ALLE profesjonelle programmerere i
alle bransjer jobber i c eller c++ (når man ser bort fra Visual Basic
"konsulentene").
Cobol var et nyttig og spesialisert verktøy for administrativ
databehandling (jeg har faktisk brukt cobol også i min ungdom), men
kun en fotnote i datahistorien. c har vært en av de viktgste
byggestenene i den samme historien frem til nå. c vil selvfølgelig
også bli foreldet - men dersom et språk fra vårt århundre vil bli
husket av historikerne, blir det sannsynligvis c. Og dersom noen skal
arbeide som programmerer - så bør de kjenne c (selv om de foretrekker
å arbeide i andre språk).
Jarle (som likevel ikke er "personlig troende på c").
On Fri, 27 Aug 1999 16:15:43 GMT, jg...@jgaa.com (Jarle Aase) said:
> Cobol var et nyttig og spesialisert verktøy for administrativ
> databehandling (jeg har faktisk brukt cobol også i min ungdom), men
> kun en fotnote i datahistorien.
Men det er likevel den fotnoten som har fått lov til å bli skrevet med
store, røde bokstaver over hele arket:
Y Y 222 K K
Y Y 2 2 K K
Y Y 2 K K
Y Y 2 KK
Y 2 K K
Y 2 K K
Y 22222 K K
Så vidt jeg husker var det inntil 1997 eller 1998 regnet med at det
var mer Cobol-kode i kjørende produksjonssystemer enn C-variantene til
sammen, men jeg kan jo huske feil.
> Jarle (som likevel ikke er "personlig troende på c").
... men likevel er en ivrig evangelist.
--
^ arbeidsstas -et (av jobb, stas) moro, festlighet i arbeidet el. jobben
|\ J<>I: Et bilde kan si mer enn tusen ord, men ett ord kan gi tusen bilder.
| Skilletegn "-- " på egen linje, 4 linjer høy. Med plass til sitater òg.
v<------------------------------76 tegn bred------------------------------->
det er fordi det sikrer at de beholder den jobben de ikke fortjener, at
ledere fortsatt tror at programmerere er noe det er underskudd av, og at
det holder å være interessert i "data" for å bli en flink programmerer.
endel av dette vil endre seg i de nærmeste årene, spesifikt som følge av
de softwarekatastrofene som er begått i og med at man slapp til kreti og
pleti for å fikse et problem som programmerere og software-bransjen kunne
ha skjønt og _forhindret_ fra starten av: Y2K.
* Preben Randhol <ran...@pvv.org>
| For et herlig argument herr Naggum. Du har jo virkelig slående
| argumenter.
beklager "siteringsfusket", men jeg håper du fortsatt er veldig enig i
hvordan man bør klassifisere det jeg ser ut til å si, og glemmer at det
er du som har sagt det.
og hvordan måler vi egentlig Jarle Aase's forståelse av "signifikant"?
| De aller fleste viktige utviklingsverktøy er skrevet i c.
... og eller "viktige"? la meg gjette: de er tilgjengelige for _ham_, i
tråd med det meget kraftfulle argumentet at _han_, Jarle Aase, kreven av
alle de svært viktige mennesker i menneskehetens historie, aldri hadde
sett skyggen av et kommersielt behov for Common Lisp. juhu.
| Nesten all ledende programvare for alle signifikante plattformer er
| skrevet i c eller c++.
javisst, og månen er også laget av C og C++.
| De fleste tunge serverprogrammer er skrever i c eller c++.
dette _må_ du vite er løgn, Jarle. så dum at du tror noe som dette er
det ikke sannsynlig at du kan være.
| De fleste biblioteker for skjermhåndtering, diskhåndtering, cache-
| management, memory-management, nettverksprotokoller osv. osv er skrevet i
| c eller c++.
nei, de er _opplagt_ skrevet i assembly.
| Og nesten ALLE profesjonelle programmerere i alle bransjer jobber i c
| eller c++ (når man ser bort fra Visual Basic "konsulentene").
akkurat. og du er helt klart en langt viktigere og mer autoritativ kilde
til dette enn f eks de store konsulentselskapenes egne tall, Gartner
Groups rapporter, the Economist's analyser, etc.
| Cobol var et nyttig og spesialisert verktøy for administrativ
| databehandling (jeg har faktisk brukt cobol også i min ungdom), men kun
| en fotnote i datahistorien.
*LATTER* du er jo ikke bare inkompetent, du er faen meg _stolt_ av det!
| c har vært en av de viktgste byggestenene i den samme historien frem til
| nå.
selv ikke i Microsofts historieforfalskning er dette en rimelig påstand.
| c vil selvfølgelig også bli foreldet - men dersom et språk fra vårt
| århundre vil bli husket av historikerne, blir det sannsynligvis c.
og hvor viktig mener du Bill Gates er da? skal vi grave ut månen slik at
vi ser hans hellighets ansikt lyse over oss?
| Og dersom noen skal arbeide som programmerer - så bør de kjenne c (selv
| om de foretrekker å arbeide i andre språk).
bare hvis de har tenkt å konkurrere om arbeidsplassene med sånne som deg.
#:Erik
| neppe noen kjempeidé å starte med noen av disse. jeg ville heller
| foreslå at du begynte med et rimelig ålreit _programmeringssprog_ og
| lærte deg C når du faktisk får behov for det. (C++ bør du håpe at du
| aldri får reelt behov for å _kunne_.)
I den virkelige verden så vil jeg tro at sannsynligheten for å få
brukt for C er større enn Common Lisp.
[masse Common Lisp halleluja og reklame for et firma slettet]
--
| Det er spørsmål om livslang læring også. Hvis man blir jævlig flink i
| C, har man liksom bare blitt jævlig flink i C. Hvis man blir jævlig
| flink i Lisp, tror jeg man har lært og skjønt jævlig mye mer. Nok til
| å forstå hvilket nødvendig onde C kan være om man skal hacke mye på
| Linux, f.eks., men også til å tenke litt mer abstrakt selv med C som
| verktøy, forhåpentligvis, om man da ikke fremdeles er på nivået der
| man har parentesangst og er jævlig frustrert over disse uforståelige
| Lisp-greiene. Isåfall er nok verden best tjent med at vedkommende
| holder seg i C, iallefall så lenge det fremdeles er bruk for slike.
Beklager, men jeg har aldri hevdet at Lisp (uansett variant) er et
dårlig språk. Heller ikke at C er bedre. Kun at man vil i Linux verden
finne mer C programvare og C bindinger til biblioteker enn Lisp. Det
er fullt mulig at Lisp er det beste språket når man skal lage store
komplekse programmer, men jeg har litt vanskelig å forestille meg at
det er det første man gjør når man har en kompiler som ikke kan takle
(beklager om jeg husker feil her) store programmer, og når man ønsker
å lære seg programmering.
Forresten hvilke områder er (Common) Lisp mye brukt?
| * Erik Naggum
| | I den virkelige verden så vil jeg tro at sannsynligheten for å få brukt
| | for C er større enn Common Lisp.
|
| * Preben Randhol <ran...@pvv.org>
| | For et herlig argument herr Naggum. Du har jo virkelig slående
| | argumenter.
|
| beklager "siteringsfusket", men jeg håper du fortsatt er veldig enig i
| hvordan man bør klassifisere det jeg ser ut til å si, og glemmer at det
| er du som har sagt det.
He he he. Vel mitt poeng var vel mer at du i det ene svaret anklaget
meg for å leve i en fantasi verden og i det neste sa du at en annen
var mer eller mindre en idiot når han sa det samme til deg. Dvs. om jeg
ikke husker helt feil da. Du må jo ikke glemme at jeg er jo bare en
inkompetent idiot som alle andre.
Men legg merke til at jeg ikke har noen gang hevdet at Lisp er på noe
som helst måte et dårlig programmeringsspråk, kun at det er langt
mindre brukt enn C. Det betyr ikke at C er bedre. Man kan si akkurat
det samme om Linux vs Microsoft.
| Men legg merke til at jeg ikke har noen gang hevdet at Lisp er på noe
| som helst måte et dårlig programmeringsspråk, kun at det er langt
| mindre brukt enn C. Det betyr ikke at C er bedre. Man kan si akkurat
^^^^^
Beklager skulle ha stått : enn f.eks C i Linux verdenen.
> Alle signifikante operativsystemer i dag er skrevet i c.
Feil
> De aller
> fleste viktige utviklingsverktøy er skrevet i c.
Feil
> Nesten all ledende
> programvare for alle signifikante plattformer er skrevet i c eller
> c++.
Feil
> De fleste tunge serverprogrammer er skrever i c eller c++.
Feil.
Signifikante operativsystemer i dag befinner seg på stormaskin.
Mer er det vel ikke å si om den saken. Hobbysystemene på disse
skrivebordsboksene er jo ikke noe å skryte av når det kommer
til stykket... Det samme gjelder for programmeringsspråk.
\Ruben.
--
~---~ |
/ o o \ |
< V > |
- \m-m/- |
>Signifikante operativsystemer i dag befinner seg på stormaskin.
Og folk klager over at *jeg* lever i fortiden...
*sukk*
>* Jarle Aase
>| Alle signifikante operativsystemer i dag er skrevet i c.
>
> og hvordan måler vi egentlig Jarle Aase's forståelse av "signifikant"?
Jada jada... Jeg skrev i halvsøvne etter en uke uten søvn (det er
forøvrig den eneste mentale tilstanden som setter meg i stand til å
kommunisere med folk som sitter høyt oppe i skyene sine og ikke
forstår at det er en høyst håndfast og konkret verden under dem).
Jeg tenkte PC/nettverksarkitektur. Det finnes en verden utenfor dette,
- men den har ikke så forferdelig stor betydning for andre enn
storkonserner og offentlig forkvakling. (sistnevnte virker forøvrig
mye mer giret på å kjøre min c/c++ programvare enn det sølet de bruker
i dag).
>| Nesten all ledende programvare for alle signifikante plattformer er
>| skrevet i c eller c++.
>
> javisst, og månen er også laget av C og C++.
Hva som befinner seg høyt oppe i skyene, og over dette, har nok du mer
greie på enn meg...
>| De fleste tunge serverprogrammer er skrever i c eller c++.
>
> dette _må_ du vite er løgn, Jarle. så dum at du tror noe som dette er
> det ikke sannsynlig at du kan være.
Dersom vi holder oss til mainstream (NT/win32/Unix/PP), og ser bort
fra stormaskin et ørlite øyeblikk - så burde den påstanden være
rimelig konsis.
>| De fleste biblioteker for skjermhåndtering, diskhåndtering, cache-
>| management, memory-management, nettverksprotokoller osv. osv er skrevet i
>| c eller c++.
>
> nei, de er _opplagt_ skrevet i assembly.
Noe er skrevet i asm også, det er riktig. Hmm. Tenke hardt. Lure på
hvorfor de ikke valgte Common Lisp....
>| c vil selvfølgelig også bli foreldet - men dersom et språk fra vårt
>| århundre vil bli husket av historikerne, blir det sannsynligvis c.
>
> og hvor viktig mener du Bill Gates er da? skal vi grave ut månen slik at
> vi ser hans hellighets ansikt lyse over oss?
Det måtte jo være en fin oppgave for deg og disiplene dine. Reis til
månen du, så kommer du enda lenger vekk fra den verden du hater så
intenst. For hvorfor ville du ellers fornekte den?
>| Og dersom noen skal arbeide som programmerer - så bør de kjenne c (selv
>| om de foretrekker å arbeide i andre språk).
>
> bare hvis de har tenkt å konkurrere om arbeidsplassene med sånne som deg.
Jeg konkurrerer ikke om arbeidsplassene.
> Og folk klager over at *jeg* lever i fortiden...
Stormaskin er ikke fortid.
Jeg tror at å klage på at du lever i fortiden er helt feil; du lever
ganske enkelt ikke i vår tidslinje i det hele tatt, men i en
alternativ virkelighet. Fornøyd? :)
hm. det slår meg at "signifikant operativsystem" antagelig ikke kan
brukes som noen metrikk i denne diskusjonen ettersom ingen er enig om
hva det vil si.
-Bjørn
--
Bjørn Borud <bo...@fast.no>, <URL:http://borud.priv.no/>
> hm. det slår meg at "signifikant operativsystem" antagelig ikke kan
> brukes som noen metrikk i denne diskusjonen ettersom ingen er enig om
> hva det vil si.
Joda, _alle_ er enige om hva det vil si.
Signifikant: Det jeg mener er viktig.
>Jeg tror at å klage på at du lever i fortiden er helt feil; du lever
>ganske enkelt ikke i vår tidslinje i det hele tatt, men i en
>alternativ virkelighet. Fornøyd? :)
Jeg tror svært få mennesker vil ha innvendinger mot at de lever i en
alternativ virkelighet til Naggum & Co :)
Jarle (alternativ)
> ne...@noia.no (Ove Ruben R Olsen med feil epostadresse) wrote:
>
> >Signifikante operativsystemer i dag befinner seg på stormaskin.
>
> Og folk klager over at *jeg* lever i fortiden...
du lever i en trang, trang verden.
| > hm. det slår meg at "signifikant operativsystem" antagelig ikke kan
| > brukes som noen metrikk i denne diskusjonen ettersom ingen er enig om
| > hva det vil si.
|
| Joda, _alle_ er enige om hva det vil si.
|
| Signifikant: Det jeg mener er viktig.
He he he he. Forresten hvilket språk er disse OS-ene skrevet i?
dette hørtes alvorlig ut. har du vurdert psykiatrisk behandling?
| Noe er skrevet i asm også, det er riktig. Hmm. Tenke hardt. Lure på
| hvorfor de ikke valgte Common Lisp....
fordi poenget med programmeringssprog eller et bibliotek er at det skal
eksportere noe som det er mulig for intelligente mennesker å bruke, mens
man kan optimere det til helvete og tilbake sålenge grensesnittet mot
omverdenen er rimelig intelligent. det er bare folk som ikke har skjønt
hva som skjer her i verden som tror at det at biblioteket er skrevet i et
eller annet lavnivåsprog som assembly eller C gjør at de må bruke det
samme sproget for å skrive applikasjonen som bruker det. f eks er det en
viktig del av ethvert Common Lisp-system å kunne bruke biblioteker som er
skrevet nettopp i C fordi mennesker som har tenkt å programmere ting noe
annet enn lavnivåbiblioteker skjønner at de trenger et sprog som det er
mulig å tenke i.
dersom folk hadde skrevet lavnivåbiblioteker og slikt i C, men hadde
brukt et ordentlig programmeringssprog til applikasjoner, ville vi ha
sluppet alle problemene, og C++ ville ikke vært nødvendig å finne opp.
| Det måtte jo være en fin oppgave for deg og disiplene dine. Reis til
| månen du, så kommer du enda lenger vekk fra den verden du hater så
| intenst. For hvorfor ville du ellers fornekte den?
fornekte verden? hallo? her forsøker jeg å forklare deg at verden er
større enn du har egenhendig erfaring med, og så er det _jeg_ som
fornekter verden? herrejemini. som sagt: dette hørtes alvorlig ut.
| Jeg konkurrerer ikke om arbeidsplassene.
nei, det er jo sant. du har jo påpekt det flere ganger. takk, forøvrig.
nei, du tar veldig feil her, _igjen_. det er ganske få inkompetente
idioter, de lager bare så helvetes mye av seg, og når de kommer brautende
inn i fagdiskusjoner og slenger med leppa og det som verre er, blir det
gjerne til at de selv tror at det er slik alle er, men det er det ikke.
| Men legg merke til at jeg ikke har noen gang hevdet at Lisp er på noe som
| helst måte et dårlig programmeringsspråk, kun at det er langt mindre
| brukt enn C.
hadde du klart å si dette uten å dra til med det knall-idiotiske "i den
virkelige verden" som indikerer at du mangler forståelse av hvor stor og
mangeartet verden faktisk er, hadde det jo ikke vært det store problemet.
> Forresten hvilke områder er (Common) Lisp mye brukt?
Jeg forstår det slik at man gjerne bestyrer flyplasser,
programmerer Hubble-teleskoper, fjernstyrer roboter på Mars og lager
spill til Playstation og Nintendo med Common Lisp.
Utdrag fra http://www.franz.com :
Who Uses Allegro CL? Allegro CL is the development environment used
to create such leading edge applications as the Super Mario 64 TM game
system from Nintendo America Inc. (via the N.World development system
from Nichimen Graphics) and Crash BandicootTM from Naughty Dog
Software, the latest release for the Sony PlaystationTM
platform. You'll also find Allegro CL behind the scheduling of the
Hubble Space Telescope, the design of Boeing aircraft, and the
development of dynamic web content servers and information systems
such as Infolab's Find-Me systems. Check out our Applications section
for more on these and other examples.
Utdrag fra http://www.franz.com/apps/appsover.main.html :
SchemaText: Web Authoring Technology
NASA: Mars Pathfinder Mission Planning System
Naughty Dog Software: Crash Bandicoot Game System
Northwest Airlines: Airport Gate Scheduling System
Nichimen Graphics: Game Development Systems
ACI: Intelligent Information Retrieval and Presentation Tools
Ascent Technology: Mission-Critical Decision-Support Systems
Lite disse folka blir lange i maska når de får høre at det er mer bruk
for C da! Ring dem og si fra!
Brukergrensesnittet til det mest utbredte seismikkprosesseringssystemet
(ProMAX) er bla. skrevet i det. Riktignok ikke _Common_ Lisp, men et
derivat (Landmark Lisp). I praksis vil det si at jeg kan skrive et
tekstfil i Lisp, og laste den inn i grensesnittet og om nødvendig
erstatte ting som er der fra før som jeg vil ha endret på, eller legge
inn ny funksjonalitet.
Dessverre er det grafiske grensesnittet fullstendig råttent, men nytt
grensesnitt skal komme i løpet av et års tid.
--
Øystein Svendsen
de der dynamiske aspekter ved systemet er viktig for at det skal kunne
fungere slik folk ønsker det. noen tror at all dynamikk er AI, men "AI"
er det som til enhver tid er mest forskning og minst praksis, mens det
som _var_ "AI" blir hetende noe annet når det blir deployert i praksis.
f eks er det kjekt å ha servere som ikke må stoppes og restartes for å
forandre litt på oppførselen sin. Unix har liksom kill -HUP for å lese
en init-fil omigjen, men det er ikke alltid dette er tilstrekkelig, for
koden er gjerne uforanderlig mens systemet kjører. dette gjør det veldig
upraktisk å skrive servere i C som "mission critical systems" avhenger
av, som f eks atomkraftverk, telefonsentraler, nødhjelpsentraler, etc.
andre ting som er minst like mission critical men som finnes bare i noen
få utgaver er systemer som holder liv i romskip, sykehus, børser, etc.
men mer viktig og umiddelbart nyttig er systemer som vokser med erfaring
fra bruk. de fleste som vil lære av sine feil i programmeringsverdenen
synes det er veldig kjekt å slippe å bygge hele systemet opp igjen påny,
og f eks restarte det og slikt. (Common) Lisp har støttet inkremementell
programmering i omkring 40 år, og ble laget slik nettopp fordi det ofte
er veldig vanskelig å vite eksakt hva du skal gjøre før du har gjort
litt. i den statiske verdenen velger folk å designe alt sammen først og
så heller ta 70-80% mislykkede prosjekter, mens i den dynamiske verdenen
får folk ting til å virke og fortsetter å utvikle det mens det brukes, og
da spiller det veldig liten rolle om det som ender opp som "levert" er
det folk sa de ville ha da de bestilte det, for folk som bruker software
vil alltid lære hva de _egentlig_ ville ha gjennom bruk. Common Lisp er
mye brukt der man ikke kan forestille seg å stole på statiske systemer.
ofte skjer dette gjennom at man først stoler på statiske systemer og svir
seg skikkelig, og så velger dynamikk. mange "nth generation"-systemer er
således skrevet i Common Lisp. når man så har fått noe som er rock
solid, kan man porte det til et statisk sprog, igjen.
eller med andre ord: Common Lisp brukes mye der folk har innsett gjennom
å prøve og feile at statiske sprog er årsaken til "the software crisis".
jeg har tilbudt å sende folk CD'er og informasjon helt gratis, men så
lenge du ikke orker å sende meg en bakke-til-bakke-adresse og heller
velger å stikke fingeren i halsen og brøle "reklame", har jeg liksom
trodd at du ikke egentlig er interessert i å lære noe om dette.
>Preben Randhol <ran...@pvv.org> writes:
>
>> Forresten hvilke områder er (Common) Lisp mye brukt?
>
>Jeg forstår det slik at man gjerne bestyrer flyplasser,
>programmerer Hubble-teleskoper, fjernstyrer roboter på Mars og lager
>spill til Playstation og Nintendo med Common Lisp.
Vel - de snakker om å sende *mennesker* til mars, og i den
forberedelsene bruker de bl.a. programvare fra meg - skrevet i c++.
Ellers er det jo fint å se at Lisp faktisk brukes til noe fornuftig.
Som f.eks. videspill.
>Lite disse folka blir lange i maska når de får høre at det er mer bruk
>for C da! Ring dem og si fra!
Dette minner mer og mer om en religiøs overbevisning, enn om en
teknisk diskusjon. Et besøk på www.lisp.org svekket ikke det
inntrykket.
Jarle (som lurer på om lisp-gutta har tatt på seg oppgaven å være
dataverdenes Taliban...)
sukk. enda mer av det samme tullet. det er forskjell på å bekjempe
trangsynthet (dvs, dine uttalelser) som sådan og å stå for en _annen_
trangsynthet, som man mener bør vinne i konkurransen blant trangsynte.
dette er den samme forskjellen mellom å kunne vite med 100% sikkerhet at
en påstand en annen person kommer med er gal, uten å ha noe i nærheten av
sikkerhet om hva som er riktig. endel mennesker, av grunner jeg kunne
ønske jeg forstod, klarer ikke forholde seg til "du tar feil" uten å
beskylde den som påpeker dette for å være allvitende, ha monopol på
sannheten, eller være religiøst overbevist om noe som den som tar feil
naturligvis finner det opportunt å beskylde vedkommende for der og da,
med like mye dekning som den første gale påstanden hadde.
noen burde fortelle folk som bruker koden din at den gjør like mange gale
antagelser og lar like mange antagelser passere usjekket som du gjør her.
jeg tror forøvrig vi har etablert hva slags folk som bruker og forsvarer
C og C++ og hva slags folk som bruker og anbefaler Common Lisp, nå, og at
det er veldig lite mer som kan sies. Jarle vil aldri noensinne klare å
komme over sin trang til å styrke sine egne vrangforestillinger ved å
kaste ut den ene sinnsvake påstanden om motparten etter den andre, og
mange nok mennesker har allerede skjønt at verden er større enn C/C++ og
hva som skjer med folk som insisterer på at C/C++ er _tilstrekkelig_ til
å løse alle verdens problemer og _nødvendig_ for å løse hvert eneste et.
hvorvidt noen fremdeles synes C/C++ er et godt førstesprog eller ikke er
forsåvidt uinteressant. min hensikt var ikke noe særlig større enn å la
endel mennesker som kanskje ikke visste om en større verden få vite om
den, og så får heller de som vil leve i sin egen lille nisje og nekte å
bruke sprog som fjerner endel vesentlig kompleksitet i store problemer
bare holde på for seg.
#:Erik, som lurer på hvorfor inkompetente mennesker er så stolte av det
Jeg har drevet med applikasjoneprogramering paa forskjellige
plattformer. Sist paa Windows med Delphi. Naa vil jeg gjerne
programmere for Linux, men jeg har ennaa ikke funnet noe passende
spraak/verktöy.
Jeg vil unngaa C,C++ og java. Jeg kunne selvsagt vente paa Delphi for
Linux, men det ville väre morsomt aa foroeke noe nytt. Jeg vil
programmere for KDE og bruke relasjonsdatabaser.
Hva trenger jeg for aa komme igang med LISP, hvor faar jeg tak i det
og hvor mye koster det ?
>>>>>>>>>>>>>>>>>> Ursprüngliche Nachricht <<<<<<<<<<<<<<<<<<
Am 26.08.99, 22:57:17, schrieb Erik Naggum <er...@naggum.no> zum Thema
Re: Programmering i linux:
> nei, nå snakker du om den uvirkelige verdenen: din fantasiverden,
der
> alle slike avgjørelser er uhyre enkle og alt som er for komplisert
for C
> ikke finnes. i den delen av verden der det som er så enkelt at det
kunne
> ha vært gjort i C av nybegynnere ikke på noen måte er relevant, er
heller
> ikke C noe viktig sprog. spørsmålet er således om man vil lære seg
å bli
> et null i en enkel verden eller bli flink i noe som har noe å si, og
da
> må man ty til sprog som er utenfor "mainstream" (eller "storgata"),
som
> f eks Common Lisp, Smalltalk, Prolog, Ada, Cobol, Fortran, etc.
Forstaar jeg deg rett? COBOL er vel, eller var, temmelig mainstream.
Selvom det ble skrevet mange gode applikasjoner i COBOL (eller ennda
verre: RPG) ville jeg ikke fremholde disse spraak som noe man skulle
ty til idag. Det fantes forresten gode alternativer til COBOL: F.eks.
PL/1 som burde ha breiet seg pa COBOL´s bekostning etter min mening.
Men naa er vel alt det der historie...
Hilsen Björn
Hva med Free Pascal? Versjon 1.0 (med IDE osv.) er ikke klar ennå,
versjon 0.99.12b er siste "offisielle" release. Støtter flere plattformer,
primært DOS, Win32 og Linux. Prisen? kr 0,-!
Har ikke URL'er i hodet, men dette er (vel) til listserveren:
http://vekoll.saturnus.vein.hu/mailman/listinfo/fpc-pascal
Ellers søk etter Free Pascal på AltaVista, så finner du den!
Hilsen
Arne H.
> Vel - de snakker om å sende *mennesker* til mars, og i den
> forberedelsene bruker de bl.a. programvare fra meg - skrevet i c++.
Det høres jo spennende ut. Hvem er "de", og bruker de programvaren
din til å snakke om det, eller hacker du på metallet i ett eller annet
romskip hos NASA?
> Ellers er det jo fint å se at Lisp faktisk brukes til noe fornuftig.
> Som f.eks. videspill.
Er ikke det veldig fornuftig da? Og hva er galt med deg som ikke kan
tolke dette som en indikasjon på spennvidde snarere enn at CL ikke
brukes til noe "fornuftig"? Hvor stor ER verden din, egentlig?
Microsoft Office?
> >Lite disse folka blir lange i maska når de får høre at det er mer bruk
> >for C da! Ring dem og si fra!
>
> Dette minner mer og mer om en religiøs overbevisning, enn om en
> teknisk diskusjon.
Dette var faktisk litt kult. Jeg henviser til faktiske forhold, og
inn kommer du og kaller meg religiøs fordi jeg slenger på en liten
sarkasme på slutten. Kan det være at det er du, Jarle, som bidrar med
den religiøse overbevisningen som plutselig kommer inn i denne
diskusjonen?
Du har en stund vært et morsomt innslag her, men nå virker det mer og
mer som om du utvikler deg til en, en *host* ... Jarle.
KDE står med føttene rimelig godt plantet i Qt/C++ og er derfor ikke helt
lett å bruke andre språk mot. Gnome er basert på Gtk+/C og er derfor
en del greiere å programmere imot da de fleste språk har noenlunde
ok muligheter til å benytte C API. Vet ihvertfall om to GTK+ grensesnitt
fra Lisp, men de må trolig fikses litt.
Ad relasjonsdatabaser så har de fleste
av dem et C API en kan kople seg mot eller et bibliotek hvor en har gjort
dette. For Lisp som du nevner under har de fleste proprietære systemene
sine egne ODBC/SQL grensesnitt, men du kan også benytte SQL/ODBC biblioteket
som Paul Meurer har skrevet. Tror URLen er ftp://amirani.hit.uib.no/
og biblioteket fungerer fint for meg med ACL mot SOLID og mot MySQL.
Av andre språk/system for Linux som som er visuelle og trolig overgår Delphi,
finner du Objectshare sitt Smalltalk/VisualWorks system for Linux.
http://www.objectshare.com/
>Hva trenger jeg for aa komme igang med LISP, hvor faar jeg tak i det
>og hvor mye koster det ?
Jeg er rimelig fornøyd med ACL som du enten kan hente på www.franz.com
eller #:Erik kan sende en CD til deg går jeg utifra. I tillegg har en
Harlequin LispWorks som har et mer grafisk/visuelt grensesnitt som
du kan hente på www.harlequin.com. Begge de to nevnte er proprietære
system som finnes i gratis/strippede utgaver og for priser for
mer omfattende system bør du kontakte forhandlerne (de har mange
løsninger). Av frie Lisp systemer bør CLISP, CMUCL og PopLog nevnes.
------------------------------------------------------------------
Stig Erik Sandoe Institute of Informatics, University of Bergen
st...@ii.uib.no http://www.ii.uib.no/~stig/
for å komme igang trenger du ihvertfall en god lærebøker. jeg vil
anbefale Paul Graham: ANSI Common Lisp, ISBN 0-13-370875-6. problemet
med den litteraturen som finnes er at den ikke snakker om hvordan man
faktisk bruker eksisterende systemer, og dokumentasjonen til de frie
systemene er tildels fullstendig fraværende mens dokumentasjonen til de
kommersielle er så omfattende at det er vanskelig å finne ut hvor man
skal begynne. jeg pleier faktisk å anbefale folk å finne noen andre som
bruker et miljø og bli kjent med miljøene gjennom å snakke med andre.
dette kan og bør no.it.programmering.lisp brukes til, i mine øyne.
å komme igang på Linux koster ingenting. Franz Inc sender ut CD'er
gratis (og jeg sender ut for dem i Skandinavia, men en slenger til
Tyskland går nok bra) til alle som spør, og alt vi gjør med navnet er å
notere at vedkommende har fått CD'er i tilfelle de spør om noe senere.
man kan også hente tingene fra ftp.franz.com i /pub/acl501trial hvis man
bare vil ha bit'ene på Linux-CD'ene; jeg sender ut endel mer materiell.
Windows-tingene finner man forøvrig i /pub/acl501lite.
andre alternativer finnes. under Linux og FreeBSD finner man f eks CLISP
og CMUCL. jeg har prøvd alt som finnes av Common Lisp-miljøer og har
valgt å fokusere på Franz Inc's Allegro CL av grunner som kanskje ikke
alle andre vil dele uten videre, så man bør undersøke litt rundt hva som
passer best. et veldig godt start-punkt er WWW.LISP.ORG.
mange som ønsker å begynne med Lisp synes det vil virke morsomst å lage
sin egen Lisp, og dette rammer særlig de som synes Scheme er morsomst.
jeg kan ikke tenke meg noe mer tidsødende enn dette, og vil på det
sterkeste anbefale folk å la være å bry seg om lavnivåtingene til de har
lært sproget og sett hva de slipper å tenke på.
#:Erik
> mange som ønsker å begynne med Lisp synes det vil virke morsomst å lage
> sin egen Lisp, og dette rammer særlig de som synes Scheme er morsomst.
:) Er ikke dette noe som rammer Lisp'ere hardt nettopp fordi det er
såpass enkelt å lage en ny (om ikke nødvendigvis original eller god)
Lisp? Og hvis en legger til noen nye språkkonstruksjoner til Lisp så
vil det vel fortsette å være Lisp? ;)
Om ikke noen ny Lisp, så har jeg ihvertfall funnet Common Lisp svært
godt egnet til å lage et tilpasset domenespråk, som strengt tatt ikke
er mer enn nye makroer og metaklasser (samt en back-end som forsøker å
lage effektiv kode), og sparer meg for uker og måneder med knoting i
yacc/lex hvis jeg skulle laget tilsvarende språk og bibliotek der.
Jeg tror at det er en viktig egenskap ved Lisp at det er enkelt å
lage sin egen Lisp eller nye tilpassede språk, noe som faktisk bør
appellere til de fleste som tar problemløsing alvorlig.
| Hallo,
|
| Jeg har drevet med applikasjoneprogramering paa forskjellige=20
| plattformer. Sist paa Windows med Delphi. Naa vil jeg gjerne=20
| programmere for Linux, men jeg har ennaa ikke funnet noe passende=20
| spraak/verkt=F6y.
|
| Jeg vil unngaa C,C++ og java. Jeg kunne selvsagt vente paa Delphi for=20
| Linux, men det ville v=E4re morsomt aa foroeke noe nytt. Jeg vil=20
| programmere for KDE og bruke relasjonsdatabaser.
|
| Hva trenger jeg for aa komme igang med LISP, hvor faar jeg tak i det=20
| og hvor mye koster det ?
Det første jeg ville sjekket var om KDE har Lisp bindinger. Jeg vil
tro at dersom du velger en database så har den Lisp bindinger, men jeg
vet ikke om KDE som er skrevet i C++ har så mange andre
bindinger. Sjekk siden deres: http://www.kde.org.
Siden du har erfaring med Delphi (nå kommer vel det vel en versjon for
Linux dersom Borland holder ord), så vil jeg bare nevne at gtk
(http://www.gtk.org) har binding for Free Pascal. Det er ikke sikkert
det er hva du trenger da det er mindre sannsynlig at databaser har
bindinger mot Pascal, men du kan jo alltids velge Ada95 i steden for.
...og vet du, det er veldig vanskelig å få øye på hvem som er den
største fanatikeren i diskusjonen.
| ok muligheter til å benytte C API. Vet ihvertfall om to GTK+ grensesnitt
| fra Lisp, men de må trolig fikses litt.
Har de laget en LISP wrapper for GTK? Jeg kan ikke se den nevnt på
hjemmesiden, eller kan lisp bruke andre språk også?
joda, visst er det forholdsvis enkelt å lage basis-systemet, men det er
sjelden dét som er morsomt å bruke, men å lage en Lisp i en Lisp er så
trivielt at ingen gidder. det finnes betydelig bedre måter å få
forståelse i hvordan man gjør lavnivåting enn å gjøre alle feilene fra
start til slutt selv.
| Om ikke noen ny Lisp, så har jeg ihvertfall funnet Common Lisp svært
| godt egnet til å lage et tilpasset domenespråk, som strengt tatt ikke
| er mer enn nye makroer og metaklasser (samt en back-end som forsøker å
| lage effektiv kode), og sparer meg for uker og måneder med knoting i
| yacc/lex hvis jeg skulle laget tilsvarende språk og bibliotek der.
mm. big win!
| Jeg tror at det er en viktig egenskap ved Lisp at det er enkelt å lage
| sin egen Lisp eller nye tilpassede språk, noe som faktisk bør appellere
| til de fleste som tar problemløsing alvorlig.
jeg oppdaget at jeg gjerne skrev mine egne små sprog i C og slikt før jeg
begynte å bruke Common Lisp seriøst. jeg produserte det meste av C++-
koden i et prosjekt fra et lite Common Lisp-system jeg skrev under CMUCL
fordi jeg fikk helt hetta av all redundansen og alle de toskete måtene
man måtte gjøre ting på for at komplikatoren skulle bli fornøyd. her
ligger i kortene at det ikke er gitt at macroer produserer Common Lisp.
[slettet bra info om lisp]
| jeg har tilbudt å sende folk CD'er og informasjon helt gratis, men så
| lenge du ikke orker å sende meg en bakke-til-bakke-adresse og heller
| velger å stikke fingeren i halsen og brøle "reklame", har jeg liksom
| trodd at du ikke egentlig er interessert i å lære noe om dette.
Alltid farlig å anta :-)
Jeg ønsker alltid å lære :-). Derfor syns jeg det er mer matnyttig med
informasjon slik den om lisp ovenfor, enn disse evinnelige kranglene
om at dette språket er så dårlig fordi det ikke har ditt eller datt etc. De
fleste språk gjør ting på forskjellig måte og noen foretrekker den
ene, mens andre foretrekker den andre. Hvorvidt et er bedre enn et
annet har mange ganger også noe å gjøre med hvilken sammenheng en
bruker det i. Jeg antar at også Lisp har svakheter?
Angående tilbud om CD, så tror jeg jeg venter litt. Jeg har dessverre
ikke tid for øyeblikket til å sette meg mer inn i et nytt språk, men
jeg skal heller ta kontakt på et senere tidspunkt.
| Vet ikke hvem 'de' er.. men:
|
| Som nevnt tidligere på no.it.programmering.lisp finnes der CMUCL
| bindinger for GTK+ 1.2 på ftp://ftp.sol.no/users/e/espejohn
Ah, er ikke på den lista. Men jeg anbefaler at du tar kontakt med gtk
folka slik at man kan få lagt til lisp bindingene også. Sikkert flere
som er interessert i å bruke dem.
|
| I tillegg har Gilbert Baumann laget bindinger for GTK+ og CLISP, ACL
| og CMUCL er nevnt i Makefile'n.
| URL: http://wwwrzstud.rz.uni-karlsruhe.de/~unk6/
| Jeg er litt usikker på hva du mener med "kan lisp bruke andre språk
| også". Kan du være mer presis?
Jfr. Naggum's svar. :-)
Vet ikke hvem 'de' er.. men:
Som nevnt tidligere på no.it.programmering.lisp finnes der CMUCL
bindinger for GTK+ 1.2 på ftp://ftp.sol.no/users/e/espejohn
I tillegg har Gilbert Baumann laget bindinger for GTK+ og CLISP, ACL
og CMUCL er nevnt i Makefile'n.
URL: http://wwwrzstud.rz.uni-karlsruhe.de/~unk6/
> Jeg kan ikke se den nevnt på
>hjemmesiden, eller kan lisp bruke andre språk også?
Jeg er litt usikker på hva du mener med "kan lisp bruke andre språk
også". Kan du være mer presis?
--
(Common) Lisp må opplagt leve med at folk har gjort mye rart i andre
sprog som man kan ønske å bruke. vi kaller det naturligvis "Foreign
Function Interface" -- FFI. siden de aller fleste sprog kan snakke med
C, er det stort sett C som brukes som basis. C++-støtten er imidlertid
god i f eks Franz Inc's Allegro CL. problemet ligger gjerne i å slippe å
skrive samme deklarasjoner i to forskjellige sprog, og dette har man også
forsøkt å løse gjennom å be ymse kompilatorer produsere output som en
Common Lisp kan bruke. dessverre er dette en formidabel jobb, og f eks
Franz Inc har bare gjort dette arbeidet med én versjon av gcc. ta en
titt på ftp.franz.com i /pub/cbind.
spesifikt: ja, der er laget CL-bindinger til GTk, selv om jeg ikke noe
særlig konkret om dem.
> Siden du har erfaring med Delphi (nå kommer vel det vel en versjon for
> Linux dersom Borland holder ord), så vil jeg bare nevne at gtk
> (http://www.gtk.org) har binding for Free Pascal. Det er ikke sikkert
> det er hva du trenger da det er mindre sannsynlig at databaser har
> bindinger mot Pascal, men du kan jo alltids velge Ada95 i steden
> for.
En annen mulighet er python, som har bindinger for gtk, Qt(?), Tk,
GNOME, wxWindows mm. Sproget er ganske søtt også...
> >| ok muligheter til å benytte C API. Vet ihvertfall om to GTK+ grensesnitt
> >| fra Lisp, men de må trolig fikses litt.
> >
> >Har de laget en LISP wrapper for GTK?
>
> Vet ikke hvem 'de' er.. men:
Den ene av 'de' er nok meg
> Som nevnt tidligere på no.it.programmering.lisp finnes der CMUCL
> bindinger for GTK+ 1.2 på ftp://ftp.sol.no/users/e/espejohn
Tidligere i dag ble jeg også ferdig med en port til CLISP, og i tilleg
har jeg foretatt en del opprydding i koden de siste dagene. Er forstatt
ikke fornøyd med makefilene, men jeg er lovet noen patcher som bl.a.
benytter autoconf for å gjøre kompilering på ulike system lettere.
--
Espen
>jg...@jgaa.com (Jarle Aase) writes:
>
>> Vel - de snakker om å sende *mennesker* til mars, og i den
>> forberedelsene bruker de bl.a. programvare fra meg - skrevet i c++.
>
>Det høres jo spennende ut. Hvem er "de",
Den avdelingen i NASA som arbeider med motoren (eller muligens en av
avdelingene som arbeider med en av flere alternative motorer).
>> Ellers er det jo fint å se at Lisp faktisk brukes til noe fornuftig.
>> Som f.eks. videspill.
>
>Er ikke det veldig fornuftig da? Og hva er galt med deg som ikke kan
>tolke dette som en indikasjon på spennvidde snarere enn at CL ikke
>brukes til noe "fornuftig"?
Vel jeg ville neppe satt meg ned og laget noe mer avansert spill enn
"mud" i c eller c++ - og selv "mud" kunne nok med fordel lages i mer
egnede språk.
Men, i det jeg ikke er noe videre betatt av spill, så scorer ikke
spill aller høyest i min personlige rangering av dataprogrammer og
databruk. Men dette er naturligvis veldig subjetivt. Sett fra folk
som ikke driver med data er det nok like idiotisk å bruke en helg til
å løse et hypotetik problem i c++ som å skyte ned 1000 flygene fisker
fra galaksen Y.
>> Dette minner mer og mer om en religiøs overbevisning, enn om en
>> teknisk diskusjon.
>
>Dette var faktisk litt kult. Jeg henviser til faktiske forhold, og
>inn kommer du og kaller meg religiøs fordi jeg slenger på en liten
>sarkasme på slutten.
Det var ikke kun ditt innlegg som gav meg dette inntrykket - men den
massive og samstemte "kritikken" man kom mot - mot et system som
uansett om du/dere "aksepterer" det eller ikke - er ganske dominerende
i dataverdenen i dag, og kommer til å være det en stund. Det betyr
selvfølgelig ikke at man trenger å *like* det.
>Kan det være at det er du, Jarle, som bidrar med
>den religiøse overbevisningen som plutselig kommer inn i denne
>diskusjonen?
Kan overnevnte tolkes som at jeg traff et ømt punkt?
Jarle
Og Allegro? :-)
Det hadde jo vært flott.
>[jg...@jgaa.com (Jarle Aase)]
>|
>| Dette minner mer og mer om en religiøs overbevisning, enn om en
>| teknisk diskusjon.
>
>...og vet du, det er veldig vanskelig å få øye på hvem som er den
>største fanatikeren i diskusjonen.
:)
Det hender jeg føler meg som rollefiguren til Micael Douglas i
"Falling Down", når han helt på slutten av filmen spør politimannen;
"am *I* the bad guy now...?"
> Det hender jeg føler meg som rollefiguren til Micael Douglas i
> "Falling Down", når han helt på slutten av filmen spør politimannen;
> "am *I* the bad guy now...?"
At du identifiserer deg med denne rollefiguren tror jeg må være denne
dagens største ikke-nyhet.
--
(domestic pets only, the antidote for overdose, milk.)
la...@gnus.org * Lars Magne Ingebrigtsen
Tine Meierier er også ganske dominerende i melkebransjen i Norge. er
dette et argument for å drikke melken deres? er det et argument for å
drikke konkurrentens melk? trenger man overhodet å drikke melk i voksen
alder? (svaret på det siste er «nei».)
jeg forstår ikke helt behovet for å markere at man er _med_ "lederen",
liksom. det vitner så sterkt om at en selv bare er en svak refleksjon av
kult-lederen sin og at man har mistet evnen eller viljen eller motet til
å ta egne avgjørelser. med andre ord: der er en hel del argumenter som i
bunn og grunn koker ned til "fordi det er flest av dem", men en ser aldri
disse argumentene fra folk som velger noe nettopp av den grunn -- en må
liksom ha etslags semi-fornuftig argument for sitt eget ståsted, eller
forestille seg at de som ikke har samme ståsted er helt ufornuftige.
uansett, Jarle, du har vist oss hvordan det går med folk som tror på den
enkle manns propaganda.
for ordens skyld: der finnes gode grunner til å velge C til noen oppgaver
-- men ikke de oppgavene folk tror, og ikke av de grunnene Jarle tror på.
det finnes imidlertid ingen grunn til å velge C++ til _noen_ oppgaver,
men det hender det er nødvendig å bruke C++ for å snakke med verktøy som
har det man må bruke hvis man først har valgt feil vei her i livet.
| Kan overnevnte tolkes som at jeg traff et ømt punkt?
neida, du er bare veldig høylydt og usigelig dum på én gang.
>* Jarle Aase
>| Det var ikke kun ditt innlegg som gav meg dette inntrykket - men den
>| massive og samstemte "kritikken" man kom mot - mot et system som uansett
>| om du/dere "aksepterer" det eller ikke - er ganske dominerende i
>| dataverdenen i dag, og kommer til å være det en stund.
>
> Tine Meierier er også ganske dominerende i melkebransjen i Norge. er
> dette et argument for å drikke melken deres? er det et argument for å
> drikke konkurrentens melk? trenger man overhodet å drikke melk i voksen
> alder? (svaret på det siste er «nei».)
Dersom du er kokk, og det er en relevant sammenligning i denne
deiskusjonen, - så bør du vite litt om melk. Du trenger ikke å *bruke*
melk i maten din, men en kokk som aldri har smakt melk er kanskje ikke
automatisk verdens beste kokk?
Du er datamann, og du kjenner c, og vet hvor du vil bruke c, og hvor
du ikke vil bruke c. Det er fint. Det er ingen (i alle fall ikke jeg)
som kritiserer deg for det. Det kritikken gikk på var at du anbefalte
nye datafolk å holde seg borte fra c. Det er omtrent som å be
kokkelærlinger ikke smake på, eller bruke, melk.
> uansett, Jarle, du har vist oss hvordan det går med folk som tror på den
> enkle manns propaganda.
Uff da! Tenk at NT og Windows95 og Unix og Linux og PC industrien og
alt dette andre som jeg setter så stor (eller liten) pris på bare
finnes i mitt eget hode, som et resultat av den en(/k)le mann(en)s
propaganda...
Du rører Erik.
>| Kan overnevnte tolkes som at jeg traff et ømt punkt?
>
> neida, du er bare veldig høylydt og usigelig dum på én gang.
Tenk at vi to har så mye felles da! Si meg Erik, flørter du med meg?
> Den avdelingen i NASA som arbeider med motoren (eller muligens en av
> avdelingene som arbeider med en av flere alternative motorer).
Akkerratt.
> Men, i det jeg ikke er noe videre betatt av spill, så scorer ikke
> spill aller høyest i min personlige rangering av dataprogrammer og
> databruk. Men dette er naturligvis veldig subjetivt. Sett fra folk
> som ikke driver med data er det nok like idiotisk å bruke en helg til
> å løse et hypotetik problem i c++ som å skyte ned 1000 flygene fisker
> fra galaksen Y.
For ordens skyld, Jarle, man bruker ikke CL til å _spille_ spill :)
> Det var ikke kun ditt innlegg som gav meg dette inntrykket - men den
> massive og samstemte "kritikken" man kom mot - mot et system som
> uansett om du/dere "aksepterer" det eller ikke - er ganske dominerende
> i dataverdenen i dag, og kommer til å være det en stund. Det betyr
> selvfølgelig ikke at man trenger å *like* det.
Men siden det er så dominerende, er det "religiøst" å kritisere det?
> >Kan det være at det er du, Jarle, som bidrar med
> >den religiøse overbevisningen som plutselig kommer inn i denne
> >diskusjonen?
>
> Kan overnevnte tolkes som at jeg traff et ømt punkt?
Nei, jeg tolker alt dette som at du er tom for argumenter OG vet det
selv.
> Preben Randhol <ran...@pvv.org> writes:
>
> > Forresten hvilke områder er (Common) Lisp mye brukt?
>
> Jeg forstår det slik at man gjerne bestyrer flyplasser,
> programmerer Hubble-teleskoper, fjernstyrer roboter på Mars og lager
> spill til Playstation og Nintendo med Common Lisp.
>
> Utdrag fra http://www.franz.com :
sjekk også kundeoversikten til Digitool, som leverer
Macintosh Common Lisp:
http://www.digitool.com/customers.html
Av de CL-applikasjonene som har fått mest presse i det siste, kan
også nevnes 'The Yahoo Store' og planner-programvaren på romskipet
'Deep Space 1'.
--
(espen)
du klarte ikke å ta den analogien, nei. herregud.
| Uff da! Tenk at NT og Windows95 og Unix og Linux og PC industrien og alt
| dette andre som jeg setter så stor (eller liten) pris på bare finnes i
| mitt eget hode, som et resultat av den en(/k)le mann(en)s propaganda...
for NT gang! kritikken går ikke på at dette finnes eller er "populært",
men at _bare_ det finnes i hodet ditt. i hodet ditt er det nemlig ikke
noe _annet_ som gjør at man ikke bør begynne med det mest "populære" bare
fordi det er mest populært eller "dominerende". hele denne saken dreier
som om hvor mye _utover_ Intel-verdenen som eksisterer, og også hvor mye
bedre alt dette andre er enn Intel-verdenen, hvis du orker å lytte litt.
men du klarer jo ikke engang å fatte hva kritikken av det du sier går ut
på! herregud.
| flørter du med meg?
you wish.
| Du er datamann, og du kjenner c, og vet hvor du vil bruke c, og hvor
| du ikke vil bruke c. Det er fint. Det er ingen (i alle fall ikke
| jeg) som kritiserer deg for det. Det kritikken gikk på var at du
| anbefalte nye datafolk å holde seg borte fra c. Det er omtrent som å
| be kokkelærlinger ikke smake på, eller bruke, melk.
Når du ikke har andre argumenter for å bruke C, enn at en bør
prøvesmake melk, så bør du kanskje revurdere din oppfatning av
programmeringsspråk for nybegynnere.
Jeg har en arbeidskollega som er utdannet sivilingeniør i England. Hun
har lært og programmere C++. Jeg dro et par runder om hva slags
forkjeller det var mellom Java og C++. Det er vesensforskjeller i bruk
av interface (grensesnitt) og mulitippel arv osv. Da falt hun
av... Java hadde jo søppeltømming og utvidet typesjekking om en
sammenlikner med C++ (og en slipper å lage disse hersens
header-filene) osv. Hun er flink, men forskjellen mellom
programmeringspråk hadde dem ikke som fokus i England. For å kunne si
noe om C er bra for nybegynnere eller ikke må en kjenne litt til
forskjellene mellom språk. Vet en forskjellen mellom Java og C eller
C++ så kjenner en til noen egenskaper ved språkene som kan brukes i
vurderingen om det er "lett" å lære eller ikke.
Det er nærmest uansvarlig å introdusere C for en nybegynner i
programmering. I all sin enkelt skyldes det de feilmeldingene du får
når du skal kompilere ett program, bruk av headerfiler, og
typesjekkingen. Som nybegynner har en bruk for gode feilmeldinger og
et _sikkerhetsnett_. Sikkerhetsnettet "forhindrer" nybegynneren å lære
dumme uvaner som gjør kildekoden uleselig eller usikker. I tillegg er
det laget et hav av C-biblioteker og annet stasj som er bra til en
rekke formål, men skaper hodebry og forvirring om en skal _lære_
grunnleggende programmering.
C er som å kjøre Ferrari uten bremser, og i tillegg må du bruke en
rekke spaker og knapper for å justere turbotrykket,
vindusspylertrykket, lysstryke, tenningsspenningen, ladespenningen
osv. Og du må dobbelklutsje. Nybeggynnere har nok med å starte, styre,
gire og bremse. Det andre kommer ettervert. Hvis du ikke forstår
analogien Jarle, så hjelper det ikke å prøvesmake melk.
--
fra Knut Yrvin
if (nt == unstable) { switchTo.linux() }
>For ordens skyld, Jarle, man bruker ikke CL til å _spille_ spill :)
Vel, dersom jeg skulle giddet å spille spill, så kunne dette vært en
fin måte å gjøre det på :) I alle fall om jeg kunne skrevet noe som
spite quake og lignende bedre enn gjennomsnittet. (Det kunne faktisk
vært ganske morsomt!)
>> Det var ikke kun ditt innlegg som gav meg dette inntrykket - men den
>> massive og samstemte "kritikken" man kom mot - mot et system som
>> uansett om du/dere "aksepterer" det eller ikke - er ganske dominerende
>> i dataverdenen i dag, og kommer til å være det en stund. Det betyr
>> selvfølgelig ikke at man trenger å *like* det.
>
>Men siden det er så dominerende, er det "religiøst" å kritisere det?
Nei. Det som gjør det "religiøst" er intensiteten i kritikken, og den
harnakkede fornektelsen av det bestående. Jeg kritiserer "mainstream"
industrien hver eneste dag jeg - men jeg får da gjort annet også ;)
>* Jarle Aase
>
>| Du er datamann, og du kjenner c, og vet hvor du vil bruke c, og hvor
>| du ikke vil bruke c. Det er fint. Det er ingen (i alle fall ikke
>| jeg) som kritiserer deg for det. Det kritikken gikk på var at du
>| anbefalte nye datafolk å holde seg borte fra c. Det er omtrent som å
>| be kokkelærlinger ikke smake på, eller bruke, melk.
>
>Når du ikke har andre argumenter for å bruke C, enn at en bør
>prøvesmake melk, så bør du kanskje revurdere din oppfatning av
>programmeringsspråk for nybegynnere.
For en kokk kan det være nyttig å ha kjennskap om melk. Dersom du
hadde tatt deg bryderiet med å lese mer enn ett innlegg i denne
tråden, så hadde du også fått med deg at det var naggum som kom
trekkende med melk, og ikke jeg.
>Det er nærmest uansvarlig å introdusere C for en nybegynner i
>programmering. I all sin enkelt skyldes det de feilmeldingene du får
>når du skal kompilere ett program, bruk av headerfiler, og
>typesjekkingen. Som nybegynner har en bruk for gode feilmeldinger og
>et _sikkerhetsnett_. Sikkerhetsnettet "forhindrer" nybegynneren å lære
>dumme uvaner som gjør kildekoden uleselig eller usikker. I tillegg er
>det laget et hav av C-biblioteker og annet stasj som er bra til en
>rekke formål, men skaper hodebry og forvirring om en skal _lære_
>grunnleggende programmering.
Jeg synes det er naturlig å begynne med det grunnleggende, og så bygge
på. Vi skal huske at programmering ikke er noe alle har evner for - og
det er slett ikke sikkert at det er noe stort tap for verden som de
som detter av lasset ved c-terskelen ikke får prøvd f.eks. CL. En
uintelligent programmerer vil kanskje gjøre mindre skade med CL enn
med c, men en dårlig programmerer er fortsatt en dårlig programmerer.
Jeg noterer meg imidlertid at det er en del som er uenig med meg, og
har ikke noe problem med det. Men akkurat som de må få si hva de
mener, så sier jeg hva jeg mener. Verre er det ikke.
neineinei. dette er jo helt utrolig. det er du som fornekter alt det
_andre_ som er minst like bestående som det du mener er "dominerende".
det er det såre faktum at du forsøker å late som om det dominerende er
det _eneste_ bestående som kritiseres på det sterkeste, ikke at det er
bestående. klarer du ikke engang å fatte hva argumentene mot deg er?
> [...] Og nesten ALLE profesjonelle programmerere i
> alle bransjer jobber i c eller c++ (når man ser bort fra Visual Basic
> "konsulentene").
De eneste virkelig flinke jeg kjenner som hovedsaklig jobber i C/C++
er dem som jobber i Troll Tech. Jeg kjenner mange folk, og nesten alle
jobber i dag (såvidt jeg vet) hovedsaklig med andre ting enn C/C++
(selv om alle har vært innom det en eller annen gang).
> Cobol var et nyttig og spesialisert verktøy for administrativ
> databehandling (jeg har faktisk brukt cobol også i min ungdom), men
> kun en fotnote i datahistorien.
Jarle: Du får jommen sagt det ,)
--
(Rmz)
Bj\o rn Remseth !Institutt for Informatikk !Net: r...@ifi.uio.no
Phone:+47 91341332!Universitetet i Oslo, Norway !ICBM: N595625E104337
ok. dokumentasjon?
> Cobol var et nyttig og spesialisert verktøy for administrativ
> databehandling (jeg har faktisk brukt cobol også i min ungdom), men
> kun en fotnote i datahistorien.
HAHAHAHAHAHA!
--
Gunnar --
de vakreste ord på jord: saldo i Deres favør
>* Jarle Aase
>| Nei. Det som gjør det "religiøst" er intensiteten i kritikken, og den
>| harnakkede fornektelsen av det bestående.
>
> neineinei. dette er jo helt utrolig. det er du som fornekter alt det
> _andre_ som er minst like bestående som det du mener er "dominerende".
Du rører.
> det er det såre faktum at du forsøker å late som om det dominerende er
> det _eneste_ bestående som kritiseres på det sterkeste, ikke at det er
> bestående. klarer du ikke engang å fatte hva argumentene mot deg er?
Jeg forstår hva du prøver å si, - men jeg ser ikke relevansen i det.
Du hadde litt fotfeste tidligere i tråden, men nå er du hinsides
fornuft. Jeg forsøker da vel for svingende ikke å late som noe som
helst!
Dersom du mener å ha noe relevant å si - så si det. I motsatt fall
regner jeg denne diskusjonen for avsluttet.
*oooops*
--
Gunnar
duverden for selvinnsikt, men takk for at vi slipper å korrigere deg mer.
| Jeg synes det er naturlig å begynne med det grunnleggende, og så bygge
| på. Vi skal huske at programmering ikke er noe alle har evner for - og
| det er slett ikke sikkert at det er noe stort tap for verden som de
| som detter av lasset ved c-terskelen ikke får prøvd f.eks. CL.
Dette bærer preg av å være så generelle synspunkter at det gjelder all
programmering og griper derfor ikke inn i debatten: om C egner seg som
begynnerspråk.
| En uintelligent programmerer vil kanskje gjøre mindre skade med CL
| enn med c, men en dårlig programmerer er fortsatt en dårlig
| programmerer.
Det er ikke snakk om intelligens, det er ikke snakk om å gjøre
skade. Det er snakk om å sikre seg trygghet for læring fordi en da
lærer raskere og bedre. Det er ikke lurt å velge et
programmeringsspråk som inviterer til mye, men i samme omgang har svak
typesjekking, og en rekke maskinnære tilpasninger. I tillegg unngås
velkjente sikkerhetsmekanismer. Ved bruk av et slikt
programmeringsspråk er det lett å lære dårlige programmeringsvaner. Da
har en gjort seg selv en bjørnetjeneste, og det er dumt om en vet
bedre.
| Jeg noterer meg imidlertid at det er en del som er uenig med meg, og
| har ikke noe problem med det. Men akkurat som de må få si hva de
| mener, så sier jeg hva jeg mener. Verre er det ikke.
Vi etterlyser en begrunnelse for dine meninger Jarle. Det er greit at
du har personlige synspunkter på at folk ikke bør prøve seg på CL om
de faller av lasset fordi dem ikke når C-terskelen (det er det du
skriver). Jeg mener at du undervurdere folks evne til å lære, og
overvurdere C-s egnethet for læring. Men til forskjell fra deg så kan
vi redevise til faktiske forhold i programmeringsspråket som
illustrerer hvorfor en gjør et veivalg i en annen retning. Vi mener å
ha en litt annen og høyere kvalitet over vårt valg enn at en nærmest i
blinde anbefale en læringsvei som blir dobbelt så lang for
nybegynnere.
Ingen ting var så bortkastet på ingeniørhøgskolen som å lære C, for så
å oppdage at det nærmest var utkonkurrert av en rekke
programmeringsspråk flere år før C ble unnfanget.
| <<< no need to argue - just kill'em all! >>>
Jeg syntes siggen din sier det meste...
* Jarle Aase
|
| Jeg synes det er naturlig å begynne med det grunnleggende, og så
| bygge på.
Det er det nok enighet om. Spørsmålet er hva det grunnleggende faktisk
er for noe, om det er maskinens interne virkemåte eller tankegangen i
programmering og design. Jeg vil påstå at det er det siste man bør ta
først, og da er C og C++ særdeles dårlige valg.
Jeg har hjulpet folk som lærer programmering med C++ som førstespråk
og det er helt opplagt at C/C++-syntaksen skaper masse forvirring og
bidrar til at man egentlig ikke får lært seg så mye i løpet av det
halve året som et slikt kurs typisk varer. En annen ting er at man
sjelden får fornuftige feilmeldinger når noe går galt under kjøring og
at man er nødt til å hele tiden tenke veldig lav-nivå.
Da er det etter min mening langt bedre å starte med f.eks Lisp eller
Python og heller lære grunnleggende konsepter i programmering og
design. Scheme-boken over alle Scheme-bøker (SICP) gjør nettopp dette,
og starter med konsepter som abstraksjonsbarrierer, problemene med
tilordning og side-effekter osv. Etter min mening er dette veldig mye
mer matnyttig stoff enn minnehåndtering og tilsvarende som man heller
kan ta senere om man har bruk for det.
En annen ting er at med skikkelig ballast av denne typen er det mye
lettere å lære seg andre programmeringsspråk etterpå, fordi man har
lært de viktigste konseptene som alltid er felles.
| Vi skal huske at programmering ikke er noe alle har evner for - og
| det er slett ikke sikkert at det er noe stort tap for verden som de
| som detter av lasset ved c-terskelen ikke får prøvd f.eks. CL.
Tjah. Det er jeg slett ikke sikker på at jeg er enig i. Etter min
mening burde man lære enkel scripting på barneskolen, og flest mulig
mennesker burde ha et visst innsyn i datateknologi utover det å være
passive brukere.
Det er ikke så lett å være en opplyst borger i et moderne samfunn og
være med på å ta fornuftige politiske avgjørelser uten å ha noe som
helst kunnskap om informasjonsteknologi, og det kommer ikke til å bli
noe lettere i framtiden.
Personlig kommer jeg til å følge et prosjekt CNRI i USA har satt igang
for å se om ikke programmering er noe alle kan ha fordel av å lære.
(Sorry, har ikke tid til å lete fram URL-en nå. DejaNews vil ikke
snakke med meg.)
--Lars M.
| Jeg synes det er naturlig å begynne med det grunnleggende, og så bygge
| på. Vi skal huske at programmering ikke er noe alle har evner for - og
| det er slett ikke sikkert at det er noe stort tap for verden som de
| som detter av lasset ved c-terskelen ikke får prøvd f.eks. CL.
så det å bli en god programmerer er en evne som er innebygget i folk og
fullstendig uavhengig av hva de lærer og hvordan? du store, du får
nesten ringe pedagogisk institutt og fortelle dem at det de driver med
er dødfødt - enten kan folk lære, eller å kan de det ikke.
--
Rolf Lindgren http://www.uio.no/~roffe/
ro...@tag.uio.no
selv om det du påpeker at Jarle øyensynlig tror er feil, er det grunn til
å tro at folks forskjellige tenkemåter gjør dem bedre i noen sprog og
dårligere i andre, og noen klarer uansett ikke å holde konsentrasjonen på
det nivået som programmering krever over lengre tid.
forøvrig en ganske interessant observasjon fra pedagogene: jenter lærer
seg å beherske og utnytte abstrakte og dynamiske sprog bedre enn gutter,
og gutter velger "macho-sprog" som krever overdreven evne til å håndtere
unyttige detaljer, mens de går glipp av de store linjene. dvs, jenter
gjør det bedre i Java, Scheme og Lisp enn gutter, mens gutter blir mye
flinkere til å utnytte Perl, C++ og C.
"jenter" og "gutter" må her taes med de sedvanlige statistiske saltklyper.
>jg...@jgaa.com (Jarle Aase) writes:
>
>> [...] Og nesten ALLE profesjonelle programmerere i
>> alle bransjer jobber i c eller c++ (når man ser bort fra Visual Basic
>> "konsulentene").
>
>De eneste virkelig flinke jeg kjenner som hovedsaklig jobber i C/C++
>er dem som jobber i Troll Tech.
Sa jeg noe om "flinke" ?? :)
>Jeg kjenner mange folk, og nesten alle
>jobber i dag (såvidt jeg vet) hovedsaklig med andre ting enn C/C++
>(selv om alle har vært innom det en eller annen gang).
Vel - det var vel egentlig poenget mitt. Å si at "nesten alle jobber
med" var selvsagt en grov overdrivelse.
Jarle
--
Jarle Aase email: jg...@jgaa.com
Bergen http://www.jgaa.com
<<< no need to argue - just kill'em all! >>>
>..., jenter
> gjør det bedre i Java, Scheme og Lisp enn gutter, mens gutter blir mye
> flinkere til å utnytte Perl, C++ og C.
>
> "jenter" og "gutter" må her taes med de sedvanlige statistiske saltklyper.
Hmm... Jeg tror fortsatt at du flørter med meg..
Jarle (som altså gjør det best i c og c++)
| forøvrig en ganske interessant observasjon fra pedagogene: jenter lærer
| seg å beherske og utnytte abstrakte og dynamiske sprog bedre enn gutter,
| og gutter velger "macho-sprog" som krever overdreven evne til å håndtere
| unyttige detaljer, mens de går glipp av de store linjene. dvs, jenter
| gjør det bedre i Java, Scheme og Lisp enn gutter, mens gutter blir mye
| flinkere til å utnytte Perl, C++ og C.
Sier det noe om hva man tror årsaken er? Jeg vet ikke om jeg tror det
er biologisk betinget hvorvidt jenter er dårligere i andre språk enn
de nevnte.
Andre undersøkelser har pekt på at jenter betrakter en datamaskin som
et verktøy for å løse en oppgave, mens gutter er mer interessert i
hvor mange MHz o.l. som sitter under lokket og hvor fort ting går.
Så det kan være mer det at jentene konsentrer seg mer om å løse
problemet og dermed velger det språket som passer best for å få dette
gjort enn gutter?
| "jenter" og "gutter" må her taes med de sedvanlige statistiske saltklyper.
Samme her.
--
Preben Randhol oO "Don't think about domination, think
[ran...@pvv.org] .` ; about freedom, it doesn't dominate."
[www.pvv.org/~randhol/] \ G -- RMS, LinuxWorld 1999.
`_) n o m e
Du tenker på det som er omtalt på <URL:
http://www.python.org/doc/essays/everybody.html > ?
--
Emacs er i beste fall en fjern bekjent
Sondre Skaug Bjørnebekk
son...@webmagi.no
Har du en referanse på dette? Det kunne vært nyttig å ha til senere.
--Lars M.
Ooops. Litt uheldig formulering: jeg har ingen formell tilknytning til
prosjektet, men kommer til å passe på å få med meg hvordan det går med
det.
* Sondre Skaug Bjørnebekk
|
| Du tenker på det som er omtalt på <URL:
| http://www.python.org/doc/essays/everybody.html > ?
Det var akkurat det jeg tenkte på, ja. Takk skal du ha!
--Lars M.
nok et område der du ikke lar deg affisere av å være uønsket, altså.
>
> r...@tyrfing.ifi.uio.no (Bjørn Remseth) wrote:
>
> >jg...@jgaa.com (Jarle Aase) writes:
> >
> >> [...] Og nesten ALLE profesjonelle programmerere i
> >> alle bransjer jobber i c eller c++ (når man ser bort fra Visual Basic
> >> "konsulentene").
> >
> >De eneste virkelig flinke jeg kjenner som hovedsaklig jobber i C/C++
> >er dem som jobber i Troll Tech.
>
> Sa jeg noe om "flinke" ?? :)
Nei, i grunnen ikke, men om man ikke tar med et slikt premiss blir
diskusjonen ganske meningsløs ("nesten alle jeg kjenner programmerer
C/C++, men de er -kjempedårlige- så derfor er C/C++ bra språk" er et
ganske teit argument for C/C++s fortreffelighet ;)
| Sier det noe om hva man tror årsaken er? Jeg vet ikke om jeg tror det
| er biologisk betinget hvorvidt jenter er dårligere i andre språk enn
| de nevnte.
slike referanser til undersøkelser bør som jeg antar Erik sier alltid
tas med ei klype salt - når en går til originalundersøkelsene viser det
seg alltid at forskjellene har liten betydning i praksis, selv om de
avgjort er interessante.
det er for tida ikke politisk korrekt å snakke om biologiske årsaker til
forskjell i adferd mellom kjønn - men de er nå der og du skal ikke se
bort fra at de har betydning. (forresten er det aldri snakk om bare
biologi eller bare miljø men et komplisert samspill - den biten av
variasjonen som skyldes _arv_ er like _virkelig_ som den biten av
variasjonen som skyldes _miljø_). jeg ville gjette på at miljøet
finsliper biologiske forskjeller. dessuten tror jeg du også kan se på
slike ting som kultur rundt språkene, hvor språkene undervises, og hvor
de som studerer språkene kommer fra.
såvidt jeg husker var fenomenet relatert til mindre konkurransebehov.
eller sagt på en annen måte: det er lettere å konkurrere om hvor du er
flink i sprog med ekstremt høy knotefaktor.
nei, det har bare sivet inn gjennom den sedvanlige osmosen. skal se om
jeg finner det igjen.