fa/examples/output_file.fa
Ari Archer c30a3de674
Deprecate mutability contexts
Signed-off-by: Ari Archer <ari.web.xyz@gmail.com>
2022-07-27 13:41:50 +03:00

38 lines
589 B
Text

include 'std/args.fa'
include 'std/lstd.fa'
include 'std/logic.fa'
include 'std/mem/gmem.fa'
macro MAX_FILE 8092 end
fun main [ str str int ] int eo
argc 2 eql #not if
"Usage: <file>" #error
end
0 1 #get_arg %SYS_open sys 3 as fd
0 @fd deref lst if
"Invalid input file" #error
end
%MAX_FILE #malloc as file_buffer
%MAX_FILE
@file_buffer deref
@fd deref
%SYS_read sys 4
@file_buffer deref %STDOUT #fputs
%MAX_FILE @file_buffer deref
#mfree pop
@fd deref %SYS_close sys 2
%EXIT_SUCCESS
end
#main #exit