!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ Safe-Inferred  Synonym for  lua_Number. See  lua_Number in Lua Reference Manual. Synonym for  lua_Integer. See  lua_Integer in Lua Reference Manual. Synonym for  lua_CFunction. See  lua_CFunction in Lua Reference Manual. Synonym for  lua_Writer. See  lua_Writer in Lua Reference Manual. Synonym for  lua_Reader. See  lua_Reader in Lua Reference Manual. Synonym for  lua_Alloc. See  lua_Alloc in Lua Reference Manual. Synonym for  lua_State *. See  lua_State in Lua Reference Manual.O  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"!  N  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNNone 24MlVfA value that can be pushed and poped from the Lua stack. All instances are natural, except following:LuaState0 push ignores its argument, pushes current state()+ push ignores its argument, just pushes nilPtr ()B pushes light user data, peek checks for lightuserdata or userdata;See "A note about integer functions" for integer functions.WMPushes a value onto Lua stack, casting it into meaningfully nearest Lua type.XCheck if at index nB there is a convertible Lua value and if so return it wrapped in Just . Return Nothing otherwise.Y<Lua type id code of the vaule expected. Parameter is unused.ZEnumeration used by gc function.c"Enumeration used as type tag. See lua_type in Lua Reference Manual.sSee  LUA_MULTRET in Lua Reference Manual.tSee  lua_settop in Lua Reference Manual.uSee lua_createtable in Lua Reference Manual.vSee  lua_objlen in Lua Reference Manual.wSee lua_pop in Lua Reference Manual.xSee  lua_newtable in Lua Reference Manual.ySee lua_pushcclosure in Lua Reference Manual.zSee lua_pushcfunction in Lua Reference Manual.{See  lua_strlen in Lua Reference Manual.|See lua_type in Lua Reference Manual.}See lua_isfunction in Lua Reference Manual.~See  lua_istable in Lua Reference Manual.8Try to convert Lua array at given index to Haskell list.See lua_islightuserdata in Lua Reference Manual.See  lua_isnil in Lua Reference Manual.See  lua_isboolean in Lua Reference Manual.See  lua_isthread in Lua Reference Manual.See lua_none in Lua Reference Manual.See  lua_noneornil in Lua Reference Manual.See LUA_REGISTRYINDEX in Lua Reference Manual.See LUA_ENVIRONINDEX in Lua Reference Manual.See LUA_GLOBALSINDEX in Lua Reference Manual.See lua_upvalueindex in Lua Reference Manual.See  lua_atpanic in Lua Reference Manual.See  lua_tostring in Lua Reference Manual.See  lua_tothread in Lua Reference Manual.See lua_touserdata in Lua Reference Manual.See  lua_typename in Lua Reference Manual.See  lua_xmove in Lua Reference Manual.See  lua_yield in Lua Reference Manual.See lua_checkstack in Lua Reference Manual.See  lua_newstate and  luaL_newstate in Lua Reference Manual.See  lua_close in Lua Reference Manual.See  lua_concat in Lua Reference Manual.See lua_call and lua_call in Lua Reference Manual.See  lua_pcall in Lua Reference Manual.See  lua_cpcall in Lua Reference Manual.See  lua_getfield in Lua Reference Manual.See  lua_setfield in Lua Reference Manual.See  lua_getglobal in Lua Reference Manual.See  lua_setglobal in Lua Reference Manual.See  luaL_openlibs in Lua Reference Manual.See lua_dump in Lua Reference Manual.See  lua_equal in Lua Reference Manual.This is a convenience function to implement error propagation convention described in [Error handling in hslua](#g:1). hslua doesn't implement  lua_errork function from Lua C API because it's never safe to use. (see [Error handling in hslua](#g:1) for details)See lua_gc in Lua Reference Manual.See  lua_getfenv in Lua Reference Manual.See lua_getmetatable in Lua Reference Manual.See  lua_gettable in Lua Reference Manual.See  lua_gettop in Lua Reference Manual.See  lua_insert in Lua Reference Manual.See lua_iscfunction in Lua Reference Manual.See  lua_isnumber in Lua Reference Manual.See  lua_isstring in Lua Reference Manual.See lua_isuserdata in Lua Reference Manual.See  lua_lessthan in Lua Reference Manual.See  luaL_loadfile in Lua Reference Manual.See luaL_loadstring in Lua Reference Manual.See  lua_newthread in Lua Reference Manual.See lua_newuserdata in Lua Reference Manual.See lua_next in Lua Reference Manual.See lua_pushboolean in Lua Reference Manual.See lua_pushinteger in Lua Reference Manual.See lua_pushlightuserdata in Lua Reference Manual.See  lua_pushnil in Lua Reference Manual.See lua_pushnumber in Lua Reference Manual.See lua_pushstring in Lua Reference Manual.(Push a list to Lua stack as a Lua array.See lua_pushthread in Lua Reference Manual.See  lua_pushvalue in Lua Reference Manual.See  lua_rawequal in Lua Reference Manual.See  lua_rawget in Lua Reference Manual.See  lua_rawgeti in Lua Reference Manual.See  lua_rawset in Lua Reference Manual.See  lua_rawseti in Lua Reference Manual.See  lua_remove in Lua Reference Manual.See  lua_replace in Lua Reference Manual.See  lua_resume in Lua Reference Manual.See  lua_setfenv in Lua Reference Manual.See lua_setmetatable in Lua Reference Manual.See  lua_settable in Lua Reference Manual.See  lua_status in Lua Reference Manual.See  lua_toboolean in Lua Reference Manual.See lua_tocfunction in Lua Reference Manual.See  lua_tointeger in Lua Reference Manual.See  lua_tonumber in Lua Reference Manual.See  lua_topointer in Lua Reference Manual.See  lua_register in Lua Reference Manual.See luaL_newmetatable in Lua Reference Manual.See  luaL_argerrorj in Lua Reference Manual. Contrary to the manual, Haskell function does return with value less than zero.See luaL_ref in Lua Reference Manual.See  luaL_unref in Lua Reference Manual.Like  getglobal!, but knows about packages. e. g. getglobal l "math.sin"returns correct resultqCreate new foreign Lua function. Function created can be called by Lua engine. Remeber to free the pointer with  freecfunction.aConvert a Haskell function to Lua function. Any Haskell function can be converted provided that:)all arguments are instances of StackValue9return type is IO t, where t is an instance of StackValueOAny Haskell exception will be converted to a string and returned as Lua error.#Free function pointer created with  newcfunction.Call a Lua procedure. Use as: .callproc l "proc" "abc" (1::Int) (5.0::Double)Call a Lua function. Use as: 8Just v <- callfunc l "proc" "abc" (1::Int) (5.0::Double)kPushes Haskell function converted to a Lua function. All values created will be garbage collected. Use as: 2Lua.pushhsfunction l myfun Lua.setglobal l "myfun"You are not allowed to use  lua_errork anywhere, but use an error code of (-1) to the same effect. Push error message as the sole return value.Pushes _raw_ Haskell function converted to a Lua function. Raw Haskell functions collect parameters from the stack and return a ; that represents number of return values left in the stack.;Imports a Haskell function and registers it at global name.?Imports a raw Haskell function and registers it at global name.OPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~OPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ܣcmlkjihgfedZba`_^]\[stuvwxyz{|}~rqVWXYSTUpQROPonOPQRSTUVWXYZba`_^]\[c mlkjihgfednopqrstuvwxyz{|}~       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ hslua-0.4.1Scripting.Lua.Raw Scripting.Lua LuaNumber LuaInteger LuaCFunction LuaWriter LuaReaderLuaAllocLuaState c_luaL_unref c_luaL_refc_luaL_argerrorc_luaL_newmetatablec_luaL_newstatec_luaL_openlibs c_lua_concat c_lua_next c_lua_errorc_lua_gc c_lua_status c_lua_resume c_lua_yield c_lua_dump c_lua_load c_lua_cpcall c_lua_pcall c_lua_call c_lua_setfenvc_lua_setmetatable c_lua_rawseti c_lua_rawsetc_lua_setfieldc_lua_settable c_lua_getfenvc_lua_getmetatablec_lua_newuserdatac_lua_createtable c_lua_rawgeti c_lua_rawgetc_lua_getfieldc_lua_gettablec_lua_pushthreadc_lua_pushlightuserdatac_lua_pushbooleanc_lua_pushcclosurec_lua_pushstringc_lua_pushlstringc_lua_pushintegerc_lua_pushnumber c_lua_pushnilc_lua_topointerc_lua_tothreadc_lua_touserdatac_lua_tocfunction c_lua_objlenc_lua_tolstringc_lua_tobooleanc_lua_tointegerc_lua_tonumberc_lua_lessthanc_lua_rawequal c_lua_equalc_lua_typename c_lua_typec_lua_isuserdatac_lua_iscfunctionc_lua_isstringc_lua_isnumber c_lua_xmovec_lua_checkstack c_lua_replace c_lua_insert c_lua_removec_lua_pushvalue c_lua_settop c_lua_gettop c_lua_atpanicc_lua_newthread c_lua_closec_lua_newstate LuaCallFunc callfunc' LuaCallProc callproc' LuaImport luaimport'luaimportargerror StackValuepushpeek valuetype GCCONTROL GCSETSTEPMUL GCSETPAUSEGCSTEPGCCOUNTBGCCOUNT GCCOLLECT GCRESTARTGCSTOPLTYPETTHREAD TUSERDATA TFUNCTIONTTABLETSTRINGTNUMBERTLIGHTUSERDATATBOOLEANTNILTNONEhsmethod__call_addrhsmethod__gc_addr mkWrappermkStringReadermkStringWritermultretsettop createtableobjlenpopnewtable pushcclosure pushcfunctionstrlenltype isfunctionistabletolistislightuserdataisnil isbooleanisthreadisnone isnoneornil registryindex environindex globalsindex upvalueindexatpanictostringtothread touserdatatypenamexmoveyield checkstacknewstatecloseconcatcallpcallcpcallgetfieldsetfield getglobal setglobalopenlibsdumpequallerrorgcgetfenv getmetatablegettablegettopinsert iscfunctionisnumberisstring isuserdatalessthanloadfile loadstring newthread newuserdatanext pushboolean pushintegerpushlightuserdatapushnil pushnumber pushstringpushlist pushthread pushvaluerawequalrawgetrawgetirawsetrawsetiremovereplaceresumesetfenv setmetatablesettablestatus toboolean tocfunction tointegertonumber topointerregister newmetatableargerrorrefunref maybepeek getglobal2 typenameindex newcfunction luaimport freecfunctioncallproccallfunc hsmethod__gchsmethod__callpushhsfunctionpushrawhsfunctionregisterhsfunctionregisterrawhsfunction$fLuaCallFunc(->)$fLuaCallProc(->)$fLuaCallFuncIO$fLuaCallProcIO$fLuaImport(->) $fLuaImportIO$fStackValue()$fStackValueLuaState$fStackValuePtr$fStackValueFunPtr$fStackValueBool$fStackValue[]$fStackValueByteString$fStackValueInt$fStackValueDouble$fStackValueInt64 $fEnumLTYPEbaseForeign.C.TypesCInt