!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNoneplain old Object NoneEvents      experimentalZJoel Bjornson joel.bjornson@gmail.com, Niklas Broberg nibro@cs.chalmers.seNone 9IsHJscript class with function toHJScript for converting  instances to HJScript () -To keep track of number of created variables "HJScript Monad  Init state #>Evaluate a script returning a tuple of the produced value and  a block of code. $5Runs a script returning the value, the new state and  the block of code. %Adds a statement & Adds a block )Runs one script inside another Block as a Monoid Shows a HJScript ()  !"#$%&'()  !"#$%&'() !"#$%&'() experimentalZJoel Bjornson joel.bjornson@gmail.com, Niklas Broberg nibro@cs.chalmers.seNone*&Incrementing or decrementing numbers. : Assignment ; Plus with <for =for (var in object) { .. } >for (var in object) { .. } ?while @doWhile AdoIf BdoElse C doIfElse D/Alternative if-else syntax: isTrue ? (doA,doB) EBProviding a way of writing if-else expression as in: isTrue ? doA  | doB FOnly an if branch GNo else branch. H,Anonymous function, returning an expression IAnonymous void function. JFunction declaration KProcedure declaration. $Adds a return statement to a Block. Udelete a property Can only delete properties/'variables that are created implicitly, , not those declared with the var statement. Kreturns true if property was deleted. false if operation was not possible. V'Dereferencing operator, similar to the dot operator in JavaScript. ! E.g. document.forms => document # forms, same as forms document ]Accessing arrays. ^ Null value _ Converts to JString expression. `Casting an JObject a,Checks if an object is supported by browser D*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{ !#%&*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijG*+,-./0123456789:;DERMNSHIJK<=>?@ABCFGOPQTUVWXY[Z\]^_`acdebfghij! &%L#D*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNonelProperties for Array mMethods on array n Map array o mapArrayH pThrow away produced value. qSynonym for mapArrayH_ r(Select array elements with a condition. |Constructors for Array klmnopqr}|klmnopqrlmknopqr klmnopqr}| experimentalZJoel Bjornson joel.bjornson@gmail.com, Niklas Broberg nibro@cs.chalmers.seNone~ Constructors stuv~stuvstuvstuv~ experimentalZJoel Bjornson joel.bjornson@gmail.com, Niklas Broberg nibro@cs.chalmers.seNoneConstructors for Date *wxyz{|}~(wxyz{|}~(wxyz{|}~)wxyz{|}~  experimentalZJoel Bjornson joel.bjornson@gmail.com, Niklas Broberg nibro@cs.chalmers.seNone Math Class   experimentalZJoel Bjornson joel.bjornson@gmail.com, Niklas Broberg nibro@cs.chalmers.seNoneConstructors for RegExp   experimentalZJoel Bjornson joel.bjornson@gmail.com, Niklas Broberg nibro@cs.chalmers.seNone None  experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNoneDifferent node types  None  NoneNone  None experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNone                     experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNone !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\G !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\GZ[\XYVWTURSPQNOLMJKHIFGDEBC@A>?<=:;8967452301./,-*+()&'$%"# ! !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\ experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNone]^_`abcdefghijklmnopqrstuvwx]^_`abcdefghijklmnopqrstuvwx^]b_`acdefghikojlmnwxspqtruv]^_`abcdefghijklmnopqrstuvwxNoneConstructors for Date yz{|}~yz{|}~yz{|}~yz{|}~ experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNone experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNone      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxNoneXMLHttpRequest    NoneHttp 6Allowing path selections form XMLHttpRequest objects. 5instance HasDomSel (JsObject a XMLHttpRequest) where  toDomElement req = req  responseXML  documentElement  Post request Creates a new XMLHttpRequest  experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNone,     &&,     None !"   !" experimentalYJoel Bjornson joel.bjornson@gmail.com Niklas Broberg nibro@cs.chalmers.seNonei      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !" #$&%(')# !"#$$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                    !"#$%&'(())**++,,--..//001122334455667899::;;<<==>>??@@AABBCCDD%%EEFFGGHHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghhijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abccdefghijkl m n o p q r s t uvwxyz{|}~LHJScript-0.7.0HJScript.XMLGeneratorHJScript.Objects.ObjectHJScript.Events HJScript.LangHJScriptHJScript.Objects.ArrayHJScript.Objects.BooleanHJScript.Objects.DateHJScript.Objects.MathHJScript.Objects.RegExpHJScript.Objects.StringHJScript.Objects.ActiveXObjectHJScript.DOM.NodeTypesHJScript.DOM.NodeHJScript.DOM.AttributeNodeHJScript.DOM.TextNodeHJScript.DOM.NamedNodeMapHJScript.DOM.ElementNodeHJScript.DOM.XHTMLHJScript.DOM.WindowHJScript.Objects.JQueryHJScript.DOM.DocumentHJScript.Objects.XMLHttpRequest HJScript.AjaxHJScript.UtilsHJScript.Monad HJScript.DOM hsp-0.9.1HSP.XMLGenerator genEElement genElementasChild:=AttrasAttrObjectEventOnUnloadOnSubmitOnSelectOnResizeOnReset OnMouseUp OnMouseOver OnMouseOut OnMouseMove OnMouseDownOnLoadOnKeyUp OnKeyPress OnKeyDownOnFocusOnError OnDblclickOnClickOnChangeOnBlurOnAbort showEvent IsHJScript toHJScript HJScript' evalHJScript runHJScript outputStmt outputBlock newVarNum newVarName hjsInsidepreincpostincpredecpostdec.+..-..*../..&&..||..==..!=..>..<..>=..<=..=..+=.forforInforInVarwhiledoWhiledoIfdoElsedoIfElse?<|> doIfNoElsenoElsefunction procedure functionDecl procedureDeclevaluateHJScript callMethodcallVoidMethodvarvarWithinVarthiscallProcnewdelete##.recfirstxsecondy#!jnulljShow castObject hasFeatureifOpbreakcontinuetruefalseintfloatboolstringheadArr arrLengthpushmapArray mapArrayH mapArrayH_foreach filterArrayBooleanbooleanToStringvalueOfDategetDategetDaygetMonth getFullYeargetHours getMinutes getSecondsgetMilliseconds getUTCDay getUTCMonthgetUTCFullYear getUTCHours getUTCMinutes getUTCSecondsgetUTCMillisecondsgetTimegetTimezoneOffset getUTCDatesetDatesetMonth setFullYearsetYearsetHours setMinutes setSecondssetMillisecondssetTime setUTCDate setUTCMonthsetUTCFullYear setUTCHours setUTCMinutes setUTCSecondssetUTCMilliseconds dateToString toGMTString toUTCStringtoLocaleStringMathabsacosasinatancosexpfloorlogmaxminpowrandomroundsinsqrttanRegExptestexeccompile strLength toUpperCase toLowerCaseanchorbigblinkboldcharAt charCodeAt strConcatindexOfitalics lastIndexOflinkreplacesubstr substring ActiveXObject msXMLHttpDocumentTextNode AttributeNode ElementNodeNodeNodeType NodeNotation NodeDocFrag NodeDocType NodeDocument NodeCommentNodeProccInstr NodeEntetyRef NodeEntetyNodeCDataSectionNodeText NodeAttribute NodeElement nodeTypeValIsNode castToNode castFromNodenodeNamenodeType nodeValue ownerDocumentprefix cloneNodename specifiedvaluetextlength appendData deleteData insertData replaceData splitText substringData NamedNodeMap getNamedItemitemremoveNamedItem IsElementNode attributes childNodes firstChild lastChild localName nextSibling parentNodepreviousSiblingtagName scrollTop scrollTopVar scrollHeightscrollHeightVar appendChild getAttributegetAttributeNode hasAttribute hasAttributes hasChildNodes insertBefore normalizeremoveAttributeremoveAttributeNode removeChild replaceChild setAttributesetAttributeNodeTextareaTableRow TableHeader TableDataTableStyleSelectScreenOption NavigatorMetaLocationLink InputText InputSubmit InputResetInputTextInputReset InputRadio InputPassword InputHidden InputFile InputCheckbox InputButtonImageIFrameHistoryFramesetFrameFormBodyBaseAreaAnchorIsXHTMLElementasXHTMLElement classNameWindowwindowclosed defaultStatus winDocumentframes winLengthwinNameopenerparentselfstatustopalertblurcloseconfirm createPopupfocusmoveBymoveToopenpromtnavigatescrollByscrollToresizeByresizeToJQueryjQuery selectExprjSizegetemptyjValjSetValjTextjSetTextappendprependreadychangesubmitselectrunExpdocumentanchorsappletsembedsformsimageslinks stylesheets alinkColorbodycookiedocumentElementdomain lastModified linkColorreferrerurl vlinkColorcreateAttribute createElementcreateTextNodegetElementByIdgetElementsByTagNamewritewritelnXMLHttpRequest statusReqonReadyStateChange responseXML responseText readyStateopenReqsendReqsetRequestHeader IsReqParams toReqParams ReqParamsReqParam asyncGetReq asyncPostReqnoParams=:<&> addGetParams openAsync openAsyncPostsendNullsendPost setCallBack succCallBackisReady isReadySucccrtXMLHttpRequestsetPostReqHeaderdispNone dispBlock dispInlinethisElemthisXHTMLElementthisNodehasClasshasChild isVisible isInVisibleelemById elemsByTag fstElemByTagallElems parentElemmsg getElemById getElemsByTaggetFstElemByTag getAllElems getParentElemgetElemsByClassgetFstElemByClass getSiblingshideElemshowElem showInline showBlock remFirstChild remChildrenremElemappendChildrensetChild toggleVistoggleVisBlocktoggleVisInlineelemValsetVal AttributeChildXML fromStringLit$fHasConstructorObject()()$fIsClassObjectHJState initState $fMonoidBlock $fShowXMLGenT getHJState putHJState$fIsHJScriptExp$fIsHJScriptStmt$fIsHJScriptBlock$fIsHJScriptXMLGenT addReturnHJSJBinOperatorbinOpHJavaScript-0.4.7Language.HJavaScript.Syntax renderBlockvaltoBlockvoidMethodCallNoArgsmethodCallNoArgsvoidMethodCall methodCallcall propertyVarderefVarderefJTypeJVarJParamJMember JDerefVar JArrayIndex JPropertyVarVarRecJIntJFloatJBoolJStringJRecJFstJSndJConstJAssign JAssignWithJNegJNotJBinOp JIncrement JDecrementJIfOpJCallJNewJDeleteJDeref JFunctionJThisJBlockJNull JCastObjectJValueOfJIsImplJShowExpJVoidJObjectJArray IsFeaturejshow IsNullablePstPrePostPre PlusAssign MinusAssign TimesAssign DivAssign ModAssign AndAssignOrAssignAssignOp PlusOpTypePlusMinusTimesDivModAndOrEquals NotEqualsGThanLThanGEThanLEThanBinOpVarDecl VarDeclAssign VarAssignExpStmtWhileDoWhileForForInBreakContinueReturnIfStmtElseifElseNoElseElses EmptyBlockSequenceBlock ParamType showsFParams mkFParams FormalParamsArgsv2e VarsToExpsIsClassHasConstructorIsDereftoExpIsExp toJString IsJStringtoJIntIsJInttoJFloatIsJFloattoJBoolIsJBoolArray$fHasConstructorArray()()$fHasConstructorArrayExpInt$fHasConstructorBooleanExpBool$fHasConstructorBooleanExpInt$fHasConstructorBooleanExp[]$fIsDerefBoolean$fIsClassBoolean$fHasConstructorDate()() $fIsClassDate callMathMeth $fIsDerefMath $fIsClassMath$fHasConstructorRegExpExp[]$fIsDerefRegExp$fIsClassRegExp $fIsClass[]"$fHasConstructorActiveXObjectExp[]$fIsClassActiveXObject $fIsNodeNode $fIsClassNode$fIsNodeAttributeNode$fIsClassAttributeNode$fIsNodeTextNode$fIsClassTextNode$fIsClassNamedNodeMap$fIsElementNodeElementNode$fIsNodeElementNode$fIsClassElementNode XHTMLElementdirlangtitle generalize specialize$fIsXHTMLElementTextarea$fIsElementNodeTextarea$fIsNodeTextarea$fIsClassTextarea$fIsXHTMLElementTableRow$fIsElementNodeTableRow$fIsNodeTableRow$fIsClassTableRow$fIsXHTMLElementTableHeader$fIsElementNodeTableHeader$fIsNodeTableHeader$fIsClassTableHeader$fIsXHTMLElementTableData$fIsElementNodeTableData$fIsNodeTableData$fIsClassTableData$fIsXHTMLElementTable$fIsElementNodeTable $fIsNodeTable$fIsClassTable$fIsClassStyle$fIsClassSelect$fIsClassScreen$fIsClassOption$fIsClassNavigator $fIsClassMeta$fIsClassLocation$fIsXHTMLElementLink$fIsElementNodeLink $fIsNodeLink $fIsClassLink$fIsXHTMLElementInputText$fIsElementNodeInputText$fIsNodeInputText$fIsClassInputText$fIsClassInputSubmit$fIsClassInputReset$fIsClassInputRadio$fIsClassInputPassword$fIsClassInputHidden$fIsClassInputFile$fIsXHTMLElementInputCheckbox$fIsElementNodeInputCheckbox$fIsNodeInputCheckbox$fIsClassInputCheckbox$fIsXHTMLElementInputButton$fIsElementNodeInputButton$fIsNodeInputButton$fIsClassInputButton$fIsXHTMLElementImage$fIsElementNodeImage $fIsNodeImage$fIsClassImage$fIsXHTMLElementIFrame$fIsElementNodeIFrame$fIsNodeIFrame$fIsClassIFrame$fIsClassHistory$fIsClassFrameset$fIsXHTMLElementFrame$fIsElementNodeFrame $fIsNodeFrame$fIsClassFrame$fIsXHTMLElementForm$fIsElementNodeForm $fIsNodeForm $fIsClassForm$fIsClassEvent$fIsXHTMLElementBody$fIsElementNodeBody $fIsNodeBody $fIsClassBody$fIsXHTMLElementBase$fIsElementNodeBase $fIsNodeBase $fIsClassBase$fIsXHTMLElementArea$fIsElementNodeArea $fIsClassArea $fIsNodeArea$fIsXHTMLElementAnchor$fIsElementNodeAnchor$fIsNodeAnchor$fIsClassAnchor$fIsXHTMLElementXHTMLElement$fIsElementNodeXHTMLElement$fIsClassXHTMLElement$fIsClassWindow$fHasConstructorJQueryExp[]$fIsClassJQuery$fIsClassDocument"$fHasConstructorXMLHttpRequest()()$fIsClassXMLHttpRequest HttpMethodPostGet openAsyncGet crtXMLReq hasXMLHttpReq hasActiveX $fIsExp[][] $fIsExp(,)[]$fIsReqParams[]$fIsReqParams(,)txtNodeelemNode newTxtNodenewElemstyledisplayIsAttrNodeValuetoAttrNodeValueelementeElement stripAttr stripChild$fAppendChildStateTExp$fSetAttrStateTExp$fIsAttrNodeValueXMLGenT$fIsAttrNodeValueText$fIsAttrNodeValuea$fEmbedAsAttrStateTAttr$fEmbedAsAttrStateTExp$fEmbedAsChildStateTExp$fEmbedAsChildStateTChar$fEmbedAsChildStateTExp0$fEmbedAsChildStateTExp1$fXMLGeneratorStateT$fEmbedAsChildStateTText$fXMLGenStateT