about summary refs log tree commit diff stats
path: root/apps/ex9
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2021-03-03 22:09:50 -0800
committerKartik K. Agaram <vc@akkartik.com>2021-03-03 22:21:03 -0800
commit71e4f3812982dba2efb471283d310224e8db363e (patch)
treeea111a1acb8b8845dbda39c0e1b4bac1d198143b /apps/ex9
parentc6b928be29ac8cdb4e4d6e1eaa20420ff03e5a4c (diff)
downloadmu-71e4f3812982dba2efb471283d310224e8db363e.tar.gz
7842 - new directory organization
Baremetal is now the default build target and therefore has its sources
at the top-level. Baremetal programs build using the phase-2 Mu toolchain
that requires a Linux kernel. This phase-2 codebase which used to be at
the top-level is now under the linux/ directory. Finally, the phase-2 toolchain,
while self-hosting, has a way to bootstrap from a C implementation, which
is now stored in linux/bootstrap. The bootstrap C implementation uses some
literate programming tools that are now in linux/bootstrap/tools.

So the whole thing has gotten inverted. Each directory should build one
artifact and include the main sources (along with standard library). Tools
used for building it are relegated to sub-directories, even though those
tools are often useful in their own right, and have had lots of interesting
programs written using them.

A couple of things have gotten dropped in this process:
  - I had old ways to run on just a Linux kernel, or with a Soso kernel.
    No more.
  - I had some old tooling for running a single test at the cursor. I haven't
    used that lately. Maybe I'll bring it back one day.

The reorg isn't done yet. Still to do:
  - redo documentation everywhere. All the README files, all other markdown,
    particularly vocabulary.md.
  - clean up how-to-run comments at the start of programs everywhere
  - rethink what to do with the html/ directory. Do we even want to keep
    supporting it?

In spite of these shortcomings, all the scripts at the top-level, linux/
and linux/bootstrap are working. The names of the scripts also feel reasonable.
This is a good milestone to take stock at.
Diffstat (limited to 'apps/ex9')
-rwxr-xr-xapps/ex9bin260 -> 0 bytes
1 files changed, 0 insertions, 0 deletions
diff --git a/apps/ex9 b/apps/ex9
deleted file mode 100755
index 4e2ec963..00000000
--- a/apps/ex9
+++ /dev/null
Binary files differ
ik K. Agaram <vc@akkartik.com> 2015-05-10 12:50:28 -0700 1333' href='/akkartik/mu/commit/mu.vim?h=hlt&id=a6d9bd9b5b904db36657088e9abd370d546f086d'>a6d9bd9b ^
e3894819 ^
b38d7fff ^
a6d9bd9b ^



1ae4e0d9 ^
a6d9bd9b ^
31a9d39e ^

a6d9bd9b ^
2e534c0e ^
1ae4e0d9 ^
b94f150a ^
1ae4e0d9 ^
fbf0536d ^




77d5b5d6 ^
b38d7fff ^
e3894819 ^
1ae4e0d9 ^
fc2046a1 ^
8ebe8ef6 ^
38f0b91a ^
cbbcd47f ^
04afb4b0 ^
426009da ^
b38d7fff ^

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68





                                              

                                                                             




                                                              






                                                                    

                                    

                                                           
 

                                                                                      

                                                                                      


                                  
 


                                                           
                            
                              



                                                    
             
                                               

                                                
                                
                                                         
                                            
                              
                               




                                                
                                                                                                                                                
 
                                                                      
                                                                           
                                                                                    
                                                                                                                                                                                                                                                                
                 
                                                                                    
                                                                    
                                                                                  

                     
" Vim syntax file
" Language:    mu
" Maintainer:  Kartik Agaram <mu@akkartik.com>
" URL:         http://github.com/akkartik/mu
" License:     public domain
"
" Copy this into your ftplugin directory, and add the following to your vimrc
" or to .vim/ftdetect/mu.vim:
"   autocmd BufReadPost,BufNewFile *.mu,*.test set filetype=mu

let s:save_cpo = &cpo
set cpo&vim

" todo: why does this periodically lose syntax, like on file reload?
"   $ vim x.mu
"   :e
"? if exists("b:syntax")
"?   finish
"? endif
"? let b:syntax = "mu"

setlocal iskeyword=@,48-57,?,!,_,$,-
setlocal formatoptions-=t  " mu programs have long lines
setlocal formatoptions+=c  " but comments should still wrap

syntax match muComment /#.*$/ | highlight link muComment Comment
syntax match muSalientComment /##.*$/ | highlight link muSalientComment SalientComment
syntax match muComment /;.*$/ | highlight link muComment Comment
syntax match muSalientComment /;;.*$/ | highlight link muSalientComment SalientComment
set comments+=n:#
syntax match CommentedCode "#? .*"
let b:cmt_head = "#? "

" mu strings are inside [ ... ] and can span multiple lines
" don't match '[' at end of line, that's usually code
syntax region muString start=+\[[^\]]+ end=+\]+
syntax match muString "\[\]"
highlight link muString String
" mu syntax for representing the screen in scenarios
syntax region muScreen start=+ \.+ end=+\.$\|$+
highlight link muScreen muString

" mu literals
syntax match muNumber %[^ ]\+:literal/\?[^ ,]*%
syntax match muNumber %\<[0-9-]\?[0-9]\+\>%
syntax match muNumber %\<[0-9-]\?[0-9]\+/[^ ,]*%
highlight link muNumber Constant
syntax match muLabel "^\s\+[^ 0-9a-zA-Z{}#\[\]][^ ]*\s*$"
syntax match muLabel %[^ ]\+:label/\?[^ ,]*%
syntax match muLabel "<[^ ]*>"
highlight link muLabel Constant
syntax match muLiteral %[^ ]\+:type/\?[^ ,]*%
syntax match muLiteral %[^ ]\+:offset/\?[^ ,]*%
syntax match muLiteral %[^ ]\+:variant/\?[^ ,]*%
syntax match muLiteral %[^ ]\+:recipe/\?[^ ,]*%
highlight link muLiteral Constant
syntax keyword muKeyword default-space global-space new-default-space local-scope next-ingredient ingredient | highlight link muKeyword Constant

syntax match muDelimiter "[{}]" | highlight link muDelimiter Delimiter
syntax match muAssign " <- \|\<raw\>" | highlight link muAssign SpecialChar
syntax match muGlobal %[^ ]\+:global/\?[^ ,]*% | highlight link muGlobal SpecialChar
syntax keyword muControl reply reply-if reply-unless jump jump-if jump-unless loop loop-if loop-unless break break-if break-unless current-continuation continue-from create-delimited-continuation reply-delimited-continuation | highlight muControl ctermfg=3
" common keywords
syntax keyword muRecipe recipe recipe! before after | highlight muRecipe ctermfg=208
syntax keyword muScenario scenario | highlight muScenario ctermfg=34
syntax keyword muData container exclusive-container | highlight muData ctermfg=226

let &cpo = s:save_cpo