New techreport pages.
This commit is contained in:
parent
93bd86ccc4
commit
5b4c94649c
|
@ -20,6 +20,9 @@
|
||||||
(provide TT)
|
(provide TT)
|
||||||
(define (TT . xs)
|
(define (TT . xs)
|
||||||
@tt[style: "background-color: #dde;"]{@xs})
|
@tt[style: "background-color: #dde;"]{@xs})
|
||||||
|
(provide PRE)
|
||||||
|
(define (PRE . xs)
|
||||||
|
@pre[style: "background-color: #dde;"]{@xs})
|
||||||
|
|
||||||
;; some tags with convenient separators
|
;; some tags with convenient separators
|
||||||
(provide make-separated-tag (rename-out [the-separator ~])
|
(provide make-separated-tag (rename-out [the-separator ~])
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#lang at-exp s-exp "shared.rkt"
|
#lang at-exp s-exp "shared.rkt"
|
||||||
|
|
||||||
(require "people.rkt" racket/list)
|
(require "people.rkt" "techreports.rkt" racket/list)
|
||||||
|
|
||||||
(provide learning)
|
(provide learning)
|
||||||
(define learning
|
(define learning
|
||||||
|
@ -87,8 +87,6 @@
|
||||||
live.}
|
live.}
|
||||||
@p[align: 'right]{—@responsible-people}})
|
@p[align: 'right]{—@responsible-people}})
|
||||||
|
|
||||||
(require "techreports.rkt")
|
|
||||||
|
|
||||||
;; redirection page for the previous name of this page
|
;; redirection page for the previous name of this page
|
||||||
(define outreach+research
|
(define outreach+research
|
||||||
@page[#:part-of 'learning
|
@page[#:part-of 'learning
|
||||||
|
|
|
@ -1,18 +1,108 @@
|
||||||
#lang at-exp s-exp "shared.rkt"
|
#lang at-exp s-exp "shared.rkt"
|
||||||
|
|
||||||
(require "bib.rkt" (prefix-in - version/utils) racket/list
|
(require "bib.rkt" (prefix-in - version/utils) racket/list racket/string
|
||||||
"people.rkt" "../download/data.rkt")
|
"people.rkt" "../download/data.rkt")
|
||||||
|
|
||||||
|
;; New style TR entries -------------------------------------------------------
|
||||||
|
|
||||||
|
(define (-all-techreports-)
|
||||||
|
(list (TR 1 'reference "Reference: Racket" '(mflatt plt)
|
||||||
|
#:description "Racket Programming Language")
|
||||||
|
(TR 2 'drracket "DrRacket: Programming Environment" '(robby plt)
|
||||||
|
#:description "DrRacket API"
|
||||||
|
#:note
|
||||||
|
@list{
|
||||||
|
Preferred generic citation:
|
||||||
|
@blockquote[style: "margin-top: 0.5ex; margin-bottom: 0.5ex;"]{
|
||||||
|
R. B. Findler, J. Clements, C. Flanagan, M. Flatt,
|
||||||
|
S. Krishnamurthi, P. Steckler and M. Felleisen. @br
|
||||||
|
@i{DrScheme: A programming environment for Scheme.} @br
|
||||||
|
Journal of Functional Programming, 12(2): 159–182, March 2002.}
|
||||||
|
Please cite the DrRacket technical report only if internal
|
||||||
|
details of DrRacket are concerned, otherwise use the DrScheme
|
||||||
|
reference.})
|
||||||
|
(TR 3 'gui "GUI: Racket Graphics Toolkit" '(mflatt robby clements)
|
||||||
|
#:description "Racket Graphics Toolkit")))
|
||||||
|
|
||||||
|
(define (doc-url doc [fmt 'html] [ver 'recent])
|
||||||
|
(format "http://download.racket-lang.org/docs/~a/~a/~a~a" ver fmt doc
|
||||||
|
(if (eq? 'html fmt) "" (format ".~a" fmt))))
|
||||||
|
|
||||||
|
(define (TR num docname title authors* #:description [desc title]
|
||||||
|
#:note [note #f])
|
||||||
|
(define tr-name @list{PLT-TR-2010-@num})
|
||||||
|
(define author-strings
|
||||||
|
(map (lambda (a) (if (eq? 'plt a) "PLT" (person-bibname (find-person a))))
|
||||||
|
authors*))
|
||||||
|
(define (link fmt [ver 'recent]) @a[href: (doc-url docname fmt ver)]{[@fmt]})
|
||||||
|
(define (title-line link?)
|
||||||
|
@list{@big{@b{@(if link? cite-page values){@tr-name}}}
|
||||||
|
@|nbsp nbsp| @small{@link['html] @link['pdf]}})
|
||||||
|
(define (content)
|
||||||
|
@list{@(add-between author-strings " and ") @br
|
||||||
|
@i{@title} @br
|
||||||
|
PLT Technical Report #@num @br
|
||||||
|
@(and note @div[style: "margin-top: 1ex; font-size: small;"]{
|
||||||
|
@note})})
|
||||||
|
(define ((refblock . title) . body)
|
||||||
|
@list{@h2{@title}
|
||||||
|
@blockquote{@PRE{@body}}})
|
||||||
|
(define cite-page
|
||||||
|
@page[#:file (format "tr~a/" num) #:title tr-name #:part-of 'learning]{
|
||||||
|
@h1{@title-line[#f]}
|
||||||
|
@p*{@blockquote{@big{@content}}
|
||||||
|
@~ For citations of the @desc, please use @TT{\cite{plt-tr@num}} in
|
||||||
|
LaTeX, or @TT|{@cite[plt-tr1]}| in Scribble, using the definitions
|
||||||
|
below.
|
||||||
|
@~ For references to specific releases and/or chapters, use
|
||||||
|
@TT{\cite[Version M.N]{plt-tr@num}} or
|
||||||
|
@TT|{@cite[(in-bib plt-tr1 "Version M.N")]}| instead. The year
|
||||||
|
in the bibliographic entry should be 2010 regardless of the
|
||||||
|
version's date.}
|
||||||
|
@@refblock{BibTeX}|{
|
||||||
|
@techreport{plt-tr1,
|
||||||
|
title = {|@title},
|
||||||
|
author = {|@(add-between author-strings " and ")},
|
||||||
|
number = {|@tr-name},
|
||||||
|
institution = {PLT Inc.},
|
||||||
|
year = {2010},
|
||||||
|
note = {\url{|@(get-resource-path cite-page #t)}}
|
||||||
|
}}|
|
||||||
|
@@refblock{Scribble}|{
|
||||||
|
(define plt-tr1
|
||||||
|
(make-bib #:title "|@title"
|
||||||
|
#:author |@(format "~s" (cons 'authors author-strings))
|
||||||
|
#:date "2010"
|
||||||
|
#:location (techrpt-location "|@tr-name")
|
||||||
|
#:url "|@(get-resource-path cite-page #t)"))}|
|
||||||
|
@h2{Specific Versions}
|
||||||
|
@blockquote{
|
||||||
|
@table[frame: 'box rules: 'rows cellpadding: 10]{
|
||||||
|
@(for/list ([v (remove-duplicates
|
||||||
|
(map installer-version all-installers))])
|
||||||
|
@tr{@td{@b{@v} @br @small{(@version->date[v])}}
|
||||||
|
@td{@TT{\cite[Version @v]{plt-tr@num}} @br
|
||||||
|
@TT|{@cite[(in-bib plt-tr1 "Version |@v")]}|}
|
||||||
|
@td{@link['html v], @link['pdf v]}})}
|
||||||
|
@p{@small{Reminder: the release dates should not be included in the
|
||||||
|
entry or the citation.}}}})
|
||||||
|
@list{@dt{@title-line[#t]}
|
||||||
|
@dd[style: "margin-bottom: 1.5ex;"]{
|
||||||
|
@content}})
|
||||||
|
|
||||||
(provide techreports)
|
(provide techreports)
|
||||||
(define techreports
|
(define techreports
|
||||||
@page[#:file "techreports/" #:part-of 'learning
|
@page[#:file "tr/" #:title "PLT Technical Reports" #:part-of 'learning]{
|
||||||
#:title "Technical Reports"]{
|
@p*{
|
||||||
@p{PLT publishes technical reports about some of its tools and libraries so
|
@~ For citations of generic pieces of the Racket infrastructure, please use
|
||||||
that scholars who wish to give proper credit to some of our innovations
|
@TT{\cite{plt-tr1}}, @TT{\cite{plt-tr2}}, etc. in LaTeX, or
|
||||||
have a definite citation. Each entry below provides the full pdf and a
|
@TT|{@cite[plt-tr1]}|, @TT|{@cite[plt-tr2]}|, etc. in Scribble, with the
|
||||||
bibtex entry; some of the bibtex entries provide additional citations to
|
BibTeX and Scribble entries provided in the web pages below.
|
||||||
published papers.}
|
@~ For references to specific releases and/or chapters of the language, use
|
||||||
@make-bib-table{}})
|
@TT{\cite[Version M.N]{plt-tr1}} or
|
||||||
|
@TT|{@cite[(in-bib plt-tr1 "Version M.N")]}|
|
||||||
|
instead.}
|
||||||
|
@dl{@(add-newlines (-all-techreports-))}})
|
||||||
|
|
||||||
;; Old style TR entries, for compatibility ------------------------------------
|
;; Old style TR entries, for compatibility ------------------------------------
|
||||||
|
|
||||||
|
@ -257,8 +347,7 @@
|
||||||
(lambda () (person-bibname (find-person author))))])
|
(lambda () (person-bibname (find-person author))))])
|
||||||
(if (string? r)
|
(if (string? r)
|
||||||
r
|
r
|
||||||
(let ([r (apply string-append
|
(let ([r (string-join (map author->string r) " and ")])
|
||||||
(add-between (map author->string r) " and "))])
|
|
||||||
(hash-set! authors* author r)
|
(hash-set! authors* author r)
|
||||||
r))))
|
r))))
|
||||||
|
|
||||||
|
@ -321,14 +410,23 @@
|
||||||
(web-path "www" "techreports" file))
|
(web-path "www" "techreports" file))
|
||||||
file))
|
file))
|
||||||
|
|
||||||
(define (make-bib-table)
|
(define old-techreports
|
||||||
(apply table width: "98%" cellspacing: 0 cellpadding: 6 border: 0
|
@page[#:file "techreports/" #:title "Old PLT Technical Reports"
|
||||||
align: 'center style: "font-size: 75%;"
|
#:part-of 'learning]{
|
||||||
(for/list ([bib bibs] [n (in-naturals)])
|
@p{@strong{Note:} the entries on this page are outdated, please see the new
|
||||||
@tr[valign: 'top bgcolor: (if (even? n) "#e0e0e0" "white")]{
|
@techreports page.}
|
||||||
@td[style: "white-space: nowrap;"]{@(hash-ref bib 'number)}
|
@p{PLT publishes technical reports about some of its tools and libraries so
|
||||||
@td[align: 'left]{@i{@(without-braces (hash-ref bib 'title))}}
|
that scholars who wish to give proper credit to some of our innovations
|
||||||
@td{@(bib-author bib)}
|
have a definite citation. Each entry below provides the full pdf and a
|
||||||
@td{@a[href: (make-bib-file bib)]{[bib]}@|nbsp|@;
|
bibtex entry; some of the bibtex entries provide additional citations to
|
||||||
@a[href: (hash-ref bib '#:pdf-url)]{[pdf]}@|nbsp|@;
|
published papers.}
|
||||||
@a[href: (hash-ref bib '#:html-url)]{[html]}}})))
|
@table[width: "98%" cellspacing: 0 cellpadding: 6 border: 0
|
||||||
|
align: 'center style: "font-size: 75%;"]{
|
||||||
|
@(for/list ([bib bibs] [n (in-naturals)])
|
||||||
|
@tr[valign: 'top bgcolor: (if (even? n) "#e0e0e0" "white")]{
|
||||||
|
@td[style: "white-space: nowrap;"]{@(hash-ref bib 'number)}
|
||||||
|
@td[align: 'left]{@i{@(without-braces (hash-ref bib 'title))}}
|
||||||
|
@td{@(bib-author bib)}
|
||||||
|
@td{@a[href: (make-bib-file bib)]{[bib]}@|nbsp|@;
|
||||||
|
@a[href: (hash-ref bib '#:pdf-url)]{[pdf]}@|nbsp|@;
|
||||||
|
@a[href: (hash-ref bib '#:html-url)]{[html]}}})}})
|
||||||
|
|
Loading…
Reference in New Issue
Block a user