New techreport pages.
This commit is contained in:
parent
93bd86ccc4
commit
5b4c94649c
|
@ -20,6 +20,9 @@
|
|||
(provide TT)
|
||||
(define (TT . xs)
|
||||
@tt[style: "background-color: #dde;"]{@xs})
|
||||
(provide PRE)
|
||||
(define (PRE . xs)
|
||||
@pre[style: "background-color: #dde;"]{@xs})
|
||||
|
||||
;; some tags with convenient separators
|
||||
(provide make-separated-tag (rename-out [the-separator ~])
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#lang at-exp s-exp "shared.rkt"
|
||||
|
||||
(require "people.rkt" racket/list)
|
||||
(require "people.rkt" "techreports.rkt" racket/list)
|
||||
|
||||
(provide learning)
|
||||
(define learning
|
||||
|
@ -87,8 +87,6 @@
|
|||
live.}
|
||||
@p[align: 'right]{—@responsible-people}})
|
||||
|
||||
(require "techreports.rkt")
|
||||
|
||||
;; redirection page for the previous name of this page
|
||||
(define outreach+research
|
||||
@page[#:part-of 'learning
|
||||
|
|
|
@ -1,18 +1,108 @@
|
|||
#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")
|
||||
|
||||
;; 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)
|
||||
(define techreports
|
||||
@page[#:file "techreports/" #:part-of 'learning
|
||||
#:title "Technical Reports"]{
|
||||
@p{PLT publishes technical reports about some of its tools and libraries so
|
||||
that scholars who wish to give proper credit to some of our innovations
|
||||
have a definite citation. Each entry below provides the full pdf and a
|
||||
bibtex entry; some of the bibtex entries provide additional citations to
|
||||
published papers.}
|
||||
@make-bib-table{}})
|
||||
@page[#:file "tr/" #:title "PLT Technical Reports" #:part-of 'learning]{
|
||||
@p*{
|
||||
@~ For citations of generic pieces of the Racket infrastructure, please use
|
||||
@TT{\cite{plt-tr1}}, @TT{\cite{plt-tr2}}, etc. in LaTeX, or
|
||||
@TT|{@cite[plt-tr1]}|, @TT|{@cite[plt-tr2]}|, etc. in Scribble, with the
|
||||
BibTeX and Scribble entries provided in the web pages below.
|
||||
@~ For references to specific releases and/or chapters of the language, use
|
||||
@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 ------------------------------------
|
||||
|
||||
|
@ -257,8 +347,7 @@
|
|||
(lambda () (person-bibname (find-person author))))])
|
||||
(if (string? r)
|
||||
r
|
||||
(let ([r (apply string-append
|
||||
(add-between (map author->string r) " and "))])
|
||||
(let ([r (string-join (map author->string r) " and ")])
|
||||
(hash-set! authors* author r)
|
||||
r))))
|
||||
|
||||
|
@ -321,14 +410,23 @@
|
|||
(web-path "www" "techreports" file))
|
||||
file))
|
||||
|
||||
(define (make-bib-table)
|
||||
(apply table width: "98%" cellspacing: 0 cellpadding: 6 border: 0
|
||||
align: 'center style: "font-size: 75%;"
|
||||
(for/list ([bib bibs] [n (in-naturals)])
|
||||
(define old-techreports
|
||||
@page[#:file "techreports/" #:title "Old PLT Technical Reports"
|
||||
#:part-of 'learning]{
|
||||
@p{@strong{Note:} the entries on this page are outdated, please see the new
|
||||
@techreports page.}
|
||||
@p{PLT publishes technical reports about some of its tools and libraries so
|
||||
that scholars who wish to give proper credit to some of our innovations
|
||||
have a definite citation. Each entry below provides the full pdf and a
|
||||
bibtex entry; some of the bibtex entries provide additional citations to
|
||||
published papers.}
|
||||
@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]}}})))
|
||||
@a[href: (hash-ref bib '#:html-url)]{[html]}}})}})
|
||||
|
|
Loading…
Reference in New Issue
Block a user