call
] with-scope ; inline
+SYMBOL: interactive-vocabs
+
+{
+ "arrays"
+ "assocs"
+ "combinators"
+ "compiler.errors"
+ "continuations"
+ "debugger"
+ "definitions"
+ "editors"
+ "generic"
+ "help"
+ "inspector"
+ "io"
+ "io.files"
+ "kernel"
+ "listener"
+ "math"
+ "memory"
+ "namespaces"
+ "prettyprint"
+ "sequences"
+ "slicing"
+ "sorting"
+ "strings"
+ "syntax"
+ "tools.annotations"
+ "tools.crossref"
+ "tools.memory"
+ "tools.profiler"
+ "tools.test"
+ "tools.time"
+ "vocabs"
+ "vocabs.loader"
+ "words"
+ "scratchpad"
+} interactive-vocabs set-global
+
: with-interactive-vocabs ( quot -- )
[
"scratchpad" in set
- {
- "arrays"
- "assocs"
- "combinators"
- "compiler.errors"
- "continuations"
- "debugger"
- "definitions"
- "editors"
- "generic"
- "help"
- "inspector"
- "io"
- "io.files"
- "kernel"
- "listener"
- "math"
- "memory"
- "namespaces"
- "prettyprint"
- "sequences"
- "slicing"
- "sorting"
- "strings"
- "syntax"
- "tools.annotations"
- "tools.crossref"
- "tools.memory"
- "tools.profiler"
- "tools.test"
- "tools.time"
- "vocabs"
- "vocabs.loader"
- "words"
- "scratchpad"
- } set-use
+ interactive-vocabs get set-use
call
] with-scope ; inline
USING: kernel io io.files splitting strings
hashtables sequences assocs math namespaces prettyprint
- math.parser combinators arrays sorting ;
+ math.parser combinators arrays sorting unicode.case ;
IN: benchmark.knucleotide
USING: io io.files io.streams.duplex kernel sequences
sequences.private strings vectors words memoize splitting
-hints ;
+hints unicode.case ;
IN: benchmark.reverse-complement
MEMO: trans-map ( -- str )
! Adapted from cryptlib.h
! Tested with cryptlib 3.3.1.0
USING: cryptlib.libcl kernel hashtables alien math
-namespaces sequences assocs libc alien.c-types continuations ;
+namespaces sequences assocs libc alien.c-types alien.accessors continuations ;
IN: cryptlib
! See http://factorcode.org/license.txt for BSD license.
USING: kernel peg strings promises sequences math math.parser
namespaces words quotations arrays hashtables io
- io.streams.string assocs memoize ;
+ io.streams.string assocs memoize ascii ;
IN: fjsc
TUPLE: ast-number value ;
! Copyright (C) 2007 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: parser-combinators regexp lazy-lists sequences kernel
-promises strings ;
+promises strings unicode.case ;
IN: globs
<PRIVATE
USING: arrays combinators.lib io io.streams.string
-kernel math math.parser namespaces prettyprint
-sequences splitting strings ;
+ kernel math math.parser namespaces prettyprint
+ sequences splitting strings ascii ;
IN: hexdump
<PRIVATE
USING: arrays combinators io io.binary io.files io.paths
io.utf16 kernel math math.parser namespaces sequences
-splitting strings assocs ;
+splitting strings assocs unicode.categories ;
IN: id3
! Copyright (C) 2007 Doug Coleman, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: arrays calendar io io.sockets kernel match namespaces
-sequences splitting strings continuations threads ;
+sequences splitting strings continuations threads ascii ;
IN: irc
! "setup" objects
! See http://factorcode.org/license.txt for BSD license.
USING: kernel parser-combinators namespaces sequences promises strings
assocs math math.parser math.vectors math.functions
- lazy-lists hashtables ;
+ lazy-lists hashtables ascii ;
IN: json.reader
! Grammar for JSON from RFC 4627
! Copyright (C) 2007 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
-USING: alien arrays assocs combinators.lib io kernel
+USING: alien alien.accessors arrays assocs combinators.lib io kernel
macros math namespaces prettyprint quotations sequences
-vectors vocabs words ;
-USING: html.elements slots.private tar ;
+vectors vocabs words html.elements slots.private tar ;
IN: lint
SYMBOL: def-hash
! Copyright (C) 2006 Chris Double.
! See http://factorcode.org/license.txt for BSD license.
USING: kernel strings math sequences lazy-lists words
-math.parser promises parser-combinators ;
+math.parser promises parser-combinators unicode.categories ;
IN: parser-combinators.simple
: 'digit' ( -- parser )
! Copyright (C) 2007 Chris Double.\r
! See http://factorcode.org/license.txt for BSD license.\r
USING: kernel parser words arrays strings math.parser sequences \r
- quotations vectors namespaces math assocs continuations peg ;\r
+ quotations vectors namespaces math assocs continuations peg\r
+ unicode.categories ;\r
IN: peg.ebnf\r
\r
TUPLE: ebnf-non-terminal symbol ;\r
! Copyright (C) 2007 Chris Double.
! See http://factorcode.org/license.txt for BSD license.
USING: kernel sequences strings namespaces math assocs shuffle
- vectors arrays combinators.lib memoize math.parser match ;
+ vectors arrays combinators.lib memoize math.parser match
+ unicode.categories ;
IN: peg
TUPLE: parse-result remaining ast ;
! Copyright (c) 2007 Aaron Schaefer.
! See http://factorcode.org/license.txt for BSD license.
-USING: combinators.lib kernel math.ranges math.text.english sequences strings ;
+USING: combinators.lib kernel math.ranges math.text.english sequences strings
+ ascii ;
IN: project-euler.017
! http://projecteuler.net/index.php?section=problems&id=17
! Copyright (c) 2007 Aaron Schaefer.
! See http://factorcode.org/license.txt for BSD license.
USING: io.files kernel math math.parser namespaces sequences sorting splitting
- strings system vocabs ;
+ strings system vocabs ascii ;
IN: project-euler.022
! http://projecteuler.net/index.php?section=problems&id=22
! See http://factorcode.org/license.txt for BSD license.
USING: kernel sequences arrays vectors namespaces math strings
- combinators continuations quotations io assocs ;
+ combinators continuations quotations io assocs ascii ;
IN: prolog
USING: arrays combinators kernel lazy-lists math math.parser
namespaces parser parser-combinators parser-combinators.simple
promises quotations sequences combinators.lib strings
-assocs prettyprint.backend memoize ;
+assocs prettyprint.backend memoize unicode.case unicode.categories ;
USE: io
IN: regexp
! See http://factorcode.org/license.txt for BSD license.
USING: arrays assocs kernel math math.vectors namespaces
-quotations sequences sequences.lib sequences.private strings ;
+quotations sequences sequences.lib sequences.private strings unicode.case ;
IN: roman
<PRIVATE
! Copyright (C) 2006 Daniel Ehrenberg
! See http://factorcode.org/license.txt for BSD license.
-USING: kernel math sequences strings io combinators ;
+USING: kernel math sequences strings io combinators ascii ;
IN: rot13
: rotate ( ch base -- ch ) tuck - 13 + 26 mod + ;
USING: combinators.lib kernel sequences math namespaces assocs
-random sequences.private shuffle math.functions mirrors ;
-USING: arrays math.parser sorting strings ;
+random sequences.private shuffle math.functions mirrors
+arrays math.parser sorting strings ascii ;
IN: sequences.lib
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Copyright (C) 2005, 2006 Daniel Ehrenberg\r
! See http://factorcode.org/license.txt for BSD license.\r
USING: io io.streams.string kernel math namespaces sequences\r
-strings circular prettyprint debugger ;\r
+strings circular prettyprint debugger unicode.categories ;\r
IN: state-parser\r
\r
! * Basic underlying words\r
USING: math arrays sequences kernel splitting strings ;
IN: strings.lib
-: char>digit ( c -- i ) 48 - ;
+! : char>digit ( c -- i ) 48 - ;
-: string>digits ( s -- seq ) [ char>digit ] { } map-as ;
+! : string>digits ( s -- seq ) [ char>digit ] { } map-as ;
-: >Upper ( str -- str )
- dup empty? [
- unclip ch>upper 1string swap append
- ] unless ;
+! : >Upper ( str -- str )
+! dup empty? [
+! unclip ch>upper 1string swap append
+! ] unless ;
-: >Upper-dashes ( str -- str )
- "-" split [ >Upper ] map "-" join ;
+! : >Upper-dashes ( str -- str )
+! "-" split [ >Upper ] map "-" join ;
! See http://factorcode.org/license.txt for BSD license.
USING: xml.errors xml.data xml.utilities xml.char-classes
xml.entities kernel state-parser kernel namespaces strings math
-math.parser sequences assocs arrays splitting combinators ;
+math.parser sequences assocs arrays splitting combinators unicode.case ;
IN: xml.tokenize
! XML namespace processing: ns = namespace
USING: io io.streams.string io.files kernel math namespaces
prettyprint sequences arrays generic strings vectors
xml.char-classes xml.data xml.errors xml.tokenize xml.writer
-xml.utilities state-parser assocs ;
+xml.utilities state-parser assocs unicode.categories ;
IN: xml
! -- Overall parser with data tree
-USING: kernel strings assocs sequences hashtables sorting ;
+USING: kernel strings assocs sequences hashtables sorting
+ unicode.case unicode.categories ;
IN: xmode.keyword-map
! Based on org.gjt.sp.jedit.syntax.KeywordMap
USING: kernel namespaces xmode.rules xmode.tokens
xmode.marker.state xmode.marker.context xmode.utilities
xmode.catalog sequences math assocs combinators combinators.lib
-strings regexp splitting parser-combinators ;
+strings regexp splitting parser-combinators ascii unicode.case ;
! Based on org.gjt.sp.jedit.syntax.TokenMarker
USING: xmode.tokens xmode.keyword-map kernel
-sequences vectors assocs strings memoize regexp ;
+sequences vectors assocs strings memoize regexp unicode.case ;
IN: xmode.rules
TUPLE: string-matcher string ignore-case? ;