mirror of
https://codeberg.org/ProgramSnail/lang_2023.git
synced 2025-12-28 01:38:44 +00:00
bug fixes
This commit is contained in:
parent
bb8b32a7c8
commit
8647918f37
6 changed files with 87 additions and 102 deletions
|
|
@ -19,17 +19,10 @@ decl error : \string -> \unit
|
|||
//
|
||||
|
||||
decl not : \bool -> \bool
|
||||
def not : x = {
|
||||
; print-anything:[bool] x
|
||||
; print-anything:[bool]
|
||||
(match x with
|
||||
| true -> false
|
||||
| false -> true)
|
||||
|
||||
return (match x with
|
||||
| true -> false
|
||||
| false -> true)
|
||||
}
|
||||
def not : x =
|
||||
(match x with
|
||||
| true -> false
|
||||
| false -> true)
|
||||
|
||||
//
|
||||
|
||||
|
|
@ -195,10 +188,6 @@ decl ( -- ) : \int -> \int -> \int`0
|
|||
def ( -- ) : begin end = {
|
||||
var current = begin
|
||||
return (while current < end do {
|
||||
; print-anything:[string] "iteration:"
|
||||
; print-anything:[int] begin
|
||||
; print-anything:[int] current
|
||||
; print-anything:[int] end
|
||||
; current += 1
|
||||
bring current - 1
|
||||
})
|
||||
|
|
@ -253,12 +242,12 @@ def print-anything : x = \io..print: (x..show:)
|
|||
// return a-copy
|
||||
// }
|
||||
|
||||
// struct \array 'a = & 'a // 'a`0
|
||||
struct \array 'a = & 'a`0
|
||||
|
||||
// namespace \array {
|
||||
// decl of : 'a`0 -> \array['a]
|
||||
// def of : x = $array['a] & data = x
|
||||
// }
|
||||
namespace \array {
|
||||
decl of : 'a`0 -> \array['a]
|
||||
def of : x = $array['a] & x
|
||||
}
|
||||
|
||||
struct \three-tuple = & \string & \string & \string
|
||||
|
||||
|
|
@ -273,18 +262,20 @@ exec main {
|
|||
|
||||
if n <= 0 then error: "n can't be less then 1"
|
||||
|
||||
// var x = (for _ in 0--n do scan-int:) // $array[int] & 0
|
||||
// var x = (for _ in 0--n do scan-int:)
|
||||
var x = \array[int]..of: (for _ in 0--n do scan-int:)
|
||||
|
||||
// var k? = if n < 2 then n * 2 +. 3 in
|
||||
// , print-anything:[string] "n < 2"
|
||||
// , print-anything:[int] k
|
||||
//
|
||||
// ; print-anything:[int] n
|
||||
//
|
||||
// ; print-int: ::x 123
|
||||
//
|
||||
// var & a & b & c = scan-three-t:
|
||||
// ; \io..print: b
|
||||
// var & d & e & f = scan-three:
|
||||
// ; \io..print: e
|
||||
|
||||
var k? = if n < 2 then n * 2 +. 3 in
|
||||
, print-anything:[string] "n < 2"
|
||||
, print-anything:[int] k
|
||||
|
||||
; print-anything:[int] n
|
||||
|
||||
; print-int: ::x 123
|
||||
|
||||
var & a & b & c = scan-three-t:
|
||||
; \io..print: b
|
||||
var & d & e & f = scan-three:
|
||||
; \io..print: e
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue