:- style_check(-singleton),style_check(-no_effect).
:- ensure_loaded(core).
:- ensure_loaded('cosmos').
:- ensure_loaded('x').

crequire(S,Y) :- creq(S,Y).
cstart :- call_comp("interpreter",[]).
ceval(S) :- call_comp("query",[S]).
cmod(S) :- call_comp("compile",[S]).
crun(S) :- call_comp("run_pl",[S]).
cli(X) :- cosmos(X).

call_comp(S1,L) :- style_check(-singleton),style_check(-no_effect),comp2(X),get_(X,S1,X2),!,call_cl(X2,L).

cquery(S) :- ceval(S).

:- ensure_loaded('comp2').

main(X) :- style_check(-singleton),style_check(-no_effect),current_prolog_flag(argv, A), list_atom_string(A, B), cosmos(B).

:- prolog_load_context(directory, Directory),
	atom_concat(Directory, '/libs', Dir),%writeln(Dir),
	assert(user:file_search_path(cosmos, Directory)).
	%writeln(Dir),p,creq("x",z).