Jeg vil godt til at give mig ikast med at programere i xml.
Er der nogen NG, der kun handler om dette emne?
Hvilke bøger er der udgivet PÅ dansk om emnet?
Håber at der er en eller flere der kan hjælpe mig.
John
Er du interesseret i programmering eller XML?
--
Jens Axel Søgaard
> Jeg vil godt til at give mig ikast med at programere i xml.
Det kan man ikke. XML er ikke et programmeringssprog.
--
Henning Makholm "Al lykken er i ét ord: Overvægtig!"
Jooo man kan godt sige, at XML er et programmeringssprog, da f.eks WML er et
subset af XML og som bekendt er der jo nogen der betegner WML som et
programmeringssprog.
Men det ville måske være mere tydeligt, hvis John skriver hvad han vil bruge
XML til, så kan vi jo finde et programmeringssprog der er passende til det.
Af XML bøger, så er der ikke så mange på dansk mener jeg, men The XML Bible
af Elliotte Rusty Harold er efter min mening god til at give en baggrund.
ellers se på Amazone hvad de har.
Mvh
Michael
> Jooo man kan godt sige, at XML er et programmeringssprog, da f.eks WML er et
> subset af XML og som bekendt er der jo nogen der betegner WML som et
> programmeringssprog.
Vrøvl, medmindre du også mener at ASCII er et programmeringssprog og
WML er på ingen måde et subset af XML, det er en XML-applikation. At
nogen betegner WML som et programmeringssprog gør det heller ikke
nødvendigvis rigtigt, der er også folk der kalder HTML et
programmeringssprog.
Man kan indlejre programmeringssprog i et XML-dokument som man for
eksempel gør i HTML:
<style type="text/ecmascript">
document.write("Dette er indlejret programmering");
</style>
Eller bruge XML til at udgøre syntaksen for programmeringssproget. Det
er dog noget jeg ikke har set i praksis, men følgende er ikke
utænkeligt:
<application>
<function>
<lambda arg="x">
<application>
<function><name>+</name></function>
<arglist><arg><name>x</name></arg><arg><integer>42</integer></arglist>
</application>
</lambda>
</function>
<arglist><arg><integer>17</integer></arg></arglist>
</application>
Hvormed det bliver extremt tydeligt at XML bare er lisp done wrong.
--
Når folk spørger mig, om jeg er nørd, bliver jeg altid ilde til mode
og svarer lidt undskyldende: "Nej, jeg bruger RedHat".
-- Allan Olesen på dk.edb.system.unix
> Scripsit "John Lynge" <j...@jal.as>
>
>> Jeg vil godt til at give mig ikast med at programere i xml.
>
> Det kan man ikke. XML er ikke et programmeringssprog.
>
... og når nu I to er færdige med at brokke jer over, at John ikke var
klar over, at man ikke kan programmere i XML :)
... så kunne man jo fortsætte med at hjælpe ved at forklare, at XML er
et markerings-sprog (Extensible Markup Language) - ligesom HTML (Hyper
Text Markup Language). XML alene er genialt til informationsudveksling
imellem servere eller programmer - eller til dataopbevaring ... men i
forbindelse med WWW skal det kombineres med XSL (Extensible Stylesheet
Language). Med dette kan du nemlig "omforme" dine XML-data til HTML,
der så kan vises i en browser.
Mht nyhedsgrupper, så er denne gruppe vist det rigtige. Mht links på
nettet, så kender jeg ikke umiddelbart nogle danske ... men prøv at
kigge på
http://www.ucc.ie/xml/ (FAQ)
http://www.xml.com
http://www.xml101.com/
eller Google:
--
Do you also think surveillance has gone too far ?
http://www.salon.com/comics/tomo/2001/07/09/tomo/index.html
- Jesper Stocholm - http://Stocholm.dk
> Scripsit "John Lynge" <j...@jal.as>
>
>> Jeg vil godt til at give mig ikast med at programere i xml.
>
> Det kan man ikke. XML er ikke et programmeringssprog.
>
og når så I to er færdige med at brokker jer over, at John ikke vidste,
at XML ikke er et programmeringssprog :)
... så kunne vi jo hjælpe med at fortælle, at XML (eXtensible Markup
Language) er et markeringssprog ligesom HTML (Hyper Text Markup Language).
XML _alene_ er genialt til informationsudveksling imellem applikationer eller
datalagring. Hvis du skal anvende XMl til WWW, så skal du dog kombinere det
med XSL (eXtensible Stylesheet Language), der sammen med XML kan lave HTML,
som du så kan præsentere for en browser.
Mht nyhedsgrupper, så er denne vist den rigtige danske. Af udenlandske er der
fx microsoft.public.xml.* og microsoft.public.xsl
Mht links, så kender jeg personligt ikke så mange danske, men kig ind på
http://www.xml.com
http://www.xml101.com
http://www.ucc.ie/xml/ (FAQ)
... eller google
--
Jesper Stocholm
http://stocholm.dk
ICQ: 13214885
MSN Messenger: jesperstocholm at hotmail dot com
> og når så I to er færdige med at brokker jer over, at John ikke vidste,
> at XML ikke er et programmeringssprog :)
Nu må du lige styre dig. John stiller et spørgsmål et forkert sted og
vi forklare hvorfor det er et forkert sted.
> Mht nyhedsgrupper, så er denne vist den rigtige danske. Af udenlandske er der
> fx microsoft.public.xml.* og microsoft.public.xsl
Dette er på ingen måde det rigtige sted at diskuterer generel
anvendelse af XML. Vi kan diskuterer DOM og SAX (og andre måder at
behandle XML fra programmeringssprog). XSL, DTD'er, XML-Schemas og
mange andre centrale XML-emner har intet med programmering at gøre og
bør derfor ikke diskuteres her.
dk.edb.tekst må vel nærmest være den bedste gruppe. I hvertfald hvis
man laver noget XSL der ender ud med XSL-FO. Ellers må man finde en
gruppe alt enter hvad man anvender XML til. XML-RPC kunne for eksempel
være relevant her mens XHTML nok skal i webdesign-gruppen.
> Scripsit "John Lynge" <j...@jal.as>
>
>> Jeg vil godt til at give mig ikast med at programere i xml.
>
> Det kan man ikke. XML er ikke et programmeringssprog.
>
Henning Makholm wrote in news:yahu1wf...@tandgnjost.diku.dk:
> Scripsit "John Lynge" <j...@jal.as>
>
>> Jeg vil godt til at give mig ikast med at programere i xml.
>
> Det kan man ikke. XML er ikke et programmeringssprog.
>
og når så I to er færdige med at brokker jer over, at John ikke vidste,
at XML ikke er et programmeringssprog :)
... så kunne vi jo hjælpe med at fortælle, at XML (eXtensible Markup
Language) er et markeringssprog ligesom HTML (Hyper Text Markup Language).
XML _alene_ er genialt til informationsudveksling imellem applikationer
eller datalagring. Hvis du skal anvende XMl til WWW, så skal du dog
kombinere det med XSL (eXtensible Stylesheet Language), der sammen med XML
kan lave HTML, som du så kan præsentere for en browser.
Mht nyhedsgrupper, så er denne vist den rigtige danske. Af udenlandske er
der fx microsoft.public.xml.* og microsoft.public.xsl
Mht links, så kender jeg personligt ikke så mange danske, men kig ind på
> <application>
> <function>
> <lambda arg="x">
> <application>
> <function><name>+</name></function>
> <arglist><arg><name>x</name></arg><arg><integer>42</integer></arglist>
> </application>
> </lambda>
> </function>
> <arglist><arg><integer>17</integer></arg></arglist>
> </application>
>
>
> Hvormed det bliver extremt tydeligt at XML bare er lisp done wrong.
For dem, der ikke kender lisp, så har Peter skrevet
((lambda (x) (+ x 42) 17))
som giver 59.
Kender I forresten laml ?
Eksempel (con er en forkortelse for concatenate):
(load (string-append laml-dir "laml.scm"))
(laml-style "simple-html4.0-loose")
(define _ #f) ; white-space suppress
(generic-page-1
"A simple page"
(con-par
"This page demonstrates a few of the functions in the HTML 4.0 loose library."
(em "This paragraph has been emphasized by means of the"
(b "em") "function" _ ".")
"Let us also show a simple table, which is one of the real convenient
elements in LAML:"
(table-1
2 ; border
(list 100 200 100)
(list red green blue)
(list
(list "Here" "is" "some")
(list "tabular" "text" "")))
(b "This ends this simple page" _ "."))
(make-color 255 255 191) black blue blue
)
Resultatet kan ses på
http://www.jasoegaard.dk/plainhtml/examples/simple-html4.0-loose/simple-page-1.html
--
Jens Axel
> For dem, der ikke kender lisp, så har Peter skrevet
>
> ((lambda (x) (+ x 42) 17))
Øhhhh, nej. Jeg har skrevet ((lambda (x) (+ x 42)) 17)
> Kender I forresten laml ?
Det har jeg vist set før på et eller andet tidspunkt. Kan man lave
cgi-scripts med det?
[snip]
Det er faktisk noget lidt i den stil jeg arbejder på til daglig. Det er
noget XML der bruges til at beskrive GUI-elementer som objekter, og man kan
så smide metoder ind, skrevet i ECMAScript. Sort snak. Et eksempel:
<Button Name='MinKnap' Label='Tryk her' />
Dette instantierer en knap, med navnet MinKnap som kan tilgås fra
ECMAScript. Hvis man vil vide når der er trykket på knappen, skal man
implementere dens OnClick funktion:
<Button Name='MinKnap' Label='Tryk her'>
<![CDATA[
function OnClick()
{
// noget ECMAScript funktionalitet fyldes ind her
}
]]>
</Button>
Så XML bruges altså udelukkende til at instantiere præ-definerede klasser
med.
Carsten Sørensen
>> Eller bruge XML til at udgøre syntaksen for programmeringssproget. Det
>> er dog noget jeg ikke har set i praksis, men følgende er ikke
>> utænkeligt:
> Det er faktisk noget lidt i den stil jeg arbejder på til daglig. Det er
Nej. Det det ser ud til at du gør er at bruge XML til at beskriver
GUI-elementer (intet programmering her) for så at indlejre kode der
bliver udført på et givent tidspunkt. Din egentlige programmering sker
altså ved at indlejre et programmeringssprog i XML.
Der er stort set ikke forskel på hvad du gør og så HTML/DOM, hvis
altså dit eksempel er repræsentativt.
> Det det ser ud til at du gør er at bruge XML til at beskriver
> GUI-elementer (intet programmering her) for så at indlejre
> kode der bliver udført på et givent tidspunkt.
Det er muligt at Entity, <http://www.entity.cx/>, er noget af det
samme, men her synes jeg dog at grænsen mellem markup-language og
programmering er en del mere flydende, og jeg ville ikke tøve med
at kalde det programmering når man laver Entity-programmer, selv
om det altså sker v.hj.af XML.
// Klaus
--
><>° vandag, môre, altyd saam
Jeg sagde altså "lidt". Dit eksempel var helt ude i ekstremen, det skulle
jeg selvfølgelig have kommenteret.
> Din egentlige programmering sker altså ved at indlejre et
> programmeringssprog i XML.
Helt korrekt.
> Der er stort set ikke forskel på hvad du gør og så HTML/DOM, hvis
> altså dit eksempel er repræsentativt.
Igen, helt korrekt, og det _er_ repræsentativt. Man kan selvfølgelig godt
tilføje nye metoder og properties til objekter og tilgå dem fra andre
objekter, men det ændrer ikke noget. Det eneste sted hvor grænsen krydses
(hvilket ikke er stort anderledes fra HTML/DOM, indrømmet) er at statiske
objekter instantieres og navngives vha XML og de derved kan bruges som
"native" (et dansk ord? indfødte?) ditto fra ECMAScript. Jeg er holdt op med
at tænke på nogen egentlig grænse og opfatter efterhånden det hele som eet
stort sprog.
Carsten Sørensen
Hrm, det jeg laver minder _ret_ meget om Entity på visse punkter.
Interessant, tak for linket. ECMAScript'en kan i øvrigt (som Entity) smides
i attributes, så grænsen bliver helt overskredet. Sædvanligvis er det dog en
dum ide, da der så skal rettes mere hvis man vil tilføje kode.
Carsten Sørensen
Ja. Det er allertiders at få brugt sit Scheme til noget "fornuftigt".
Jeg har kun leget med laml den dag, jeg installerede det (i forgårs),
men inspireret af tricket fra dk.kultur.sprog (www.makeashorterlink.dk),
har jeg lavet en mini-version.
På http://www.jensaxel.dk/laml/index.cgi kan man indtaste en tekststreng.
Den efterfølgende side, slår så tekststrengen op i en liste af par bestående af en
streng og en url.
Her er index.cgi:
; Farverne snuppes fra defaults (som er i default-bg-text-link-vlink-colors)
(define colors default-bg-text-link-vlink-colors)
(define bg-color (first colors))
(define text-color (second colors))
(define link-color (third colors))
(define vlink-color (fourth colors))
(cgi-write (page-1
"Linkhusker" ; Titel
'() ; Meta information
; Body
(con (h1 "Linkhusker")
(p "På denne side kan gemme lange links og give dem et nummer. " (br)
"Du kan dermed nemmere give linket videre til andre.")
(h2 "Indtast nummeret på det korte link.")
(form 'action "show_link.cgi"
(text-line 'linkid 40 ""))
(vertical-space 1)
(last-update))
bg-color text-color link-color vlink-color)) ; Farver
(end)
Her er den efterfølgende side, som viser det rette link.
; Farverne snuppes fra defaults (som er i default-bg-text-link-vlink-colors)
(define colors default-bg-text-link-vlink-colors)
(define bg-color (first colors))
(define text-color (second colors))
(define link-color (third colors))
(define vlink-color (fourth colors))
; Parametrene er en association list med bestaaende af par af formen (linkid.<string>)
(define parameters (extract-url-parameters))
;(define parameters '( (linkid . "4") )) ; test
; Behandling af form input
; Finder den rette url i "link.data", hvis id'et er ukendt returneres falsk, dvs. #f
(define (linkid->url id)
(let ([i (assoc id (read (open-input-file "/home/sites/site8/web/laml/link/link.data")))])
(if i
(cdr i)
#f)))
(define linkid (cdr (assoc 'linkid parameters)))
(define url (linkid->url linkid))
(cgi-write (page-1
"Linkhusker" ; Titel
'() ; Meta information
; Body
(con (h1 "Linkhusker")
(if url
; Kendt id
(begin
(con
(p "Du vil gerne have link nummer " linkid (br)
"Det ønskede link er: "
(a 'href url url))))
; Ukendt id
(p "Du indtastede et ukendt id."))
(br)
(vertical-space 1)
(last-update))
; Farver
bg-color text-color link-color vlink-color))
--
Jens Axel Søgaard
Ups. Det er straffen for at have svigtet Emacs/Gnus som ens nyhedslæser.
--
Jens Axel Søgaard
> Jeg sagde altså "lidt". Dit eksempel var helt ude i ekstremen, det skulle
> jeg selvfølgelig have kommenteret.
Nej, mit eksempel var præcis hvad jeg mente. XML udgør syntaksen for
programmeringssproget.
Der er tre tilfælde af forbindelser mellem programmeringssprog og XML:
- Programmeringssprog indlejret i XML
- Programmeringssprog der håndterer XML (evt ved hjælp af et DOM-
eller SAX-ligende API)
- Programmeringssprog hvor syntaksen udgøres af XML.
Oftest er der ikke tale om et enten eller. Programmeringssprog
indlejret i XML har oftets adgang til det dokument det er indlejret i
via et DOM-ligende API.
Jeg tror faktisk ikke jeg har set reelle eksempler på det tredje
tilfælde hvor XML udgør syntaksen for programmeringssproget.
>> Din egentlige programmering sker altså ved at indlejre et
>> programmeringssprog i XML.
>
> Helt korrekt.
Hvormed dit eksempel høre bedre hjemme oppe i første del af det indlæg
du citerede hvor jeg behandlede netop indlejrede sprog.
> "native" (et dansk ord? indfødte?) ditto fra ECMAScript. Jeg er holdt op med
> at tænke på nogen egentlig grænse og opfatter efterhånden det hele som eet
> stort sprog.
Jeg ville nok have svært ved at opfatte noget i CDATA som en
integreret del af XML-applikationen.
Hvilket /er/ en ekstrem, her må du give mig ret.
> Hvormed dit eksempel høre bedre hjemme oppe i første del af det indlæg
> du citerede hvor jeg behandlede netop indlejrede sprog.
Jeg er ikke enig i det er et indlejret sprog. Det er to ting der er sat
sammen for at skabe en tredje.
> Jeg ville nok have svært ved at opfatte noget i CDATA som en
> integreret del af XML-applikationen.
Mnja, det er som man ser på det. Ingen af delene kan stå alene i mit
tilfælde. Uden ECMAScript ville man have en pæn applikation uden nogen som
helst funktionalitet, og uden XML ville man have en masse funktionalitet
uden nogen måde at bruge det på.
Ville
<Window Name='EtVindue'/>
...
<Button OnClick='EtVindue.Show();'/>
være mere integreret? Egentlig ikke, men man kan selvfølgelig, det bliver
bare lynhurtigt uoverskueligt, derfor er en CDATA-sektion (hvilket kun er
for at slippe for at skrive & osv) at foretrække, og specielt hvis den
event man ønsker at override tager parametre.
/Jeg mener/ XML virker og fungerer som en integreret del af ECMAScript og
omvendt. Men jeg fornemmer dette ender i en diskussion om hvornår noget er
indlejret og hvornår det er integreret.
Carsten Sørensen
> Jeg tror faktisk ikke jeg har set reelle eksempler på det tredje
> tilfælde hvor XML udgør syntaksen for programmeringssproget.
Det vil sgu også være en træg notation.
--
Jonas Kongslund <jonas(at)kongslund.dk> XNS: =Jonas Kongslund
Digital Rights - raising awareness of rights in the digital world
http://www.digitalrights.dk
> Jeg tror faktisk ikke jeg har set reelle eksempler på det tredje
> tilfælde hvor XML udgør syntaksen for programmeringssproget.
Athene fra Rocklyte¹ snerper kraftigt derhenad. Her er et lillebitte
eksempel:
#v+
<?xml version="1.0"?>
<!DOCTYPE dml PUBLIC "-//ROCKLYTE//DTD DML 1.0//EN" "http://www.rocklyte.com/dtd/dml_1_0.xml">
<dml type="program">
<if exists="systemkeyboard"/><else><@keyboard name="systemkeyboard"/></else>
<if exists="systemmouse"/><else><@joyport name="systemmouse" port="mouse"/></else>
<if exists="systemclipboard"/><else><@clipboard name="systemclipboard"/></else>
<if exists="key_printscreen"/>
<else> <!-- Print Screen -->
<keypress name="key_printscreen" key="printscreen" flags="global">
<script static src="graphics:screenshot.dml"/>
</keypress>
</else>
<if exists="key_panic"/>
<else> <!-- Panic Button -->
<keypress name="key_panic" qualifier="ctrl" key="escape" flags="global">
<script static src="templates:panic.dml"/>
</keypress>
</else>
</dml>
#v-
Athene er en slags, hm, desktopmiljø eller operativsystem, eller hvad
man nu skal kalde det, hvor applikationerne er skrevet i DML (som oven-
for) og køres af en vm (så vidt jeg kan bedømme efter de 10 minutter
jeg har kigget på det).
// Klaus
¹) <http://www.rocklyte.com/athene/>
> Athene fra Rocklyte¹ snerper kraftigt derhenad. Her er et lillebitte
> eksempel:
Meget kraftigt.
> on Thursday 01 November 2001 22:38, Peter Makholm <pe...@makholm.net> wrote:
>
> > Jeg tror faktisk ikke jeg har set reelle eksempler på det tredje
> > tilfælde hvor XML udgør syntaksen for programmeringssproget.
>
> Det vil sgu også være en træg notation.
Det kommer vel an på hvor højniveau sproget skulle være på? Jeg kunne f.eks.
godt tænke mig nogle 4GL (eller bare database) agtige elementer indlagt:
<TABLE>
<SQL query="SELECT * FROM person>
<TR>
<TD><SQLVAR name="navn"/></TD>
<TD><SQLVAR name="adresse"/></TD>
</TR>
<SQL>
</TABLE>
Hvilket ikke er meget mere (min mening) læsbart end PHP etc.
--
Mvh. Kim Petersen /| Tlf: +4575831551 |\ Jomfru Ingefreds Vej 18
Software Engineer / | Fax: (none atm.) | \ 7100 Vejle
LSS / | Email: k...@vindinggaard.dk | \ DK - Danmark
> Man kan indlejre programmeringssprog i et XML-dokument som man for
> eksempel gør i HTML:
>
> <style type="text/ecmascript">
> document.write("Dette er indlejret programmering");
> </style>
>
> Eller bruge XML til at udgøre syntaksen for programmeringssproget.
> Det er dog noget jeg ikke har set i praksis, men følgende er ikke
> utænkeligt:
>
> <application>
> <function>
> <lambda arg="x">
> <application>
> <function><name>+</name></function>
>
<arglist><arg><name>x</name></arg><arg><integer>42</integer></arglist>
> </application>
> </lambda>
> </function>
> <arglist><arg><integer>17</integer></arg></arglist>
> </application>
Programmeringssproget XSLT er opbygget cirka sådan. Det er
mindre generelt end LISP (ingen højere ordens funktioner), men
ganske stærkt til at omstrukturere XML. F.eks. kan man generere
XHTML eller SVG ved at kombinere templates med XML-
udtræk fra en database, hvilket er en nem måde at fremstille
web-applikationer på.
> Hvormed det bliver extremt tydeligt at XML bare er lisp
> done wrong.
Enig.
ON/***Fjern sneglen fra min returadresse***
> Det kommer vel an på hvor højniveau sproget skulle være på?
Ja, du har ret. Men hvis det skal bruges seriøst så skal man typisk bruge
det ofte, og hvis man skal bruge det ofte så skal man taste <..> og </..>
hele tiden, hvorfor det pludseligt bliver trægt at anvende.
> Jeg kunne
> f.eks. godt tænke mig nogle 4GL (eller bare database) agtige elementer
> indlagt:
>
> <TABLE>
> <SQL query="SELECT * FROM person>
> <TR>
> <TD><SQLVAR name="navn"/></TD>
> <TD><SQLVAR name="adresse"/></TD>
> </TR>
> <SQL>
> </TABLE>
>
> Hvilket ikke er meget mere (min mening) læsbart end PHP etc.
JSP Tag libraries klarer faktisk dette for dig. Du kan endda selv tilføje
nye elementer. Se f.eks.
http://jakarta.apache.org/taglibs/doc/dbtags-doc/index.html
Syntaksen er værre end i dit ovenstående eksempel, hvor du så til
gengælder springer over en masse detaljer (f.eks. manglende fejlhåndtering
og hvad hvis resultatmængden = Ø)?
> <TABLE>
> <SQL query="SELECT * FROM person>
> <TR>
> <TD><SQLVAR name="navn"/></TD>
> <TD><SQLVAR name="adresse"/></TD>
> </TR>
> <SQL>
> </TABLE>
Der har vi så et grænsetilfælde som jeg ikke helt ved om passer ind i
mine tre grupper. Efter at have leget en del med HTML::Mason tror jeg
faktisk godt jeg kunne blive meget glad for ovenstående måde at
indlejre et sprog i XML.
Det jeg måske savner lidt i HTML::Mason er nok at kunne lave en
<perl:exp code='...'>[...]</perl:exp> hvor udtrykket i code blev
udført på det der står imellem taggene på en eller anden måde.
>Det kommer vel an på hvor højniveau sproget skulle være på? Jeg kunne f.eks.
>godt tænke mig nogle 4GL (eller bare database) agtige elementer indlagt:
> <TABLE>
> <SQL query="SELECT * FROM person>
> <TR>
> <TD><SQLVAR name="navn"/></TD>
> <TD><SQLVAR name="adresse"/></TD>
> </TR>
> <SQL>
> </TABLE>
>Hvilket ikke er meget mere (min mening) læsbart end PHP etc.
XSLT giver dig stort set dette:
XML Query giver dig endda mulighed for at sparke SQL ud:
Er regulære udtryk et programmeringsprog? Hvis ja, så må XPath
også tages med i ed.
Hvis jeg skal forsøge at bidrage med noget interessant til diskussionen
om hvorvidt XML er et programmeringssprog eller ej, så vil jeg drage en
sammenligning med Lua:
Lua er et programmeringssprog, som egentligt begyndte som et data-
beskrivelsessprog, lidt ligesom XML er. Siden er Lua blevet et meget
lækkert og effektivt sprog med førsteordens funktioner, bruger-definerede
typer, og hvad ved jeg, som er beregnet til at indlejres i programmer.
Oversat fylder fortolkeren cirka 50k-100k. Performance er god,
hvis man kan leve med garbage collection i ny og næ, og oversætteren
er gratis og open source.
Så mens jeg er enig i at XML i sig selv er på kanten af at være
et programmeringssprog i datalogisk forstand idag, så er grænsen
efterhånden blevet mere flydende, fordi der findes en del XML
instanser, som beskriver programmeringssprog. Måske er det ikke
altid så fordelagtigt at skelne fast mellem databeskrivelsessprog
og programmeringssprog, fordi tendensen for databeskrivelsessprog
vil ofte være at udvikles i retning af et "rigtig "programmerings-
sprog.
Mvh
Asger Alstrup
> Scripsit "John Lynge" <j...@jal.as>
>
> > Jeg vil godt til at give mig ikast med at programere i xml.
>
> Det kan man ikke. XML er ikke et programmeringssprog.
Korrekt. Der findes dog programmeringssprog som er skrevet i en
XML-variant. XSLT er et eksempel.
--
Thorbjørn Ravn Andersen "...plus...Tubular Bells!"
http://bigfoot.com/~thunderbear
> Eller bruge XML til at udgøre syntaksen for programmeringssproget. Det
> er dog noget jeg ikke har set i praksis, men følgende er ikke
> utænkeligt:
...
> Hvormed det bliver extremt tydeligt at XML bare er lisp done wrong.
Kig på XSLT. Dets arv fra LISP er meget tydelig.
For at se noget non-LISP XML så kig på Taglibs
(http://jakarta.apache.org/taglibs/index.html).
> Ja. Det er allertiders at få brugt sit Scheme til noget "fornuftigt".
> Jeg har kun leget med laml den dag, jeg installerede det (i forgårs),
Hvordan er ydelsen af Scheme i denne sammenhæng. (Ren CGI? Indlejret
i webserveren? Er det andet end et legetøj?)
> <Button Name='MinKnap' Label='Tryk her'>
> <![CDATA[
Hele ideen med at bruge XML går fløjten, da du har store problemer med
at behandle din XML mere end en gang. Ovenstående vil emm kun virke
hvis det er sidste trin inden præsentationen.
> Ja, du har ret. Men hvis det skal bruges seriøst så skal man typisk bruge
> det ofte, og hvis man skal bruge det ofte så skal man taste <..> og </..>
> hele tiden, hvorfor det pludseligt bliver trægt at anvende.
Jeg har flere gange nævnt XSLT. Dette er klart nemmere med en god
editor til at hjælpe og støtte til at få klammer rigtige og indrykning
korrekt, mv.
Det kan godt lade sig gøre.
For mig er det ikke andet end legetøj.
Da jeg ikke har adgang til at installere moduler i den Apache
benytter almindelige cgi-scripts.
Generelt er der ikke noget i vejen med ydelsen i Scheme.
De gode Scheme-compilere er endog meget gode.
[Det samme er de nye Lisp-compilere - synd at de fleste kun hører
om Lisp fra 1960-70'erne.]
Krishnamurthi, Hoeven og Felleisen (det sidste må lyde sjovt udtalt)
har skrevet artiklen (som er meget læsværdig)
"Programming the Web with High-Level Programming Languages"
http://www.cs.rice.edu/CS/PLT/Publications/esop2001-gkvf.pdf.gz
De argumenterer for, at der er vægtige fordele ved at benytte et højere ordens-sprog
til web-programmering.
De har implementeret en web server (i en fortolket Scheme), og sammmenlignet med
resulataterne med Apache. Deres håndtering af statiske sider er lidt langsommere
end Apache (ahængig af filstørrelser), men er sammenlignelig.
Tidens trend er dog at mange hjemmesider bliver frembragt dynamisk; og
her klarer deres web server sig fint. Højereordenssprogene har her en fordel.
Hvorfor vil jeg overlade til dem at forklare - de gør det bedre end jeg.
[Til windows-folket: web serveren, pdf-filen bliver hentet fra har encoding sat til gzip.
Det betyder, at browseren automatisk pakker filen ud. Den ændrer dog ikke
navnet, så man er nødt til at gemme den, og omdøbe den fra .ps.gz til .ps]
[Hvor tåbeligt er det, at windows kun kigger på efternavnet for at genkende filtypen?
Kan man få magic til windows?]
--
Jens Axel Søgaard
Der er andre som mener det ganske alvorligt:
http://slashdot.org/article.pl?sid=01/05/01/1539239&mode=nested
> Krishnamurthi, Hoeven og Felleisen (det sidste må lyde sjovt udtalt)
> har skrevet artiklen (som er meget læsværdig)
> "Programming the Web with High-Level Programming Languages"
> http://www.cs.rice.edu/CS/PLT/Publications/esop2001-gkvf.pdf.gz
Den er imho *meget* naiv.
--
Anders
> > > Hvordan er ydelsen af Scheme i denne sammenhæng. (Ren CGI?
> > > Indlejret i webserveren? Er det andet end et legetøj?)
> >
> > For mig er det ikke andet end legetøj.
>
> Der er andre som mener det ganske alvorligt:
> http://slashdot.org/article.pl?sid=01/05/01/1539239&mode=nested
Jeg kan godt huske historien. Hans artikel forklarer meget godt,
hvilke fordele det gav at anvende Lisp fremfor andre sprog.
> > Krishnamurthi, Hoeven og Felleisen (det sidste må lyde sjovt udtalt)
> > har skrevet artiklen (som er meget læsværdig)
> > "Programming the Web with High-Level Programming Languages"
> > http://www.cs.rice.edu/CS/PLT/Publications/esop2001-gkvf.pdf.gz
>
> Den er imho *meget* naiv.
Det kan du på sin vis have du ret I; jeg tror dog man skal tænke på det som
en slags "proof-of-concept".
Hvis man kan nå så langt med naive midler, hvor langt kan man så nå,
hvis man giver sig til at udvikle alvorligt i den retning?
--
Jens Axel Søgaard
> > Der er andre som mener det ganske alvorligt:
> > http://slashdot.org/article.pl?sid=01/05/01/1539239&mode=nested
Jeg kom lige tanke om denne her. "Lisp an Alternative to Java".
http://www-aig.jpl.nasa.gov/public/home/gat/lisp-study.html
--
Jens Axel Søgaard
> "Programming the Web with High-Level Programming Languages"
>
> http://www.cs.rice.edu/CS/PLT/Publications/esop2001-gkvf.pdf.gz
>
> De argumenterer for, at der er vægtige fordele ved at benytte et højere ordens-sprog
> til web-programmering.
Jeg har nu skimmet denne artikel, men jeg har svært ved at finde disse
vægtige fordele. Så vidt jeg lige kan se, er der ikke noget i deres
system som en servlet-baseret webserver ikke kan klare? Altså at
deres hovedargumentation er at content generators normalt er skrevet i
et andet sprog end selve webserveren?
> Jeg kom lige tanke om denne her. "Lisp an Alternative to Java".
>
> http://www-aig.jpl.nasa.gov/public/home/gat/lisp-study.html
En interessant artikel med interessante konklusioner.
Er det i dag teoretisk muligt at erstatte Java-programmer med
Lisp-programmer? Altså, er det muligt at skrive Swing-applikationer,
webservere mv mv, og hvor meget af arbejdet er gjort?
> Er det i dag teoretisk muligt at erstatte Java-programmer med
> Lisp-programmer? Altså, er det muligt at skrive Swing-applikationer,
> webservere mv mv, og hvor meget af arbejdet er gjort?
CL-HTTP er en webserver skrevet i Lisp:
<http://www.ai.mit.edu/projects/iiip/doc/cl-http/home-page.html>