"plumb" plan9-tool-path ;
: (massage-pathname) ( file line -- str )
- over file-info regular-file?
+ over file-info regular-file?
[ number>string 2array ":" join ]
[ drop ] if ;
[ [ bitand ] dip swap 0 = [ 2drop ] [ [ 1.0 ] 2dip swap set-nth ] if ]
map-index-compose 2cleave ;
- : >pov ( byte -- symbol )
+: >pov ( byte -- symbol )
{
pov-neutral
pov-up
! Based on org.gjt.sp.jedit.syntax.TokenMarker
SYMBOLS: line last-offset position context
- whitespace-end seen-whitespace-end?
- escaped? process-escape? delegate-end-escaped? ;
+whitespace-end seen-whitespace-end?
+escaped? process-escape? delegate-end-escaped? ;
: current-rule ( -- rule )
context get in-rule>> ;
<PRIVATE
- : (closure) ( vertex set quot: ( vertex -- edges ) -- )
+: (closure) ( vertex set quot: ( vertex -- edges ) -- )
2over ?adjoin [
[ dip ] keep [ (closure) ] 2curry each
] [ 3drop ] if ; inline recursive
- : new-empty-set-like ( exemplar -- set )
+: new-empty-set-like ( exemplar -- set )
f swap set-like clone ; inline
PRIVATE>
: first4 ( seq -- first second third fourth )
3 swap bounds-check nip first4-unsafe ; inline
- : ?nth ( n seq -- elt/f )
+: ?nth ( n seq -- elt/f )
2dup bounds-check? [ nth-unsafe ] [ 2drop f ] if ; inline
: ?set-nth ( elt n seq -- )
cr 256 0 cairo_rel_line_to
cr cairo_stroke ;
- USING: quotations ui.gadgets.panes sequences ;
- : samples ( -- )
+USING: quotations ui.gadgets.panes sequences ;
+: samples ( -- )
{
arc-gadget clip-gadget clip-image-gadget dash-gadget
gradient-gadget text-gadget utf8-gadget
: 1temp2d ( quot: ( a b c -- d e f ) -- quot ) '[ rot @ -rot ] ; inline
: 2temp2d ( quot: ( a b c d -- e f g h ) -- quot ) '[ 2 4 0 nrotated @ 2 4 0 -nrotated ] ; inline
- : (closure-limit) ( vertex set quot: ( vertex -- edges ) i n -- )
+: (closure-limit) ( vertex set quot: ( vertex -- edges ) i n -- )
2dup < [
[ 1 + ] dip
2reach ?adjoin [
{ 500 400 } init-board-gadget
board-init add-board ;
- :: display-window ( -- )
+:: display-window ( -- )
first-gadget :> g1
second-gadget :> g2
{ g1 g2 } horizontal 0 f <window> ! initalize two boards
] with-file-reader
] [ drop ] if ;
- : gemini-ls ( args -- )
+: gemini-ls ( args -- )
[ PAGE ] [ "-l" = ] bi* print-links ;
: gemini-quit ( -- )
USING: alien alien.c-types alien.libraries alien.syntax combinators system ;
- IN: glfw.ffi
+IN: glfw.ffi
- <<
- "glfw" {
- { [ os windows? ] [ "glfw.dll" ] }
- { [ os macosx? ] [ "glfw.dylib" ] }
- { [ os unix? ] [ "libglfw.so" ] }
- } cond cdecl add-library
- >>
+<<
+"glfw" {
+ { [ os windows? ] [ "glfw.dll" ] }
+ { [ os macosx? ] [ "glfw.dylib" ] }
+ { [ os unix? ] [ "libglfw.so" ] }
+} cond cdecl add-library
+>>
- LIBRARY: glfw
+LIBRARY: glfw
- FUNCTION: void* glfwGetCurrentContext ( )
- FUNCTION: void glfwMakeContextCurrent ( void* window )
+FUNCTION: void* glfwGetCurrentContext ( )
+FUNCTION: void glfwMakeContextCurrent ( void* window )
] with-file-reader
] [ drop ] if ;
- : gopher-ls ( args -- )
+: gopher-ls ( args -- )
[ PAGE ] [ "-l" = ] bi* print-links ;
: gopher-quit ( -- )
: all-docs-paths ( -- seq ) all-vocabs modern-docs-paths ;
- : all-tests-paths ( -- seq ) all-vocabs modern-tests-paths ;
+: all-tests-paths ( -- seq ) all-vocabs modern-tests-paths ;
: all-paths ( -- seq )
[
! (This point is to ensure that caching and/or recursion limits,
! if it is a concern, is correctly handled).
- : next ( seq -- newseq )
+: next ( seq -- newseq )
dup 2 tail* over length [ swap - ] curry map
[ dupd swap nth ] map 0 [ + ] reduce suffix ;
MAIN: majn
! ! SLOT
- SLOT: komba
+SLOT: komba
! ! SYNTAX
<<