June 2018 Update
This commit is contained in:
parent
ba8067c3b7
commit
22f33d4004
5278 changed files with 84726 additions and 14379 deletions
|
|
@ -0,0 +1,4 @@
|
|||
while($nil != current){
|
||||
console printLine(current Item).
|
||||
current := current Next.
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
Base.start(ll::LinkedList) = ll.head
|
||||
Base.done(ll::LinkedList{T}, st::AbstractNode{T}) where T = st isa EmptyNode
|
||||
Base.next(ll::LinkedList{T}, st::AbstractNode{T}) where T = st.data, st.next
|
||||
|
||||
lst = LinkedList{Int}()
|
||||
push!(lst, 1)
|
||||
push!(lst, 2)
|
||||
push!(lst, 3)
|
||||
|
||||
for n in lst
|
||||
print(n, " ")
|
||||
end
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
implement Command;
|
||||
|
||||
include "sys.m";
|
||||
sys: Sys;
|
||||
|
||||
include "draw.m";
|
||||
|
||||
include "sh.m";
|
||||
|
||||
init(nil: ref Draw->Context, nil: list of string)
|
||||
{
|
||||
sys = load Sys Sys->PATH;
|
||||
|
||||
l := list of {1, 2, 3, 4, 5};
|
||||
|
||||
# the unary 'tl' operator gets the tail of a list
|
||||
for (; l != nil; l = tl l)
|
||||
sys->print("%d\n", hd l);
|
||||
# the unary 'hd' operator gets the head of a list
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
use MONKEY_TYPING;
|
||||
use MONKEY-TYPING;
|
||||
augment class Pair {
|
||||
method traverse () {
|
||||
gather loop (my $l = self; $l; $l.=value) {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
Here is a basic list definition
|
||||
|
||||
sealed trait List[+A]
|
||||
case class Cons[+A](head: A, tail: List[A]) extends List[A]
|
||||
case object Nil extends List[Nothing]
|
||||
*/
|
||||
|
||||
def traverse[A](as: List[A]): Unit = as match {
|
||||
case Nil => print("End")
|
||||
case Cons(h, t) => {
|
||||
print(h + " ")
|
||||
traverse(t)
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue