1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362 |
- 2019-08-06 Per Bothner <per@bothner.com>
- * conigure.ac: Change missing Posix find from error to warning.
- This is an attempt to fix GitLab Continuous Integration.
- 2018-09-29 Per Bothner <per@bothner.com>
- * bin/kawa.sh.in: Set kawa.command.pid property.
- 2018-09-07 Per Bothner <per@bothner.com>
- * configure.ac: Handle --with-java-source=10 and above.
- 2018-09-06 Mathieu Lirzin <mthl@gnu.org>
- * autogen.sh: Use autoreconf --install.
- This installs the various autotools helper files in build-aux.
- 2018-04-15 Per Bothner <per@bothner.com>
- Fix build for --without-lps4 case.
- * kawa/repl.java: Use reflection to call KawaLanguageServer.main.
- * source-list: Conditionalize KAWA_LANGSERVER_JSOURCES.
- 2018-04-12 Per Bothner <per@bothner.com>
- Initial support for LSP (Language Server Proptocol).
- * configure.ac: Support --with-lsp4j and --with-gson.
- * config.classpath: Add lsp4j and gson to classpath.
- * Makefile.am: Related changes.
- * kawa/langserver/KawaLanguageServer.java: New server logic.
- * source-list: Update accordingly.
- * kawa/repl.java: Handle --langserver option.
- 2018-04-09 Per Bothner <per@bothner.com>
- * Makefile.am (lib/jline.jar, lib/domterm.jar):
- Remove old symlinks before creating new ones.
- 2017-11-21 Sudarshan S Chawathe <chaw@eip10.org>
- * gnu/kawa/slib/srfi14.scm: Change non-tail to tail recursion in
- %make-boundary-pairs to avoid stack overflow for large inputs.
- 2017-11-08 Helmut Eller <eller.helmut@gmail.com>
- * source-list (GNU_COMMONLISP_LANG_JSOURCES): Add CLReadTable.java.
- 2017-10-22 Per Bothner <per@bothner.com>
- Normally convert kawa.sh.in to plain kawa rather than kawa.sh.
- This avoids bin/kawa being a symlink to bin/kawa.sh, which avoids a
- dependency on 'readlink -f' (not supported on Mac) in typical use.
- * configure.ac: Process 'bin/kawa.sh.in' to 'bin/kawa', or bin/kawa.sh'
- when either on Windows or --enable-kawa-frontend.
- * Makefile.am: Use KAWA_SCRIPT variable as appropriate.
- 2017-10-02 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 3.0.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2017-08-29 Kay Zheng <l04m33@gmail.com>
- * Makefile.am: Use JAVACFLAGS two more places.
- 2017-08-27 Per Bothner <per@bothner.com>
- * Makefile.am (distall): Buld kawa.zip.
- 2017-07-28 Sudarshan S Chawathe <chaw@eip10.org>
- * gnu/lists/IString.java (SubString): Fix offset for substring of
- substring for istrings; fixes GitLab issue #16.
- 2017-07-15 Per Bothner <per@bothner.com>
- * configure.ac: Configure (and make) bin unconditionally.
- This so cgi-servlet is built even if the frontend isn't.
- 2017-06-10 Per Bothner <per@bothner.com>
- * configure.ac: Default to Java 8, as intended.
- 2017-05-03 Per Bothner <per@bothner.com>
- * build.xml: Various fixes and updates.
- 2017-04-30 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.93.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2017-04-30 Per Bothner <per@bothner.com>
- Change source files to default to Java 8.
- * Makefile.am (dist-kawa.jar): Build with Java 8 rather than Java 7.
- 2017-03-25 Vasantha Ganesh K <vasanthaganesh.k@tuta.io>
- * .gitlab-ci.yml GitLab's CI support
- 2017-03-19 Sudarshan S Chawathe <chaw@eip10.org>
- * gnu/mapping/RunnableClosure.java (getResult): Add public
- modifier to enable calling getResult as suggested by manual.
- 2017-02-24 Per Bothner <per@bothner.com>
- Various places change @deprecated comment to @Deprecated annotation.
- Java-9 warns about the former and prefer the latter.
- 2017-01-18 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.91_invoke
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2017-01-15 Per Bothner <per@bothner.com>
- Fixed a lot of JavaDoc errors.
- 2017-01-13 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.3.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2017-01-10 Per Bothner <per@bothner.com>
- * configure.ac: --with-domterm value is "domterm home",
- rather than the jar file.
- * Makefile.am: Update accordingly.
- * config.classpath: Update.
- 2016-12-09 Per Bothner <per@bothner.com>
- Moved some files from gnu/kawa/slib to kawa/lib.
- The latter now assume they are compiled using two separate commands.
- * build.xml: Update accordingly.
- 2016-11-25 Per Bothner <per@bothner.com>
- * README.md: Convert to Markdown from README.
- This is better for the gitlab Kawa home page.
- * configure.ac: Change automake style to 'foreign' due to missing README.
- * Makefile.am: Update --version output for git.
- * configure.ac: Add --with-docbook-stylesheets option.
- * doc/Makefile.am: Make use of it.
- 2016-11-22 Per Bothner <per@bothner.com>
- * Makefile.am: Fixes so 'make install' twice in a row works.
- 2016-11-20 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.2.1.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2016-11-12 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.2.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2016-11-07 Per Bothner <per@bothner.com>
- * bin/browse-kawa-manual.in: Move to doc/browse-kawa-manual.
- It's no longer suggested because of the link issue mentioned.
- * Makefile.am: No longer include it in snapshots.
- * configure.ac: Don't configure bin/browse-kawa-manual.in.
- 2016-11-02 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.1.91.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2016-11-01 Per Bothner <per@bothner.com>
- * configure.ac: Remove obsolete --with-jline2 option.
- * Makefile.am: Update accordingly.
- * source-list: Update accordingly.
- 2016-10-29 Per Bothner <per@bothner.com>
- * source-list: Don't build gnu.kawa.models unless WITH_AWT.
- * Makefile.am (PREPROCESS_AWT): Set (or not) use:java.awt PreProcess
- option, depending on WITH_AWT.
- * configure.ac: Option --with-swing defaults to no if --without-awt.
- 2016-10-16 Per Bothner <per@bothner.com>
- * configure.ac: Make maintainer-mode the default.
- Put info files in builddir.
- * Makefile.am (tmp-sources1.list): Also depend on Makefile.am.
- 2016-10-16 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (generate-simplevector-files)
- (clean-generated-simplevector-files): New targets to generate and
- clean PrimVector.template-based source files.
- 2016-10-13 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (lib-scm-classes): Update for new libraries (kawa
- process-keywords) and (kawa swing).
- 2016-09-03 Per Bothner <per@bothner.com>
- * configure.ac: Recognize --with-java-source=9.
- 2016-08-14 Per Bothner <per@bothner.com>
- * Makefile.am: Remove version number for jar file names.
- * kawa.sh.in: Likewise.
- * kawa.sh.in: Use JAVA_HOME if it is set.
- 2016-07-26 Per Bothner <per@bothner.com>
- Re-implement conversion to SVG without using external library.
- * configure.ac, config.classpath: Remove --with-vectorgraphics2d option.
- * Makefile.am, bin/kawa.bat.in: Remove use of VectorGraphics2D.
- 2016-07-20 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (script-factory-scheme, script-factory-xquery): Make
- sure META-INF/services directory exists before writing to
- META-INF/services/javax.script.ScriptEngineFactory file.
- 2016-07-13 Per Bothner <per@bothner.com>
- Replace use of JFreeSVG with VectorGraphics2D library.
- The former is strict GPL, which could be a problem.
- * configure.ac: Replace --with-with_jfreesvg by --with-vectorgraphics2d.
- * config.classpath: Update accordingly.
- * Makefile.am: Link in and copy new library.
- * bin/kawa.bat.in: Add new library.
- * Makefile.am (kawa/Version.java): Update check for Subversion.
- 2016-07-11 Per Bothner <per@bothner.com>
- * Makefile.am: Some tweaks for faster re-compilation.
- Specifically, don't make javac look at all files when only
- some are changed. The downside is we could run into command line
- limits more easily, so we use the @filelist method for clean builds.
- 2016-07-01 Per Bothner <per@bothner.com>
- * Makefile.am (kawa-snapshot.zip): Add lib/servlet.jar.
- * bin/kawa.sh.in: Simplify - just use run_classpath.
- * config.classpath: Update run_classpath for using links in lib.
- 2016-07-01 Jamison Hope <jrh@theptrgroup.com>
- * build.xml: Fix for relocated JEmacs files.
- 2016-06-26 Per Bothner <per@bothner.com>
- * Makefile.am (kawa-snapshot.zip): Include the Kawa manual in
- epub3 format, as well as scripts and advice for reading it.
- 2016-06-24 Per Bothner <per@bothner.com>
- * source-list: Don't include kawa/Version.java, because it could
- be in either srcdir or builddir, which complicates things.
- * Makefile.am: Update to build Version.class separately.
- 2016-06-22 Per Bothner <per@bothner.com>
- * Makefile.am: Make bin/kawa a link to bin/kawa.sh if not using the
- C/readline front-end.
- Generated Makefile.in and configure removed from repository.
- * autogen.sh: Script to generates those files.
- * Makefile.am: Merge the Makefiles of gnu/math, gnu/commonlisp/lang,
- gnu/xquery/lang, gnu/xquery/util, gnu/q2/lang, and kawa into
- source.list and the top-level Makefile.
- (tmp-sources1.list): Build list of source file names for '@' argument
- passed to javac, to limit command-line length.
- * Makefile.am: Pull most of logic from gnu/Makefile.am here.
- This is a step to having fewer Makefiles.
- (source-list): New separate list of files, for inclusion.
- 2016-06-14 Per Bothner <per@bothner.com>
- * Makefile.am: Add domterm.jar to kawa.zip.
- * bin/kawa.sh.in: Add dmterm.jar to classpath.
- * configure.ac: Implement new --with-domterm option.
- * config.classpath: Update classpath.
- 2016-06-03 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.1.9.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- * Makefile.am (kawa-snapshot.zip): New rule.
- 2016-05-07 Per Bothner <per@bothner.com>
- * configure.ac: Support --with-jline3 flag in addition to jline2.
- * Makefile.am: LRelated changes.
- * configure.ac: Convert to kawa.bat.in kawa.bat using configure.
- * Makefile.am (bin/kawa.bat): Comment out rule.
- 2016-04-17 Per Bothner <per@bothner.com>
- * Makefile.am: Update uninstall rules so 'make distcheck' works again.
- 2016-03-12 Per Bothner <per@bothner.com>
- Enable "binary distributions" using jawa.sh and jline2.
- * Makefile.am (kawa-$(VERSION).zip): New rule.
- The jat files are now in the lib subdirectory.
- * config.classpath: New variable run_classpath does not include jline.
- * configure.ac (run_classpath): New variable.
- 2016-02-14 Per Bothner <per@bothner.com>
- Add support for JLine2 as a readline alternative.
- * configure.ac" New --with-jline2 flag.
- (WITH_JLINE2_ARG. WITH_JLINE2): New argument and conditional.
- * config.classpath: Adjust classpath based on --with-jline2 flag.
- * Makefile.am (dist-kawa-@VERSION@.jar): Build jline2 support,
- without requiring it.
- 2016-01-26 Per Bothner <per@bothner.com>
- * configure.ac: Fix case when --with-java-source is defaulted.
- 2015-12-21 Per Bothner <per@bothner.com>
- * configure.ac: Handle mapping from JAVA_SOURCE to PreProcess
- token at configure time, rather than make time.
- * Makefile.am: Simplify Prepocess handling.
- (JAVA_PREPROCESS_OPTIONS): New variable - selector to PreProcess.
- (selected-java-source): Compare JAVA_PREPROCESS_OPTIONS rather
- than solely JAVA_SOURCE.
- * configure.ac: Move some logic to new file ...
- * config.classpath: ... so it can be shared with bin/configure.ac.
- 2015-10-28 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.1.1.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2015-10-26 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.1.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2015-09-20 Per Bothner <per@bothner.com>
- * configure.ac: Fix to avoid bogus calls to chmod.
- 2015-08-10 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (lib-scm-classes): Add rnrs/arithmetic/bitwise.scm.
- 2015-07-31 Per Bothner <per@bothner.com>
- * Makefile.am: Many subclasses of gnu.lists.SimpleVector are now
- auto-generated from PrimVector.template. Do so.
- 2015-06-03 Per Bothner <per@bothner.com>
- * build.xml (kawa.sh): Add dependency on build-settings.
- (clean-build): Remove bin/kawa.sh.
- 2015-06-02 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (-maybe-select-java{2,4,5,6,7}): Use both "if" and
- "unless" attributes so that only one of the select-java* targets
- gets called.
- 2015-05-19 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (has-java{2,4,5,6,7,8}): Move out of
- -select-java-non-android up to top level so that they are defined
- in the initial Ant environment.
- (java-classes): Add q2.
- 2015-05-13 Per Bothner <per@bothner.com>
- * compile: New file, from gnulib, used by autoconf.
- 2015-02-27 Per Bothner <per@bothner.com>
- * build.xml (java-classes): Add kawa/Source*.java.
- 2015-02-17 Per Bothner <per@bothner.com>
- * configure.ac: Remove WITH_LIBTOOL macro and --with-libtool option.
- * Make-rules: Remove libtool junk.
- * build.xml (lib-scm-classes): Update to match kawa/lib/Makefile.am.
- 2015-01-20 Per Bothner <per@bothner.com>
- * configure.ac: Remove most links, to avoid Windows problems.
- * config.guess: Update to new version, from gnulib.
- * config.sub: Likewise.
- * mkinstalldirs: Likewise.
- 2014-12-28 Per Bothner <per@bothner.com>
- * build.scm (slib-scm-classes): Add receive.scm.
- 2014-12-03 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.0.1.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- 2014-12-01 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 2.0.
- * bin/configure.in (AC_INIT): Likewise.
- * build.xml (version.release): Likewise.
- * build.xml (lib-scm-classes): Fix and update filelist.
- 2014-11-19 Per Bothner <per@bothner.com>
- * bin/kawa.sh.in: Use KAWA_SHELL instead of SHELL variable.
- * configure.ac: Determine and export KAWA_SHELL.
- * build.xml (kawa.shell): New property.
- (kawa.sh): Substitute KAWA_SHELL based on kawa.shell property.
- 2014-11-19 Per Bothner <per@bothner.com>
- * bin/kawa.sh.in: Use SHELL autoconf variable.
- * build.xml (kawa.sh): Substitute SHELL.
- * bin/kawa.sh.in: Simplify so kawa.sh only works for in-place running.
- * Makefile.am (install-binSCRIPTS): Use sed to munge KAWALIB in kawa.sh.
- * build.xml (kawa.sh): Simplify.
- 2014-11-19 Per Bothner <per@bothner.com>
- * build.xml (kawa.sh): Build bin/kawa.sh from bin/kawa.sh.in.
- 2014-11-18 Per Bothner <per@bothner.com>
- * configure.ac (AC_CONFIG_FILES): Add bin/kawa.sh.
- * Makefile.am (bin/kawa.sh): Remove rule. Now generated by configure.
- (EXTRA_DST): Add bin/kawa.sh.in.
- 2014-11-17 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (lib-scm-classes): Add quaternions.scm.
- 2014-10-28 Per Bothner <per@bothner.com>
- * build.xml (lib-scm-classes): Add remaining R7RS standard libraries.
- 2014-10-14 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.90.
- * build.xml (version.release): Likewise.
- 2014-09-28 Per Bothner <per@bothner.com>
- * build.xml (lib-scm-classes): Add new R7RS standard libraries.
- 2014-09-26 Per Bothner <per@bothner.com>
- * build.xml: 'define-record-type' was moved from gnu.kawa.slib
- to kawa.lib.
- 2014-08-31 Per Bothner <per@bothner.com>
- * Makefile.am: Each Makefile from gnu/expr, gnu/mapping, gnu/lists
- and gnu/text were merged into gnu/Makefile.
- * configure.ac: Likewise.
- 2014-08-28 Per Bothner <per@bothner.com>
- * Makefile.am: Remove Makefiles from intermediate directories
- gnu/commonlisp gnu/xquery/gnu/q2.
- Fold Makefile in gnu/kawa/xslt into gnu directory.
- * configure.ac: Update accordingly.
- 2014-08-21 Per Bothner <per@bothner.com>
- * build.xml (lib-scm-classes): Add parameterize.scm.
- * classes-to-skip-for-runtime: Add some more classes.
- * build.xml (android-classes): Add utils.scm.
- 2014-08-20 Per Bothner <per@bothner.com>
- * build.xml: Fix support for enable.android, by adding android.path
- to the build.path.
- * build.properties (android.path): Set defaul value.
- * build.xml (lib-scm-classes): Add case_syntax.scm.
- 2014-08-04 Per Bothner <per@bothner.com>
- * build.xml (lib-scm-classes): Add compile_map.scm.
- 2014-07-22 Per Bothner <per@bothner.com>
- * build.xml (lib-scm-classes): Add string-cursors.scm.
- 2014-07-07 Matthieu Vachon <matthieu.o.vachon@gmail.com>
- * build.xml: Add some missing Scheme files.
- 2014-07-02 Per Bothner <per@bothner.com>
- * classes-to-skip-for-runtime: Remove some new classes.
- 2014-02-27 Per Bothner <per@bothner.com>
- * Makefile.am (patch-source-list): Add dependency on configure.
- (MAINTAINERCLEANFILES): New macro, bound to patch-source-list.
- 2014-02-20 Per Bothner <per@bothner.com>
- * configure.ac: Add missing AC_CANONICAL_HOST.
- * configure.ac: Add test for Posix find, setting FIND variable.
- * Makefile.am (FIND): New variable. Use it.
- * configure.ac: Separately configure bin, and move code that needs
- a C compiler there, requried only enable_kawa_frontend is set.
- Remove GCJ support.
- * Makefile.am: Likewise.
- * Make-rules: Remove GCJ support.
- 2014-02-18 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (slib-scm-classes): Add srfi60.scm.
- 2014-02-06 Per Bothner <per@bothner.com>
- * build.xml (commonlisp-scm-classes): Make sure to compile
- primitives.lisp.
- * Makefile.am (COMMENT_IN, COMMENT_OUT): Remove unused macros.
- 2014-01-06 Per Bothner <per@bothner.com>
- * Makefile.am (dist-kawa-@VERSION@.jar): Configure for Java 7.
- * configure.in: Default JAVA_SOURCE to 7, rather than 6.
- * missing: Get newer version from upstream.
- Change checked-in versions to the JAVA7 version.
- 2014-01-05 Per Bothner <per@bothner.com>
- Fold the Makefile.am of gnu/xml, gnu/kawa/xml, gnu/ecmascript,
- gnu/kawa/swingviews, gnu/kawa/swtviews, gnu/kawa/ant, and
- gnu/kawa/sax into gnu/Makefile.am.
- Fold the Makefile.am of gnu/kawa/util, gnu/kawa/reflect,
- gnu/kawa/functions, gnu/kawa/lispexpr, and gnu/kawa/models
- into new gnu/Makefile.am
- * Makefile.am (SUBDIRS): Update accordingly.
- * configure.ac (AC_CONFIG_FILES): Likewise.
- 2013-12-22 Per Bothner <per@bothner.com>
- * build.xml (lib-scm-classes): Add missing classes.
- 2013-10-04 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.14.1.
- * build.xml (version.release): Likewise.
- 2013-09-28 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.14.
- * build.xml (version.release): Likewise.
- 2013-09-23 Per Bothner <per@bothner.com>
- * Makefile.am (kawa-doc-$(VERSION).tar.gz): Update,
- since kawa-tour.texi is now gone.
- 2013-09-16 Per Bothner <per@bothner.com>
- * Makefile.am: Add Java8 support.
- (select-java8): New rule.
- * condigure.ac: Add Java8 support.
- * build.xml: Likewise.
- 2013-06-16 Per Bothner <per@bothner.com>
- * configure.ac (AC_CONFIG_FILES): Remove kawa/lang/Makefile
- and kawa/standard/Makefile.
- 2013-03-23 Per Bothner <per@bothner.com>
- * Makefile.am (kawa/Version.java): Add $(srcdir) reference.
- 2013-01-13 Per Bothner <per@bothner.com>
- * configure.in: Renamed to ...
- * configure.ac: ... new name, following current preferred autoconf
- practice.
- * Makefile.am (kawa/Version.java): Update accordingly.
- 2012-12-14 Jamison Hope <jrh@theptrgroup.com>
- * build.xml: Use filelist instead of fileset to force compilation
- order for Scheme source files.
- 2012-12-12 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.13.1.
- * build.xml (version.release): Likewise.
- 2012-12-08 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.13.
- * build.xml (version.release): Likewise.
- 2012-11-21 Per Bothner <per@bothner.com>
- * configure.in: Try harder to find jfxrt.jar.
- * Makefile.am (+DISTCLEANFILES): New macro - add selected-java-source.
- (selected-java-source, set-selected-java-source): Change
- selected-java-source to be in current directory, not srcdir.
- 2012-07-28 Per Bothner <per@bothner.com>
- * configure.in: Don't default to with-httpserver or Java6
- if configured for Android.
- 2012-07-10 Per Bothner <per@bothner.com>
- * build.xml (xml-classes): Added Xutils.scm.
- 2012-07-03 Per Bothner <per@bothner.com>
- * build.xml: Some cleanups for with-awt dependeny, which
- should benefit Android.
- 2012-05-31 Per Bothner <per@bothner.com>
- * configure.in: Change argument to --with-javafx to be actual jfxrt.jar
- though also supporting old meaning.
- Also a fix for servlet path.
- 2012-05-30 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.12.1.
- * build.xml (version.release): Likewise.
- 2012-05-28 Per Bothner <per@bothner.com>
- * Makefile.am (dist-kawa-@VERSION@.jar): Build with javafx support.
- * configure.in: Related changes.
- 2012-05-24 Jacques Herry
- * build.xml (jar): Fix.
- 2012-05-25 Per Bothner <per@bothner.com>
- * configure.in (WITH_SERVLET_ARG): New variable.
- * Makefile.am (dist-kawa-@VERSION@.jar): Include serlet jar's
- location in build classpath.
- * Makefile.am: Use CLASSPATH_SEPARATOR for the sake of CygWin.
- 2012-05-20 Jacques Herry
- * build.xml: Fix to build META_INFO/services.
- 2012-05-20 Jamison Hope <jrh@theptrgroup.com>
- * build.xml: "Inline" named filesets lib-scm and slib-scm to their
- point of use, fixing a problem where the filesets depend on
- with-swing, which is used before it is set in build-settings.
- 2012-05-13 Per Bothner <per@bothner.com>
- * build.xml: Add ScriptEngineFactory support for discovering
- JSR-223 script engines (Scheme and optionally XQuery).
- Also, improvements in handling of enable-xml.
- 2012-05-10 Per Bothner <per@bothner.com>
- * build.xml: Add dependencies on with-swing property.
- (java-classes): Always compile gnu/kawa/models.
- 2012-04-08 Per Bothner <per@bothner.com>
- * AUTHORS: Point to Acknowledgement section of doc/kawa.texi.
- 2012-02-02 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.12.
- * build.xml (version.release): Likewise.
- 2011-09-24 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (-maybe-select-java7): New target.
- 2011-08-04 Per Bothner <per@bothner.com>
- * configure.in (with_XQTS): Fix setter to be Posix-compatible.
- 2011-07-30 Per Bothner <per@bothner.com>
- * configure.in (ON_WINDOWS): New automake-conditional.
- * build.xml: Rules for building kawa.bat on Windows.
- 2011-07-28 Per Bothner <per@bothner.com>
- * build.xml: Add support for enable-javafx and javax.home properties,
- to build Kawa with JavaFX support.
- 2011-07-27 Per Bothner <per@bothner.com>
- * configure.in: add support for JavaFX 2.x.
- (--with-javafx): New command-line flag.
- (WITH_JAVAFX): New conditional.
- * Makefile.am (JAVAFX_SUBDIRS): New macro.
- * classes-to-skip-for-runtime: Add some classes.
- * Make-rules (CLASSPATH_ENV): Add quotes.
- 2011-07-21 Per Bothner <per@bothner.com>
- Add support for using configure+make (autotools) on Cygwin.
- * configure.in: Use AC_CANONICAL_HOST, not AC_CANONICAL_TARGET.
- (CLASSPATH_SEPARATOR): New substitution variable.
- * Make-rules (CLASSPATH): New variable. Make Cygwin-safe.
- (java-classes.stamp): Use -classpath option rather than CLASSPATH.
- (KAWA_COMPILER): Likewise.
- * Makefile.am (kawa-@VERSION@.jar, kawart-@VERSION@.jar):
- Instead of using fnd output directly in command line (which might
- thus come too large, especially on cygwin), use file-list file.
- (classes.list, classes-rt.list): New helper files and targets.
- (-MOSTLYCLEANFILES): Update accordingly.
- 2011-02-08 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (slib-scm): Add srfi14.scm.
- 2011-01-24 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (lib-scm): Add rnrs/lists.scm.
- 2011-01-19 Per Bothner <per@bothner.com>
- * classes-to-skip-for-runtime: Add more classes to skip.
- 2010-12-26 Jamison Hope <jrh@theptrgroup.com>
- * build.xml: Set includeantruntime on javac commands - mostly to false.
- 2010-11-20 Per Bothner <per@bothner.com>
- * build.xml (slib-scm): Add SRFI-41 files in gnu.kawa.slib.
- 2010-11-14 Per Bothner <per@bothner.com>
- * configure.in (AC_CONFIG_FILES): Add gnu/q2/testsuite/Makefile.
- 2010-11-10 Per Bothner <per@bothner.com>
- * build.xml: Make use of new kawac task.
- 2010-11-04 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.11.
- * build.xml (version.release): Likewise.
- 2010-10-28 Per Bothner <per@bothner.com>
- * build.xml (slib-scm): Also compile enums.scm.
- 2010-10-27 Jamison Hope <jrh@theptrgroup.com>
- * build.xml (slib-scm): Update for new scm files.
- 2010-10-11 Per Bothner <per@bothner.com>
- * classes-to-skip-for-runtime: Add more classes to skip.
- 2010-09-29 Per Bothner <per@bothner.com>
- * build.xml: Make use of <condition> with else clause.
- Move setting of preprocess-HttpServer into build-setting target.
- (check-for-HttpServer): Remove target.
- (select-java7): Depend on build-settings rather than build-tools.
- 2010-09-20 Per Bothner <per@bothner.com>
- * build.xml: Add enable-android support.
- (android-classes): New target.
- * build.xml: Change various targets to depend on build-settings
- rather than build-tools.
- * build.xml: Change some targets to "internal" by prefixing
- their names with '-'.
- 2010-08-28 Per Bothner <per@bothner.com>
- * build/xml (select-java7): New target.
- * Makefile.am (select-java7, selected-java-source):
- Add missing jdk7 support.
- * configure.in: Map --with-java-source to JAVA_SOURCE=7 - not 6.
- 2010-08-27 Per Bothner <per@bothner.com>
- * classes-to-skip-for-runtime: Add some new classes.
- 2010-08-26 Per Bothner <per@bothner.com>
- Replace ExpWalker expression-visitor API by new ExpVisitor.
- Lots of little changes; a few big ones - see gnu/expr/ChangeLog.
- 2010-07-23 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.10.
- * build.xml (version.release): Likewise.
- 2010-07-19 Per Bothner <per@bothner.com>
- * build.xml: Pass +enable:XML or -enable:XML to PreProcess as needed.
- * build.xml (slib-scm): Include srfi13.scm.
- 2010-05-24 Per Bothner <per@bothner.com>
- * Makefile.am (PREPROCESS_XML): New mecro.
- (USE_HTTPSERVER): Rename to PREPROCESS_HTTPSERVER.
- (do-preprocess): Use new macros.
- 2010-05-19 Per Bothner <per@bothner.com>
- * configure, aclocal.m4, **/Makefile.in: Re-generate.
- 2010-04-19 Per Bothner <per@bothner.com>
- * build.xml: Update to auto-select Java5 and Java6, including
- HttpServer.
- 2010-04-18 Per Bothner <per@bothner.com>
- Add support for using the com.sun.net.httpserver web server.
- * configure.in(--with-httpserver): New option.
- (WITH_HTTPSERVER): New conditional.
- * Makefile.am: Conditionalize pre-processing on WITH_HTTPSERVER.
- 2010-04-10 Per Bothner <per@bothner.com>
- * configure.in: New --java-source option '6compat5': Compile assuming
- a Java 6 compiler, but so .jar (with most features) can run on Java5.
- This implies compiling with -target 1.5.
- * Makefile.am: Various fixes for 'distclean'.
- (dist-kawa-@VERSION@.jar): Build --with-java-source=6compat5.
- 2010-01-07 Per Bothner <per@bothner.com>
- * **/Makefile.in, aclocal.m4: Regenerate using automake 1.11.1.
- 2009-08-31 Per Bothner <per@bothner.com>
- * Makefile.am (kawart-@VERSION@.jar): Add missing $(srcdir).
- 2009-08-27 Per Bothner <per@bothner.com>
- * build.xml (lib-scm): Update for new source files.
- * Makefile.am (all): Also build kawart-@VERSION@.jar.
- 2009-08-27 Per Bothner <per@bothner.com>
- * classes-to-skip-for-runtime: Add more classes.
- 2009-08-24 Per Bothner <per@bothner.com>
- * classes-to-skip-for-runtime: Add more classes.
- 2009-08-13 Per Bothner <per@bothner.com>
- * classes-to-skip-for-runtime: Add more classes.
- 2009-08-12 Per Bothner <per@bothner.com>
- * classes-to-skip-for-runtime: Add more classes and patterns.
- 2009-08-10 Per Bothner <per@bothner.com>
- * Makefile.am (kawart-@VERSION@.jar): New rule.
- * classes-to-skip-for-runtime: New file.
- * Makefile.am (kawa-@VERSION@.jar): Minor optimization/simplification.
- 2009-08-06 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.9.10.
- * build.xml (version.release): Likewise.
- 2009-06-02 Per Bothner <per@bothner.com>
- * build.xml (lib-scm): Add unicode.scm.
- 2009-05-31 Per Bothner <per@bothner.com>
- * build.scm: Update to also compile regex.scm and pregexp.scm.
- 2009-05-17 Per Bothner <per@bothner.com>
- * Makefile.am (dist-kawa-@VERSION@.jar): Make copy of dist sources,
- to allow re-condifure, even when "$srcdir" is ".".
- Build with Java6 compiler, with target 5, and --with-javax.script,
- to allowing running under Java5, but with scripting on Java6.
- * configure.in (--with-java.script): New flag.
- (WITH_JAVAX_SCRIPT): New conditional.
- * Makefile.am: Add META-INF/services/javax.script.ScriptEngineFactory
- to kawa jar file when WITH_JAVAX_SCRIPT is selected.
- 2009-03-16 Per Bothner <per@bothner.com>
- * build.xml (lib-scm, slib-scm: Update for new modules.
- (slib-scm-classes): Use fileset slib-scm rather than slib-scm-list.
- (slib-scm-list): Remove duplicate filelist.
- 2009-01-14 Per Bothner <per@bothner.com>
- * configure.in: Add configure switches-enanle-xquery.
- Add conditionals ENABLE_XQUERY and WITH_ANDROID.
- * Makefile.am (SUBDIRS): Make use of new conditonals.
- 2008-12-23 Per Bothner <per@bothner.com>
- * configure.in: New --with-android option.
- * Makefile.am: Add "android" as new JAVA_SOURCE version.
- (set-selected-java-source): Fix minor problem which causes error
- message selected-java-source is missing.
- 2008-11-19 Per Bothner <per@bothner.com>
- * configure.in: Use AC_CHECK_TOOL to find GCJ, rather than
- LT_AC_PROG_GCJ, since the latter seems to be gone now.
- 2008-01-26 Per Bothner <per@bothner.com>
- * configure.in: The default for --with-java-source is now 5.
- * Makefile.am: The default binary builds now require Java 5.
- 2007-11-01 Per Bothner <per@bothner.com>
- * build.xml (run): Set fork to true, since otherwise we can't
- "run" under NetBeans. (It gets a SecurityException.)
- * nbproject: Preliminary support for developing using NetBeans.
- 2007-03-15 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.9.3.
- This is so Marc Feeley's "snow' can detect a working version.
- * build.xml (version.release): Likewise.
- 2007-01-30 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.9.2.
- * build.xml (version.release): Likewise.
- 2007-01-23 Per Bothner <per@bothner.com>
- * configure.in (WITH_GCJ_NO_DBTOOL): New conditional.
- 2007-01-22 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.9.1.
- * build.xml (version.release): Likewise.
- 2007-01-21 Per Bothner <per@bothner.com>
- No longer ship libtool. By default we don't use libtool any more
- but there is a non-default option to use libtool from our path.
- * configure.in (--with-libtool): New option.
- Otherwise remove libtool-related macros.
- * Make-rules: For building with gcj, create .o files rather than
- .lo files, unless WITH_LIBTOOL.
- * ltmain.sh: Remove file.
- * Makefile.am (EXTRA_DIST): Remove ltmain.sh.
- * kawa.cmd: Remove unused file.
- 2007-01-20 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.9.0.
- * build.xml (version.release): Likewise.
- 2007-01-11 Per Bothner <per@bothner.com>
- * Makefile.am (kawa-doc-$(VERSION).tar.gz): Don't build
- doc/internals.xml since it has been moved to the web site.
- 2007-01-09 Per Bothner <per@bothner.com>
- * configure.in: Make --disable-jemacs the default.
- (--enable-brl): New non-default flag.
- * build.xml (brl-classes): Split new target off from xml-classes.
- (enable-brl): New property.
- (enable-jemacs): Make default false.
- * build.properties (enable-jemacs, enable-brl): Update to match.
- * Makefile.am: Conditionalize on ENABLE_JEMACS and ENABLE_BRL.
- * gnu/jemacs/*/Makefile.am: Remove condionalization on
- ENABLE_JEMACS, since handled in top-level Makefile.
-
- 2007-01-08 Per Bothner <per@bothner.com>
- * Makefile.am, build.xml: Moved the mapping from "source-version" to
- "PreProcess feature list" to the single location (PrePorcess.java), so
- we don't need to duplicate it Makefile.am and build.xml.
- 2007-01-05 Per Bothner <per@bothner.com>
- * configure.in: If JAVA_SOURCE is 1|2|3 default with_sax2 to "no".
- 2007-01-04 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.8.95.
- * build.xml (version.release): Likewise.
- 2007-01-02 Per Bothner <per@bothner.com>
- * kawa/ChangeLog: New file.
- 2007-01-02 Per Bothner <per@bothner.com>
- * kawa/GuiConsole.java (<init>): Update to use Path.
- * kawa/TelnetRepl.java (serve): Likewise.
- * kawa/GuiInPort.java (<init>): Likewise.
- * kawa/standard/load.java (apply): Generalize from String name.
- (apply2); Update accordingly.
- * kawa/standard/require.java (lookupModuleFromSourcePath): Allow
- base name (i.e. current getFileName() result) to be null.
- 2006-12-30 Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): Use InetAddress.getByName(null)
- instead of "localhost". This avoid a problem on FC6 when localhost
- is missing in /etc/hosts and seems like the Right Thing anyway.
- 2006-12-29 Per Bothner <per@bothner.com>
- * kawa/standard/load.java: Update for move of uriSchemeLength
- from InPort to Path.
- * Makefile.am (JAVA4_FEATURES, NO_JAVA4_FEATURES): Set/clear
- use:java.nio flag.
- 2006-12-20 Per Bothner <per@bothner.com>
- * configure.in (--with-gcj): New option.
- (WITH_GCJ_DBTOOL): New AM_CONDITIONAL.
- Change some defaults depending on other options.
- * Makefile.am (install-jar): Run gcj-dbtool, if so configured.
- * Make-rules (EXTRA_DBTOOL_GCJFLAGS): New macro.
- Compile with -findirect-dispatch only if WITH_GCJ_DBTOOL.
- * Make-rules: Remove kawa1 hooks - use '$(JAVA) kawa.repl' to compile.
- (GCJFLAGS): Add -findirect-dispatch.
- * configure.in: Add AC_DISABLE_STATIC.
- 2006-12-17 Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): Use 'define' rather than 'putt' to
- define variables from the command line. The former works better
- when main() is inoked fter start-up, as is done by 'qalbum -R'.
- 2006-12-15 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (setLine): Moved to Compilation.
- Compiling with gcj complained about an ambiguity and it seems
- just as clean to move it to avoid the problem.
- * build.xml: Update for XMLParser changes.
- 2006-12-14 Per Bothner <per@bothner.com>
- * configure.in (SAX2_PREPROCESS): New substiution varible.
- * Makefile.m (JAVA4_FEATURES, NO_JAVA4_FEATURES): Define preprocess
- variable SAX2 depending on whether --with-sax2 was specified.
- 2006-12-12 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Only special handling of SyntaxException if
- it's the same SourceMessages - rather than say from an fn:doc.
- 2006-12-11 Chris Wegrzyn <chris.wegrzyn@gmail.com>
- * kawa/standard/syntax_case.java (rewriteForm): Make sure input form
- is nested inside LetExp used to implement syntax-case.
- This fixes Savannah bug #18105 "with-syntax causes
- NullPointerException during compilation but not in repl".
- 2006-12-11 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (scanClassDef, rewriteForm): Handle
- SyntaxForm around keywords. Fixes Savannah bug #18504.
- 2006-12-09 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java: Remove unneded import.
- * kawa/lang/PairPat.java: Likewise.
- * kawa/lang/ListRepeatPat.java: Likewise.
- * kawa/lang/VarListPat.java: Likewise.
- * kawa/repl.java: Remove unused local variables.
- * build.xml: Update handling of XMLParser.java to match that of make.
- 2006-12-06 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (rewriteForm, scanClassDef): Handle
- SyntaxForm in member definition.
- 2006-12-05 Per Bothner <per@bothner.com>
- * configure.in: Make --with-sax the default.
- * Makefile.am (dist-kawa-@VERSION@.jar): Fix various bitrot.
- * kawa/repl.java: Update copyright year printed by --version to 2007.
- * Makefile.am (kawa/Version.java): Use svnversion command.
- * Makefile.am (selected-java-source): Handle JAVA_SOURCE = 6.
- 2006-12-04 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java: Update for require.importDefinitions.
- * kawa/Shell.java (run): Update for Language.run changes.
- * kawa/standard/require.java (importDefinitions): Some refactoring so
- we can pass the ModuleInfo from XQParser so we use the same info
- without trying to load the wrong file. Combine two methods to one.
- (lookupModuleFromSourcePath): New static helper method.
- * kawa/repl.java (compilationDirectory): Removed static field, replaced
- by non-static field in ModuleManager.
- (processArgs): Use ModuleManager's new setCompilationDirectory method.
- * kawa/standard/load.java (pply): Don't temporarily setBaseUri.
- * Makefile.am (patch-source-list): Change pattern so we catch
- files that only use #ifndef and not #ifdef,
- * configure.in (WITH_XQTS): Previous change not quite right.
- 2006-12-02 Per Bothner <per@bothner.com>
- * configure.in (WITH_XQTS): Default to false.
- 2006-12-01 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.8.91.
- * build.xml (version.release): Likewise.
- * configure.in: Add support for JAVA_SOURCE=6.
- * Makefile.am (select-java6): New rule, which sets JAVA6 and
- use:java.text.Normalizer.
- 2006-11-27 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (lookup): New hasNamespace.
- * kawa/standard/require.java (importDefinitions): Inline getDefine.
- Do check for duplicate declaration using getNamespaceOf.
- Use ScopeExp.duplicateDeclarationError.
- 2006-11-22 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxRules.java: Rename Consumer methods append->write.
- * kawa/lang/Promise.java: Likewise.
- * kawa/lang/Lambda.java: Likewise.
- * kawa/lang/SyntaxPattern.java: Likewise.
- * kawa/lang/AnyPat.java: Likewise.
- * kawa/lang/PairPat.java: Likewise.
- * kawa/lang/Macro.java: Likewise.
- * kawa/lang/EqualPat.java: Likewise.
- * kawa/lang/ListPat.java: Likewise.
- * kawa/lang/ListRepeatPat.java: Likewise.
- * kawa/lang/Syntax.java: Likewise.
- * kawa/lang/VarListPat.java: Likewise.
- 2006-11-20 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxRules.java (print): Update since parameter is
- now a Consumer.
- * kawa/lang/Promise.java (print): Likewise.
- * kawa/lang/Lambda.java (print): Likewise.
- * kawa/lang/AnyPat.java (print): Likewise.
- * kawa/lang/PairPat.java (print): Likewise.
- * kawa/lang/EqualPat.java (print): Likewise.
- * kawa/lang/ListPat.java (print): Likewise.
- * kawa/lang/ListRepeatPat.java (print): Likewise.
- * kawa/lang/VarListPat.java (print): Likewise.
- * kawa/lang/Macro.java (print): Likewise.
- * kawa/lang/Syntax.java (print): Likewise.
- * kawa/lang/SyntaxPattern.java (print): New method.
- * kawa/lang/Pattern.java: Now implements Printable.
- 2006-11-19 Per Bothner <per@bothner.com>
- * kawa/lang/Quote.java: Remove redundant 'implements Printable'.
- * kawa/standard/location.java: Likewise.
- * kawa/standard/let.java: Likewise.
- * kawa/standard/define.java: Likewise.
- * kawa/standard/define_variable.java: Likewise.
- * kawa/standard/define_alias.java: Likewise.
- * kwa/standard/fluid_let.java: Likewise.
- * kawa/standard/begin.java: Likewise.
- * kawa/standard/let_syntax.java: Likewise.
- * kawa/standard/set_b.java: Likewise.
- 2006-11-13 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxRules.java: Update for SourceLocation changes.
- * kawa/lang/Lambda.java: Likewise.
- * kawa/lang/SyntaxPattern.java: Likewise.
- * kawa/lang/Eval.java: Likewise.
- * kawa/lang/Macro.java: Likewise.
- * kawa/standard/object.java: Likewise.
- * kawa/standard/require.java: Likewise.
- * kawa/standard/define_class.java: Likewise.
- * kawa/standard/define_autoload.java: Likewise.
- * kawa/repl.java: Likewise.
- * kawa/lang/Translator.java: Likewise.
- (setLine, setLine): Generalize/simplify.
- 2006-10-26 Per Bothner <per@bothner.com>
- * kawa/standard/require.java: Error rather than warning on
- duplicate declaration.
- * configure.in (AC_INIT): Set version to 1.8.90.
- * build.xml (version.release): Likewise.
- * kawa/standard/Scheme (initScheme): Update class for 'html' prefix.
- * kawa/repl.java (processArgs): Use Symbol.parse to process
- parameter initialization.
- 2006-10-16 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (scanForm): Call rewrite to search lexical
- scope, so we can also indirectly set macroScope.
- This fixes Savannah bug #17993 "Unbound location exception when
- require-d syntax calls some procedures".
- 2006-10-15 Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): Set Language.requirePedantic static
- if --pedantic flag was seen.
- 2006-10-14 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (scanBody): Fix and simplify handling
- of SyntaxForm when we need to makeList by asking recursive call
- to make the list. This fixes Savannah bug #17984 "Compile time
- error in expansion of hygienic macros ending in literals".
- 2006-09-26 Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): If we find a matching propertyField,
- break instead of continue.
- 2006-09-18 Per Bothner <per@bothner.com>
- * configure.in (WITH_XQTS): New AM_CONDITIONAL.
- 2006-09-14 Per Bothner <per@bothner.com>
- * build.xml (java4-features): Don't use org.w3c.dom.Node by default.
- 2006-09-13 Per Bothner <per@bothner.com>
- * Shell.java (xmlPrinterClasses): Update for changed XMLPrinter
- constructors.
- * Shell.java (run): Call flush.
- 2006-09-12 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Som re-arranging.
- If we have a FieldLocation, use it's instance to set contextDecl.
- (checkMemberContext): Inline into caller and remove.
- 2006-09-08 Per Bothner <per@bothner.com>
- * Translator.java (reqrite): Catch missing (un-compiled) class when
- loading a field - could be a missing require declaration.
- 2006-09-06 Per Bothner <per@bothner.com>
- * kawa/lang/Macro.java: Remove unused import(s).
- * kawa/standard/try_catch.java: Likewise.
- * kawa/standard/module_static.java: Likewise.
- * kawa/standard/require.java: Likewise.
- * kawa/lang/Translator.java: Likewise.
- * kawa/standard/char_ready_p.java: Likewise.
- * kawa/lang/Translator.java (rewrite): Remove unused local(s).
- * kawa.repl (compileFiles): Likewise.
- * kawa/standard/define_syntax.java (scanForm): Remove unused local.
- * kawa/standard/require.java: Likewise.
-
- 2006-09-03 Per Bothner <per@bothner.com>
- * kawa/lang/loadcompiled.java: Remove unused class.
- * kawa/lang/Makefile.am: Update accordingly.
- * kawa/standard/read.java: Removed class, replaced by function read
- in kawa/lib/ports.scm.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/read_line.java: No longer extend ProcedureN.
- (numArgs, applyN, apply0, apply1, apply2): Remove methods.
- * kawa/standard/callcc.java (callcc): New static final field.
- * kawa/standard/Scheme.java: Appropriate updates.
- * kawa/standard/atan.java: Removed class, replaced by function atan
- in kawa/lib/numbers.scm.
- * kawa/standard/string2number.java: Removed class, replaced by function
- string->number in kawa/lib/numbers.scm,
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java (initScheme): Update accordingly.
- 2006-08-23 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (importDefinitions): Change type paraneter
- to className String. Handle appropriate exceptions.
- Various tweaks to handle cycles etc.
- (scanForDefinitions): Update accordingly.
- * kawa/standard/require.java (importDefinitions): Minor simplification.
- Also, don't make instance decl private if immediate.
- Set column number of alias decl, in addition to line number.
- 2006-08-16 Per Bothner <per@bothner.com>
- * Makefile.am (kawa/Version.java): If .svn/entries exists, extract
- SVN revision number and date and add that to the Kawa version string.
- (CLEANFILES): Move kawa/Version.java from -MAINTAINERCLEANFILES.
- (MAINTAINERCLEANFILES): Remove since no longer needed.
- 2006-08-08 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (scanForDefinition): Handle extended
- '(require [CLASS] "SOURCE")' syntax.
- (importDefinitions): New overloaded method, handles above new cases.
- Parse module if appropriate.
- (importDefinitions): Handle non-compiled class.
- Remove most special handling of immediate mode.
- * configure.in (--with-XQTS): New flag.
- (XQTS_PATH): New substitution variable.
- 2006-06-28 Per Bothner <per@bothner.com>
- * kawa/standard/TracedProcedure.java (curIndentSym): Use new
- Symbol.makeUninterned method.
- * Makefile.am: New (always-disabled) PreProcess macro JAXP-QName.
- 2006-06-23 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (check_if_Syntax): Inherit macroScope
- if from current TemplateScope.
- 2006-06-21 Per Bothner <per@bothner.com>
- * kawa/Shell.java (runString): Call the other run method so that
- getOutputConsumer gets called.
- 2006-06-16 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite_pair): Remove no-longer-needed
- and non-working handling of xml namespaces.
- (remove): Remove old AutoloadProcedure special handling.
- (asXmlNamespace): Remove unneeded method.
- * kawa/standard/Scheme.java (initSchame): Change "html" definition.
- 2006-06-09 Per Bothner <per@bothner.com>
- * kawa/lang/Record.java: No longer implement gnu.mapping.NameMap.
- * kawa/repl.java (compileFiles): Print line number if unexpected
- exception.
- 2006-06-05 Per Bothner <per@bothner.com>
- * kawa/standard/export.java (scanForDefinitions): Set and later restore
- current position on exach Pair, for more precise error messages.
- Also, put in partial support for SyntaxForm inputs.
- 2006-05-31 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Update to use new ModuleExp.evalModule call.
- This handles printing of errors - and now also warnings.
- Plus remove redundant runUntilDone.
- * kawa/lang/Eval.java (evalBody): Update ModuleExp.evalModule call.
- * kawa/standard/load.java (loadSource): Likewise.
- * kawa/standard/load.java (loadCompiled): Use WrapedException.
- 2006-05-25 Per Bothner <per@bothner.com>
- * kawa/standard/try_catch.java: Remove unneded import.
- * kawa/standard/with_compile_options.java: Likewise.
- * build.xml: Major simplification, since the modules in kawa/lib
- can be named in any order in the compilation command.
- 2006-05-25 Per Bothner <per@bothner.com>
- Handle module dependencies and cycles.
- * kawa/lang/CompileFile.java (compile_to_files): Remove method.
- * kawa/repl.java (compileFiles): New method.
- (processArgs): Simplify by using compileFiles.
- * kawa/lang/Eval.java (evalBody): Add now-needed cast.
- * kawa/lang/Translator.java (pendingForm): New field.
- (lookup): Replace call to lookupGlobal, which creates new Declaration
- if needed, with call to ModuleExp.lookup, which doesn't.
- (scanForm): Special-case check for begin Syntax.
- (scanForm): Handle deferred processing created by require or begin.
- (finishModule):: Simplification - don't need to check IS_UNKNOWN.
- (resolveModule): Handle any deferred pending imports.
- * kawa/standard/require.java (scanForDefinitions): If we're in the
- PROLOG_PARSING state, defer handling until the next pass.
- (importDefinitions): New parameter list.
- Check for cycles, and if so pushPendingImport.
- Various tweaks to handle the case when no class has been generated yet.
- 2006-05-25 Per Bothner <per@bothner.com>
- * kawa/lang/Syntax.java (scanForm): Slightly better error message,
- in case the ErrorEsp is erroneously compiled or evaluated.
- * kawa/lang/SyntaxTemplate.java (execute): Simplify debug logic.
- 2006-05-25 Per Bothner <per@bothner.com>
- * kawa/lang/Syntax.java (scanForm): Slightly better error message,
- in case the ErrorEsp is erroneously compiled or evaluated.
- * kawa/lang/SyntaxTemplate.java (execute): Simplify debug logic.
- 2006-05-23 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxRule.java: Remove unneeded import.
- * kawa/standard/IfFeature.java: Likewise.
- * kawa/standard/load.java: Likewise.
- * kawa/standard/set_b.java: Likewise.
- * kawa/standard/sleep.java: Likewise.
- * kawa/standard/syntax.java: Likewise.
- * kawa/standard/try_catch.java: Likewise.
- * kawa/lang/SyntaxTemplate.java (currentScope): Remove unused field.
- * kawa/standard/location.java: Likewise.
- * kawa/standard/prim_method.java: Likewise.
- * kawa/standard/set_b.java: Likewise.
- * kawa/lang/SyntaxTemplate.java: Use static syntax for static call.
- * kawa/standard/with_compile_options.java: Likewise.
- * kawa/lang/Eval.java: Remove unused local variable.
- * kawa/lang/Lambda.java
- * kawa/lang/Record.java: Likewise.
- * kawa/lang/SyntaxRules.java: Likewise.
- * kawa/lang/SyntaxTemplate.java: Likewise.
- * kawa/standard/define.java: Likewise.
- * kawa/standard/define_class.java: Likewise.
- * kawa/standard/object.java: Likewise.
- * kawa/standard/string2number.java: Likewise.
- 2006-05-21 Per Bothner <per@bothner.com>
- * kawa/standard/IfFeature.java (hasFeature): Remove old testing junk.
- * kawa/standard/module_name.java (scanForm): Don't set STATIC_SPECIFIED
- on module Declaration - confused FindCapturedVars.capture.
- 2006-05-19 Per Bothner <per@bothner.com>
- * kawa/standard/define_autoload.java (process): Handle Symbols.
- * kawa/lang/Lambda.java (nameKeyword): New constant field.
- (rewriteAttrs): Handle name: keyword.
- 2006-05-06 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Implementations of 'string',
- 'quantity->number', 'quantity->unit', 'make-quantity' now in kawa.lib.
- * kawa/standard/make_quantity.java: Remove file.
- * kawa/standard/quantity2number.java: Likewise.
- * kawa/standard/quantity2unit.java: Likewise.
- * kawa/standard/string_v.java: Likewise.
- * Makefile.am: Update accordingly.
- 2006-05-02 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Do setLine on new ReferenceExp.
- 2006-05-01 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (read): Remove unused method.
- (getLexer): Remove - use super version.
- (createReadTable): Update called method name.
- * kawa/standard/read.java (apply1): Update ScmRead -> LispReader.
- 2006-04-26 Per Bothner <per@bothner.com>
- * kawa/lang/Macro.java (make(Declaration)): Set capturedScope.
- * kawa/standard/define_syntax.java (scanForm): If immediate, generate
- a call to set the capturedScope.
- * kawa/standard/location.java (rewrite): Revert 2006-04-21 change.
- Instead follow aliases before setting can-read/can-write flags.
- 2006-04-21 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (importDefinitions): Don't needlessly
- clear simple flag for alias declaration.
- * kawa/standard/location.java (rewrite): Mark declaration as non-simple.
- 2006-04-19 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (importDefinitions): Check exported
- decl's isPrivate rather than field name. More robust in that it works
- even if imported module hasn't been compiled yet.
- 2006-04-14 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Get "caar", "cadr" etc from
- kawa.lib.lists rather than kawa.standard.cxr.
- * kawa/standard/cxr.java: Remove file.
- * kawa/standard/Makefile.am: Update accordingly.
- 2006-04-14 Per Bothner <per@bothner.com>
- Various macro fixes. Most important, quasisyntax sub-templates inherit
- a shared TemplateScope.
- * kawa/lang/PatternScope.java (push): Set outer scope.
- * kawa/lang/TemplateScope.java (make): New factory methods.
- * kawa/lang/SyntaxTemplate.java (execute): Use passed-in TemplateScope
- rather than allocating it.
- If DEBUGGING, check if vars is null.
- * kawa/lang/SyntaxRules.java (expand): Need to allocate TemplateScope
- here before passing it to SyntaxTemplate.execute.
- * kawa/lang/Translator.java (templateScopeDecl): New field.
- * kawa/standard/let_syntax.java (rewrite): Set setCapturedScope
- on new macros.
- * kawa/standard/syntax.java (rewriteForm): Genrate code to allocate
- and use TemplateScope, using templateScopeDecl.
- * kawa/standard/let_syntax.java (rewrite): Set name of macro.
- 2006-04-10 Dean Ferreyra <dferreyra@igc.org>
- Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): Handle new
- --debug-{error,warning}-prints-stack-trace arguments,
- (printOptions): List them.
-
- 2006-04-06 Dean Ferreyra <dferreyra@igc.org>
- * kawa/lang/SyntaxTemplate.java: Fix typo in error message.
- 2006-03-26 Per Bothner <per@bothner.com>
- * Makefile.am (JAVA4_FEATURES, NO_JAVA4_FEATURES): New feature flag
- use:java.util.regex.
- 2006-03-25 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Bind 'slot-ref'
- to new SlotGet.slotRef field.
- 2006-03-24 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (instance): Make public, so it can
- be compiled as a literal.
- 2006-03-23 Per Bothner <per@bothner.com>
- * kawa/standard/map.java (inline): Also inline on new ApplyExp.
- 2006-03-17 Per Bothner <per@bothner.com>
- * kawa/standard/define_member_alias.java (scanForDefinitions):
- Minor optimization.
- 2006-03-16 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (exp2Type): May need to InlineCalls on
- type-specifier - for example for PREFIX:<>.
- 2006-03-13 Per Bothner <per@bothner.com>
- * configure.in: Define JAVACFLAGS, and default it to -g.
- * Make-rules: Remove redundant JAVACFLAGS macro.
- 2006-03-12 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (scanClassDef): Move rewrite of
- list of sypertypes to ...
- (rewriteClassDef): ... here.
- 2006-03-11 Per Bothner <per@bothner.com>
- * kawa/lang/Quote.java (expand): Never call Translator.namespaceResolve
- - which had become a no-op in this context.
- (DATUM_DEPTH): Remove constant.
- Replace most uses by QUOTE_DEPTH.
- (expandColonForms): New protected method.
- (expand_pair): Do namespace resolution on $lookup$ forms only if
- expandColonsForms is true.
- * kawa/standard/syntax.java (expandColonForms): New method.
- This fixes a problem where colon forms in syntax forms got quoted,
- instead than being handled when the syntax template was expanded.
- 2006-03-03 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Define "duration" function.
- (createReadTable): Define "duration" reader constructor function.
- 2006-02-22 Per Bothner <per@bothner.com>
- * Makefile.am (JAVADOC_FLAGS): Pass -use to javadoc.
- 2006-02-19 thomas kirk <tk@research.att.com>
- Per Bothner <per@bothner.com>
- * kawa/standard/load.java (loadCompiled): Get main class from
- ZipLoader.loadAllClasses rather than using LambdaExp.fileFunctionName.
- This fixes Savannah bug #15725.
- (loadSource): Don't set module name to LambdaExp.fileFunctionname.
- 2006-02-19 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Use ClassMethods.getMethods
- rather than ClassMethods.apply to we can pass in 'caller'.
- It also does less useless work.
- * kawa/lang/Translator.java (rewrite): When searching lexical scope,
- also seach fields of methods of this class and super-types.
- * kawa/standard/object.java (rewriteClassDef): Call setTypes earlier,
- so we can search for inherited fields and methods.
- Remove old incomplete code for matching fields and methods.
- 2006-02-16 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Handle reference to method name
- by create a GetNamedExp.
- * kawa/standard/map.java (inline): If evaluating procedure doesn't
- have side-effects, do so inside loop, which may allow inlining.
- 2006-02-15 Per Bothner <per@bothner.com>
- * COPYING: Change to use X11/MIT license.
- * gnu/*/COPYING: Remove redundant files.
- * configure.in: Oops. Partly go back to original handling
- of --{with,enable}-servlet.
- 2006-02-14 Per Bothner <per@bothner.com>
- * kawa/standard/define.java (scanForm): Fix oops in previous check-in.
- * kawa/lang/Quote.java (expand_pair): Use GetNamedPair.combineName
- to resolve '($lookup$ part1 'part2) to 'part1:part2 - as in source.
- * kawa/lang/Translator.java (namespaceResolve): Likewise.
- Remove no-longer needed code to resolve actual namespace declaration.
- * kawa/standard/define.java (scanForm): Fix wrong test for a function
- definition - which failed when the name was a Symbol.
- * kawa/standard/define.java: Fix incorrect comment.
- 2006-02-13 Per Bothner <per@bothner.com>
- * kawa/lang/Quote.java (expand_pair): Translate (%lookup$ PART1 'PART2)
- to 'PART1:PART2.
- * kawa/lang/Translator.java (namespaceResolve): Remove two overloads.
- (namespaceRewriteResolve): Remove method. Just inline it.
- (rewrite): Remove a namespaceResolve call.
- Always inline getNamedPart.
- * kawa/standard/Scheme.java (getNamedPartDecl): New static field.
- (makeApply): Change return type. Check if function is getNamedPartDecl.
- * kawa/standard/define.java (scanForn): Always call tr.namespaceResolve.
- * kawa/standard/define_syntax.java (scanForm): Likewise.
- * configure.in: Fix recent breakage in --{with,enable}-servlet.
- Also make a simplification.
- 2006-02-12 Per Bothner <per@bothner.com>
- * configure.in: Fix/simplify handling with --with-awt and --with-swing.
- 2006-02-10 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite_body): No longer need to call
- mustCompileHere().
- * kawa/lang/Lambda.java (rewriteFormals): For anonymous functions
- do setSourceLocation.
- * kawa/standard/syntax_case.java (rewriteClauses): Fix to use
- correct PrimProcedure constructor, taking a Language.
- 2006-02-09 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewriteBody): No longer need to
- mustCompleHere.
- * kawa/lang/Eval.java (evalBody): Use new pushNewModule method.
- * kawa/standard/map.java (inline): Use existing IsEq from Scheme.
- 2006-02-07 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): The R5RS functions
- integer?, max, min, gcd, lcm, logand, logior, logxor are now
- implemented in Scheme in kawa.lib.numbers.
- (define_proc): Remove two no-longer-needed methods.
- * kawa/standard/gcd.java: Remove no-longer-needed file.
- * kawa/standard/integer_p.java: Likewise.
- * kawa/standard/lcm.java: Likewise.
- * kawa/standard/logand.java: Likewise.
- * kawa/standard/logior.java: Likewise.
- * kawa/standard/logxor.java: Likewise.
- * kawa/standard/max.java: Likewise.
- * kawa/standard/min.java: Likewise.
- * Makefile.am: Update accordingly.
- 2006-02-06 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite_pair): Update checking for xml
- namespaces to match namespace changes.
- (namespaceResolve, namespaceRewriteResolve): New/rewritten methods.
- (scanForm): Do namespaceRewriteResolve first.
- * kawa/standard/Scheme.java (applyToArgs, setApplyToArgs,
- applyFieldDecl): New static fields.
- (makeApply): New method, overrides LispLanguage.
- (createReadTable): Change postfixLookupOperator to ':'.
- * kawa/standard/define.java (scanForm): Some changes to handle
- namespace resolution. Set type of functions to Procedure.
- * kawa/standard/export.java (scanForDefinitions): Since namespace
- prefixes are now in the regular namespace, we no longer need
- to export 'namespace:PREFIX'.
- * kawa/standard/location.java (makeProcLocation$V): Remove needless
- ApplyToArgs application.
- * kawa/standard/set_b.java (rewriteForm): Check for ApplyToArgs.
- 2006-02-06 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (scanClassDef): Specify that method
- Declarations have Procedure type.
- 2006-02-03 Per Bothner <per@bothner.com>
- * kawa/standard/cxr.java (caar, cadr, etc): New static fields.
- (cxr): New constructor.
- (program): Make private.
- (apply1, set1): No longer need to call program, since done by <init>.
- * kawa/standard/Scheme.java (initScheme): Modify definitions of
- caar, cadr, etc to use nwe static fields.
- 2006-02-02 Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): Update copyright year printed
- when giving the --version flag.
- * kawa/standard/Scheme.java (initScheme): Declare 'namespace' function.
- (createReadTable): Declare 'namespace' reader constructor.
- 2006-01-12 Per Bothner <per@bothner.com>
- * build.xml: Update directory containing HTTP.scm.
- 2006-01-11 Per Bothner <per@bothner.com>
- * Makefile.am (SUBDIRS): Add new directory gnu/kawa/swtviews.
- (JAVADOC_PACKAGES): Add new package gnu.kawa.swtviews.
- * configure.in (AC_CONFIG_FILES): Add gnu/kawa/swtviews/Makefile.
- * kawa/repl.java (propertyFields): Add "display:toolkit".
- * kawa/standard/require.scm (featureMap): Define swing-gui feature.
- 2006-01-10 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Declare resource-uri.
- * kawa/repl.java (processArgs): The debugPrintExpr flag was moved from
- ModuleExp to Compilation.
- * kawa/standard/require.scm (featureMap): HTTP was moved.
- * Makefile.am (SUBDIRS): No longer conditionalize on ENABLE_SERVLET.
- Instead, always do gnu/kawa/servlet. However, rearrange so it done
- later, since it now includes HTTP.scm.
- 2006-01-07 Per Bothner <per@bothner.com>
- * kawa/lang/Quote.java (consX$V): New static helper method.
- (expand_pair): Use new consX$V method rather than compiled
- method in gnu.kawa.slib.srfi1. The latter caused an awkward
- dependency which broke quasi-quotation under Common Lisp.
- (consXType): Remove no-longer-needed field.
- * kawa/standard/Scheme.java (getNamedType): Declare <URI> type.
- (initScheme): Declare resolve-uri function, and module-uri syntax,
- 2006-01-04 Per Bothner <per@bothner.com>
- * kawa/standard/load.java (apply): Use new URI_utils methods.
- 2005-12-31 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Declare URI function.
- (createReadTable): Declare URI as a reader constructor.
- * kawa/lang/Quote.java: Un-tab-ify conditional code.
- * kawa/lang/SyntaxTemplate.java: Likewise.
- 2005-12-30 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Fix bug which prevented getOutputConsumer
- from being run for a repl, thus giving incorrect output.
- * kawa/standard/require.java (featureMap): Add "srfi-10" as an alias.
- * kawa/standard/Scheme.java (createReadTable): Handle "#," syntax.
- 2005-12-22 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxPattern.java (translate): Set source position
- on pattern Declarations.
- 2005-12-11 Per Bothner <per@bothner.com>
- Remember URL of loaded file, so it can be passed to ArrayClassLoader.
- * kawa/Shell.java (run): Take extra URL argument.
- (runFile): Handle skipLines even if read from stdin.
- * kawa/repl.java (processArgs): Update evalModule call.
- * kawa/lang/Eval.java (evalBody): Likewise.
- * kawa/standard/load.java (loadSource): New URL parameter.
- (apply): Get URL and pass it to loadSource.
- * kawa/lang/Lambda.java (rewriteBody): Temporarily set curLambda.
- * kawa/standard/object.java (rewriteInit): Set line of initializing
- SetExp to that of Declaration - rather than current Translator position.
- 2005-12-10 Per Bothner <per@bothner.com>
- * kawa/standard/load.java (apply): Add extra argument.
- Skip that many lines.
- (apply2): Update to match.
- * kawa/Shell.java (runFile): Also add extra skipLines argument.
- * kawa/repl.java: Update runFile callers.
- (processArgs): Handle new --script and --scriptN options.
- * kawa/standard/load.java (apply): Remove some hacks to map "class name"
- to filename, and special .scm handling.
- In return, we now allow general URLs in addition to filename.
- (loadSource(String,Environment)): Remove static method.
- 2005-12-05 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (createReadTable): Use '\\' for
- postfixLookupOperator instead of '`'.
- 2005-12-04 Per Bothner <per@bothner.com>
- Handle Syntactic sugar to map OBJECT`NAME to ($lookup$ OBJECT 'NAME).
- * kawa/standard/Scheme.java (initScheme): Define "$lookup$" function.
- (createReadTable): Bind '`' to postfixLookupOperator.
- * kawa/lang/Translator (rewrite_pair): Be a little more conservative
- with xml names: Only map to make-element if prefix matches.
- * kawa/standard/Scheme.java (initScheme): Define define-xml-namespace.
- (html): Define as an xml-namespace.
- * kawa/lang/Translator (asXmlNamespace): New method.
- (rewrite_pair): Translate application of xml-names to make-element.
- 2005-12-03 Per Bothner <per@bothner.com>
- * kawa/lang/Quote.java (rewrite): Fix error message.
- * kawa/lang/Translator.java (namespaceResolve): Combine code paths
- to reduce code duplication.
- * kawa/lang/Translator.java (namespaceResolve): Use new makeExp method.
- 2005-11-30 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewriteBody): Set/reset curMethodLambda
- if we're in a top-level methods and supertype has been specified.
- * kawa/standard/thisRef.java (rewriteForm): Allow (this) in a top-level
- function whose module has the super-type explicitly specified. In
- that case create a matching Declaration, if needed.
- 2005-11-29 Per Bothner <per@bothner.com>
- * kawa/lang/Quote.java: Make various methods non-static, and make
- some methods/fields protected so derived class can use it.
- (leaf): New wrapper around QuoteExp construction, for overriding.
- (expand_pair): Extend unqute and unquote-splicing to allow multiple
- arguments, to match Alan Bawden's suggestion (1999).
- (append$V): New method, to handle SyntaxForm wrappers.
- * kawa/lang/Translator.java (matches): New variant takes SyntaxForm.
- * kawa/standard/Scheme.java (initScheme): Define quasisyntax.
- Re-arrange R5RS vs syntax-case macros.
- (createReadTable): Define #` as quasisyntax.
- * kawa/standard/syntax.java: Change to extend kawa.lang.Quote.
- This provides quasisyntax support.
- (wrap, convert): Remove unused methods. (Was also unused before.)
- * kawa/standard/define_alias.java (scanForDefinitions): Handle
- SyntaxForm unwrapping.
- 2005-11-28 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java (compile_to_files): Set top-level
- class name only if passed in.
-
- 2005-11-27 Per Bothner <per@bothner.com>
- * kawa/standard/load.java (loadCompiled): Used WrappedException.
- 2005-11-23 Per Bothner <per@bothner.com>
- * kawa/standard/module_name (scanForm): Do the SyntaxForm handling
- in case this is called in a macro.
- Allocate Compilation's mainClass if not set yet.
- Create a private Declaration if the name is a symbol.
- * kawa/standard/prim_method.java (constructor): Remove static field.
- (rewrite): Remove no-longer-used support for invokespecial.
- * kawa/standard/Scheme.java: New generate-temporaries procedure.
- primitive-constructor was moved to kawa.lib.reflection.
- * kawa/standard/constant_fold.java (checkConstant): Allow for
- Declaration with UNKNOWN flag or constant value.
- 2005-11-21 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewriteForm): New method, so we can set
- the line/column number to the actual lambda expression.
- 2005-11-20 Per Bothner <per@bothner.com>
- * Make-rules (java-classes.stamp, scm-classes.stamp,
- clisp-classes.stamp, elisp-classes.stamp):
- Also touch kawa-jar.stamp in top-dir.
- * Makefile.am: Remove JAP_DEPS_XXX macros.
- (kawa-@VERSION@.jar): Depend on kawa-jar.stamp instead of JAR_DEPS.
- (MOSTLYCLEANFILES): Remome *.stamp - specifically kawa-jar.stamp.
- * Makefile.am (SUBDIRS): Enter jemacs/swing/swt dirs unconditionally.
- (JEMACS_SUBDIRS, JEMACS_SWING, JEMACS_SWT, SWINGVIEWS_SUBDIRS):
- Remove no-longer-needed macros.
- * configure.in: New --enable-jemacs option - default off,
- to avoid accidental includion of GPL'd code.
- New --enable-echo2, currently unused.
- Change --with[out]-swing to default to 'with'.
- Add ENABLE_JEMACS and ENABLE_ECHO2 automake conditionals.
- Remove SWING_SELECTED, AWT_SELECTED, XML_SELECTED, extra_java variables.
- * kawa/Makefile.am: Use WITH_AWT conditional.
- 2005-11-18 Per Bothner <per@bothner.com>
- Fixes Savannah bug #14097: problem with (this) syntax within
- define-syntax.
- * kawa/lang/Translator.java (curMethodLambda): New field.
- * kawa/standard/object.java (rewriteClassDef, rewriteInit):
- Save, set and restore curMethodLambda.
- * kawa/standard/thisRef.java: Don't search static scope chain for
- a class-method, since that may be weird when expanding macros.
- Instead, use curMethodLambda.
- 2005-11-17 Per Bothner <per@bothner.com>
- * kawa/standard/define_class.java (scanForDefinitions): Use new
- ClassExp constructor.
- Don't set STATIC_SPECIFIED for simple class since that needlessly
- prohibits "inner" classes accessing external data.
- Set name of ClassExp now rather than during rewrite.
- * kawa/standard/object.java (rewriteForm): Don't need to setSimple.
- (rewriteClassDef): Call ClassExp's new setClassName method.
- Call ClassExp's setTypes and declareParts methods here.
- 2005-11-16 Per Bothner <per@bothner.com>
- * kawa/standard/module_name.java (rewriteForm): Replace method by
- scanForm method, since we want to set class names in the first pass.
-
- * kawa/repl.java (compilationPrefix): Remove field.
- We now use Compilation.classPrefixDefault.
- (processArgs): Update accordingly.
- * kawa/lang/CompileFile.java (compile_to_files): Remove prefix
- parameter. Set classname after we've parsed file, using classPrefix.
- * kawa/standard/define_autoload.java (scanFile): Use classPrefix.
- * kawa/standard/module_name.java (rewriteForm): Use classPrefix.
- If name has a package prefix, set classPrefix.
- * kawa/standard/require.java (scanForDefinitions): Use classPrefix.
- 2005-11-08 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.8.1alpha.
- * build.xml (version.release): Likewise.
- 2005-11-03 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (namespaceResolve): Also check dynamic
- environment. Needed to handle define-namespace in repl.
- 2005-10-27 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java (compile_to_files): Call resolve.
- * kawa/lang/Translator.java (finishModule): Move final actions to ...
- (resolveModule): ... new method.
- (firstForm): New field, instead of finishModule parameter.
- * kawa/lang/Eval.java (evalBody): Update for modified firstModule.
- 2005-10-27 Per Bothner <per@bothner.com>
- * build.xml: Kludgy update for gnu/kawa/srfi for new files.
- 2005-10-24 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java: Declare test-begin.
- * kawa/standard/Scheme.java: Declare define-for-syntax, syntax-source,
- syntax-line, syntax-column macros.
- * kawa/standard/IfFeature.java (hasFeature): Look for a magic
- "%provide%"+NAME variable, as defined by the new provide macro.
- * kawa/standard/Scheme.java: Declare (provide ...) macro.
- 2005-10-20 Per Bothner <per@bothner.com>
- * kawa/standard/IfFeature.java (hasFeature): We also have features
- srfi-16 and srfi-39.
- * kawa/standard/require.java (featureMap): Add srfi-35, srfi-35,
- and aliases.
- 2005-10-19 Per Bothner <per@bothner.com>
- * kawa/standard.Scheme.java: Define syntax-error macro.
- 2005-10-18 Per Bothner <per@bothner.com>
- * Makefile.am JAVADOC_ANT_JARS, JAVADOC_ECLIPSE_JARS): Update/fix.
- (javadoc-cvs.log): Make script more robust wrt empty file lists.
- 2005-10-16 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (featureMap): Add 'srfi-69,'hash-table.
- * build.xml (slib-scm): Add srfi69.scm, testing.scm.
- 2005-10-13 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (rewriteClassDef): If method name is
- "*init*" (i.e. a constructor) set the return type to void.
- Also complain if a non-simple class.
- Also set line number of method.
- * kawa/lang/Lambda.java (rewriteAttrs): Complain if explicit
- return type seen for "*init* method.
- * kawa/lang/Lambda.java (rewrite): Remove redundant method.
- (rewrite(Object,Translator)): Update accordingly,
- * kawa/lang/Lambda.java (rewrite(Object,Translator)):
- Set line of LambdaExpr from pair.
- * kawa/lang/Lambda.java (rewriteBody): If returnType specified, wrap
- body in coercion even if it is a BeginExp.
- However, don't do so it returnType is void_type.
- 2005-10-06 Per Bothner <per@bothner.com>
- * Makefile.am (select-javaXX): Also search inherited $CLASSPATH -
- though last.
- 2005-10-05 Per Bothner <per@bothner.com>
- * Makefile.am (select-javaXX): Add "." to CLASSPATH so we find the
- PreProcess class.
- 2005-10-05 Jim White <jim@pagesmiths.com>
- * build.xml (lib-scm-4): Add parameters.scm.
- 2005-09-28 Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): Update copyright printed by --version.
- * Makefile.am: Fold +JAVA2 into JAVA4_FEATURES macro.
- 2005-09-27 Per Bothner <per@bothner.com>
- * kawa/standard/location.java (rewrite): Do setCanRead and setCanWrite
- on variable captured by a location.
- Fixes Savannah bug #14640: internal compile error when using "location".
- * Makefile.am: Define new PreProcess flag: use:java.net.URI.
- * build.xml: Likewise.
- * kawa/standard/load.java (apply): If relative, resolve against
- base uri here only, and not in loadSource.
- (loadSource): Make private. Remove 'relative' parameter.
- Don't do any uri-resolving - assume caller has done that.
- If the result is still relative, assume it's a elative file name.
- Fixes Savannah bug #14397: load-relative doesn't work.
- 2005-09-26 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Set version to 1.8.
- * build.xml (version.release): Likewise.
- 2005-08-15 thomas kirk <tk@research.att.com>
- * kawa/standard/Scheme.java (initScheme): define 'runnable'
- * kawa/GuiConsole.java (<init>): access Future environment with
- call to environment() rather than field access.
- 2005-08-17 Per Bothner <per@bothner.com>
- * Makefile.am (JAR_DEPS_XML): Also depend on gnu/kawa/xml's stamp file.
- 2005-08-09 Per Bothner <per@bothner.com>
- * kawa/lang/eval.Java (eval, evalBody): Update to use startFromContext,
- getFromContextand cleanupFromContext methods from CallContext.
- Fixes Savannah bug #14071: Problem with use of eval in a repl.
- 2005-08-09 Per Bothner <per@bothner.com>
- * Makefile.am (JAVADOC_FLAGS): Remove (comment out) macro.
- * Makefile.am (set-selected-java-source): Fix thinko.
- 2005-08-03 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (namespaceResolve): Add a followAliases
- to handle imported classes.
- * kawa/lang/Translator.java (namespaceResolve): Return expressions that
- creates a ClassMethodProc, when appropriate.
- * kawa/standard/Scheme.java (lookupBuiltin): No point at this time
- in handling Symbols with uri starting "class:".
- * kawa/standard/set_b.java (rewriteForm): Optimize (TYPE:MEMBER ...)
- forms using ClassMethodProc rewrite form.
- * kawa/standard/Scheme.java (initScheme): Update field name used
- slot-set!.
- 2005-08-03 Chris Dean <ctdean@sokitomi.com>
- * kawa/standard/Scheme.java (initScheme): Define new
- define-private-namespace function.
- 2005-07-29 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (namespaceResolve): If prefix is bound in
- the current environment to a ClassType, add "class:" prefix to name.
- 2005-07-27 Per Bothner <per@bothner.com>
- * Makefile.am (set-selected-java-source): New rule - set
- selected-java-source but only if changed.
- (select-java1, select-java2, select-java4, select-java4x, select-java5):
- Use new set-selected-java-source rule, which works with read-only files.
- * Makefile.am (dist-hook): Default is now select-java4.
- * configure.in (AC_INIT): Set version to 1.8beta.
- * build.xml (version.release): Likewise.
- 2005-07-25 Per Bothner <per@bothner.com>
- * kawa/standard/fluid-let.java (rewrite): Revert thinko in previous
- change.
- 2005-07-23 Per Bothner <per@bothner.com>
- * kawa/standard/fluid-let.java (rewrite): Push/pop position
- for better error messages.
- 2005-07-23 Alex Milowski <alex@milowski.org>
- * kawa/standard/fluid-let.java (rewrite): Handle SyntaxForm.
- 2005-07-23 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (*print-base*, *print-radix*,
- *print-right-margin*, *print-miser-width*): New fluid variables.
- * kawa/GuiConsole.java (<init>): New shared parameter.
- Use to call InheritingEnvironment's setIndirectDefines.
- (actionPerformed): Update for modified Environment inheritance.
- * kawa/standard/TracedProcedure.java (applyN): setWithSave and
- setRestore now require an extra CallContext parameter.
- 2005-07-21 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (<init>): Default constructor now calls
- geNewEnvironment, to match old documentation/advice.
- Also sets the environ field.
- New non-default constructor called from clinit.
- * kawa/repl.java (propertyFields): New static table.
- (processArgs): Process arguments of the form 'NAME=VALUE'.
- 2005-07-20 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Set and restore default Language.
- * kawa/standard/Scheme.java (r4Environment, r5Environment,
- kawaEnvironment): Make final, and allocate in static block.
- 2005-06-29 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (numEqu, numGrt, numGEq, numLss, numLEq):
- New static fields for the numeric compare functions.
- (initScheme): Re-define numeric comparisions using new fields.
- 2005-06-27 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (checkMemberContext): New method.
- (rewrite): Call checkMemberContext.
- * kawa/standard/set_b.java (rewriteFrom): Set context Declaration.
- Fixes Savannah bug #4881.
- 2005-06-26 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (processAccesses): Call new capture method
- in LambdaExp to force field to get allocated.
- * kawa/standard/syntax_case.java (rewriteClauses): Handle SyntaxForm
- in input form.
- * kawa/lang/SyntaxTemplate.java (convert_template): Convert '(... ...)'
- to '...' as in other syntax-case implementations.
- 2005-06-04 Per Bothner <per@bothner.com>
- * kawa/Shell.java: Update for AbstractFormat move to gnu.lists.
- * kawa/standard/Scheme.java: Likewise.
- * kawa/Shell.java (getOutputConsumer): Check for AbstractFormat
- instead of removed FormatToConsumer.
- (run): Likewise update types.
- * kawa/standard/Scheme.java (writeFormat, displayFormat): Change type.
- (getFormat): Change return type to AbstractFormat.
- * kawa/standard/Scheme.java: Redefine write and display as functions
- in kawa.lib.ports, since DisplayForm no longer extends Procedure.
- For same reason, don't call setname on writeFormat and displayFormat.
- 2005-05-27 Christian Surlykke <christian@surlykke.dk>
- * build.xml: Make mappers insider uptodate elements take build.dir
- property into account.
- * build.properties: Use basedir in template for build.dir property.
- 2005-06-02 Per Bothner <per@bothner.com>
- Handle re-exporting declarations imported from a module.
- * kawa/lang/Macro.java (getCapturedScope): Use new findFromInstance
- method from ModuleInfo.
- * kawa/lang/TemplateScope.java (macroContext): New field.
- * kawa/lang/SyntaxTemplate.java (execute): Set TemplateScope's
- macroContext field from Translator's macroContext field.
- * kawa/lang/Translator.java (macroContext): New field.
- (getBinding): Inline into check_if_Syntax and remove.
- (check_if_Syntax): Simplify and change to only lookup lexical
- declaration. However, also set macroContext.
- (rewrite_pair, scanForm): Use new check_if_Syntax.
- (rewrite): If scope is TemplateScope, set context of ReferenceExp
- from macroContext, if needed.
- * kawa/standard/require.java (importDefinitions): Change parameter.
- Don't search up super chain. Use new ModuleInfo.setupModuleExp,
- and then iterate over resulting decls, rather than over fields.
- Silently skip if we duplicate existing decl with same alias base.
- Don't do makeDeclInModule2 in second pass since already done
- by setupModuleExp. However, search for suitable xxx$instance
- declaration.
- (makeModule): Remove unused method.
- (makeDeclInModule1, makeDeclInModule1): Move to ModuleInfo.
- * kawa/standard/define.java (scanForm): Push/pop source location
- around define call for better error messages.
- 2005-05-29 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewriteBody): If not STATIC_SPECIFIC for class
- method then add the implicit this parameter.
- * kawa/standard/thisRef.java (rewriteForm): Look for implicit this
- parameter.
- * kawa/standard/object.java: Rewrite handling of init forms, since
- we want them to be in the scope of the init methods. One reason is
- so we can bindg (this) to the implicit thuis parameter,
- (rewriteInit): New private method.
- (makeInitMethod): Remove method.
- This fixes Savannah bug #10806.
- 2005-05-27 Per Bothner <per@bothner.com>
- * kawa/standard/load.java (loadSource): "Inline" call to CompileFile's
- read method, and set PARSE_IMMEDIATE flag.
- 2005-05-27 Dean Ferreyra <dferreyra@igc.org>
- * kawa/lang/Eval.java (evalBody): Need to set immediate flag.
- 2005-05-27 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (importDefinitions): Simplify immediate
- mode to share more logic with non-immediate mode.
- * kawa/standard/require.java (makeDeclInModule2): Don't
- setCapturedScope; it's wrong and may trash correct scope
- set in makeDeclInModule1.
- * kawa/standard/define_syntax.java (scanForm): We can now simplify
- the immediate and static cases to match the normal case.
- * kawa/standard/require.java (importDefinitions): Cast getRunInstance
- result to void, to avoid it being in the expression result.
- 2005-05-19 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewriteBody): Split up call to Compilation's
- push method into pieces and interleave them with default argument
- rewrite, so the latter are done using the correct scope.
- Fixes Savannah bug #10613.
- 2005-05-18 Per Bothner <per@bothner.com>
- * Makefile.am (select-java1, select-java2, select-java4, select-java4x,
- select-java5): Define new PreProcess key use:java.lang.CharSequence.
- * kawa/lang/Quote.java: Use use:java.util.IdentityHashMap, instead of
- JAVA2 - which was wrong since IdentityHashMap is new in JDK 1.4.
- * kawa/lang/SyntaxTemplate.java: Likewise.
- * kawa/standard/syntax.java: Likewise.
- 2005-05-18 Per Bothner <per@bothner.com>
- * kawa/TelnetRepl.java (serve): Get current Environment directly.
- * kawa/lang/AutoloadProcedure.java (load): Use new getLangEnvironment.
- 2005-05-17 Per Bothner <per@bothner.com>
- * kawa/standard/fluid_let.java (rewrite): Look for lexical binding.
- 2005-05-13 Per Bothner <per@bothner.com>
- * kawa/lang/Quote.java (expand_pair): Rewrite to avoid deep recursion
- (and possible StackOverflow) on long lists.
- 2005-05-10 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Don't follow FieldLocation
- if not inlineOk as that may fail compiling a lambda context.
- 2005-05-06 Per Bothner <per@bothner.com>
- * kawa/GuiConsole.java: Some updates for changed environment handling.
- * kawa/Shell.java (run): Remove one overloaded method.
- * kawa/repl.java (processArgs): Update accordingly.
- * kawa/lang/Eval.java(evalBody): Don't change current Environment.
- * kawa/lang/Translator.java (<init>): Use current Environment for env.
- * kawa/standard/Scheme.java (getNewEnvironment): Remove method.
- (<clinit>): Don't getNewEnvironment.
- (lookupBuiltin): New method, based on code from ScmEnv.
- * kawa/standard/ScmEnv.java: No longer needed - functionality
- merged into Scheme's lookupBuiltin.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/MessageArea.java (write): Do setCaretPosition.
- 2005-04-21 Per Bothner <per@bothner.com>
- * kawa/standard/require.java: Use new contextDecl/setContextDecl
- accessors instead of accessing context field directly.
- 2005-04-20 Per Bothner <per@bothner.com>
- Solidify support for re-exporting imported declarations.
- * kawa/lang/Translator.java (processAccesses): If decl is refernced
- by an exported macro, than it must be non-simple.
- * kawa/standard/require.java (importDefinitions): Recognize and
- create declarations for MODULE_REFERENCEs.
- (makeDeclInModule): Split into ...
- (makeDeclInModule1, makeDeclInModule2): ... two new methods.
- * kawa/standard/require.java (scanForDefinitions): Use matches
- method of Translator to check for 'NAME.
- 2005-04-19 Per Bothner <per@bothner.com>
- * NEWS: Resurrect, since required by GNU/automake standards,
- but (at least for now) only a reference to the news.html web-page.
- 2005-04-18 Per Bothner <per@bothner.com>
- * Makefile.am: Split JAVA4 PreProcess name into two features:
- use:java.lang.CharSequence and use:java.lang.Throwable.getCause.
- * Make-rules ($(OFILES_DIR)/$(PACKAGE_FNAME).lo: Instead of -I flags,
- use $(CLASSPATH_ENV).
-
- * kawa/standard/syntax.java (convert): Syntax fix for not-JAVA2.
- 2005-04-17 Per Bothner <per@bothner.com>
- * configure.in (configure.in): Support --with-java-source=4 and 4x.
- The default is now --with-java-source=4.
- Make -with-awt the default, even if --with-gcj.
- * Makefile.am (select-java4, select-java4x): New rules.
- (select-java-source): Handle '4' and '4x'.
- * Makefile.am (JEMACS_SUBDIRS): List gnu/jemacs subdirs rather than
- gnu/jemacs. Move stuff from gnu/jemacs/Makefile.am.
- * configure.in (AC_CONFIF_FILES): Remove gnu/jemacs/Makefile.
- 2005-04-16 Per Bothner <per@bothner.com>
- * NEWS: Remove file; replaced by html web-page
- http://www.gnu.org/software/kawa/news.html.
- * Makefile.am (instanll-html), README: Update accordingly.
- 2005-04-08 Per Bothner <per@bothner.com>
- * kawa/standard/export.java (scanForDefinitions): Translate
- 'namespace:NAME' to '$Namespace$NAME'.
- 2005-04-04 Per Bothner <per@bothner.com>
- * Makefile.am (javadoc-cvs.log): New rule for updating javadoc.
- 2005-04-03 Per Bothner <per@bothner.com>
- * Makefile.am (JAVADOC_PACKAGES): Add a number of new packages.
- (JAVADOC_FLAGS): Update - we use more memory, at least on jdk 1.4.
- (install-javadoc-html): Add extra jars to CLASSPATH, for newpackages -
- Eclipse, ant, and servlets.
- * kawa/MessageArea.java: Fix javadoc problem.
- * kawa/package.html: New file, for javadoc.
- * kawa/lang/package.html: Likewise.
- * kawa/standard/package.html: Likewise.
- * kawa/lang/SyntaxForm.java: Fix javadoc errors.
- * kawa/lang/SyntaxTemplate.java: Likewise.
- 2005-04-02 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (featureMap): Add 'srfi-64,'testing.
- * kawa/lang/Eval.java (evalBody): Save/set/restore current Compilation.
- * kawa/lang/Eval.java (eval): New static field.
- * kawa/standard/Scheme.java (repl): New static field.
- (initScheme): Use defProcStFld for 'eval' and 'repl'.
- 2005-03-31 Dean Ferreyra <dferreyra@igc.org>
- Per Bothner <per@bothner.com>
- * kawa/standard/module_static.java: Recognize (module-static 'init-run).
- 2005-03-29 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (scanForm): Don't need set save/set/restore
- current Compilation, since it's now done in LispLangauge.parse.
- * kawa/standard/require.java (makeModule): Get current Language
- directly, rather than via current Compilation.
- (makeDeclInModule): Handle non-static FieldLocation alias; now
- works since getDeclaration creates context. Use vdecl, not fdecl.
- Only setDontDereference if referenced field is indirect.
- Set constant flag if appropriate.
- * kawa/standard/Scheme.java (builtin): Remove pointless synchronized.
- 2005-03-28 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java: Initalize various static fields,
- including 'instance', in a static block, so they can be final.
- (initScheme): Make private. Remove unused proc and syn variable.
- (nullEnvironment): Initialize in <clinit>, rather than initScheme.
- * kawa/GuiConsole.java (main): Update to use Scheme.getInstance().
- 2005-03-25 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (find): No longer do 'run'.
- (importDefinitions): SET EARLY_INIT on both instance and alias decls.
- No longer set DEFER_DECL_BASE.
- We now find/create the module instance at initialization time, but
- 'find' no longer does 'run', so emit coe to call 'run'.
- (makeDeclInModule): If value is FieldLocation, do getDeclaration.
- This re-fixes Savannah bug #11822.
- 2005-03-23 Per Bothner <per@bothner.com>
- * kawa/standard/sleep.java: Now no longer extends Procedure1.
- (apply1): Renamed to static function sleep.
- * kawa/standard/with_input_from_file.java: Remove; rewritten in Scheme.
- * kawa/standard/with_output_to_file.java: Likewise.
- * kawa/standard/Makefile.am (java_sources): Update accordingly.
- * kawa/standard/Scheme.java: Update appropriately.
- Fix some defProcStFld that should be defSntxStFld.
- 2005-03-22 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (writeFormat, displayFormat): Do setName.
- 2005-03-20 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (define_syntax): Remove - no longer used.
- * kawa/standard/define_autoload.java) <init>: Pass Syntax name in.
- (define_autoload, define_autoloads_from_file): New static fields.
- * kawa/standard/export.java (module_export): Likewise.
- * kawa/standard/module_compile_options.java
- (module_compile_options): Likewise.
- * kawa/standard/module_extends.java (module_extends): Likewise.
- * kawa/standard/module_implements.java (module_implements): Likewise.
- * kawa/standard/module_name.java (module_name): Likewise.
- * kawa/standard/module_static.java (module_static): Likewise.
- * kawa/standard/syntax_error.java (syntax_error); Likewise.
- * kawa/standard/with_compile_options.java (with_compile_options):
- Likewise.
- * kawa/standard/Scheme.java: Change define_syntax -> defSntxStFld.
- * kawa/standard/define_class.java: New constructor.
- (define_class, define_simple_class): New static "instance" fields.
- * kawa/standard/constant_fold.java (constant_fold): Likewise.
- * kawa/standard/fluid_let.java (fluid_let): Likewise.
- * kawa/standard/object.java (objetSyntax): Likewise.
- * kawa/standard/define_unit.java (define_unit, define_base_unit):
- Likewis.
- * kawa/standard/prim_method.java (virtual_method, static_method,
- interface_method, constructor, op1): Likewise.
- * kawa/standard/Scheme.java: Update to use defSntxStFld.
- * kawa/standard/begin.java (begin): New static "instance" field.
- * kawa/standard/define.java (defineRaw): Likewise.
- * kawa/standard/define_alias.java (define_alias): Likewise.
- * kawa/standard/define_member_alias.java (define_member_alias):
- Likewise.
- * kawa/standard/define_syntax.java (define_macro, define_syntax):
- Likewise.
- * kawa/standard/define_variable.java (define_variable): Likewise.
- * kawa/standard/let_syntax.java (let_syntax, letrec_syntax): Likewise.
- * kawa/standard/location.java (location): Likewise.
- * kawa/standard/require.java (require): Likewise.
- * kawa/standard/set_b.java (set): Likewise.
- * kawa/standard/syntax.java (syntax): Likewise.
- * kawa/standard/syntax_case.java (syntax_case):: Likewise.
- * kawa/standard/syntax_rules.java (syntax_rules): Likewise.
- * kawa/standard/Scheme.java: Use new static instances to replace some
- define/define_syntax calls by defSntxStFld.
- 2005-03-18 Per Bothner <per@bothner.com>
- * build.xml: Pass --module-static-run instead of --module-static.
- Compile kawa/lib/*.scm in proper order, adding prim_syntax.scm,
- and --warn-undefined-variable.
- * kawa/standard/Scheme.java (lambda): New static field.
- * kawa/standard/try_catch.java (rewrite): Rewritw catch-clause first
- to LambdaExp, rather than LetExp, before converting to CatchClause.
- Fixes Savannah bug #11540.
- 2005-03-17 Per Bothner <per@bothner.com>
- * ltmain.sh: New version of cvs libtool (2.1a).
- * Make-rules (scm-classes.stamp): Use --module-static-run
- instead of --module-static.
- * aclocal.m4, configure, */Makefile.in: Re-geneate.
- * kawa/repl.java (processArgs): Don't setDefaultLanguage until
- default Environment has been set.
- 2005-03-16 Per Bothner <per@bothner.com>
- * kawa/repl.java (previousLanguage): New static field.
- (getLanguageFromFilenameExtension, getLanguage, processArgs): Use
- previousLanguage to avoiding calling Language.getDefaultLanguage
- before that is working.
- * kawa/standard/Scheme.java (createReadTable): New method.
- * kawa/standard/Scheme.java <init>): Don't setDefaultLanguage here.
- 2005-03-16 Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): Handle new --module-static-run flag.
- * kawa/standard/require.java (importDefinitions): Skip fields whose
- name ends in "$instance" - except to optimize 'dofind'.
- 2005-03-11 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (importDefinitions): Don't set alias's
- type to typeFieldLocation, since getType should be post-indirection.
- (makeDeclInModule): Likewise, if field is a Location, decl type
- is Object. not a Location.
- 2005-03-07 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java: Update package of DefineNamespace.
- * kawa/standard/read_line.java (apply2): Update WrongType call.
- 2005-03-06 Per Bothner <per@bothner.com>
- * ltmain.sh: New from CVS (patched) libtool 2.1a.
- * acinclude.m4, libtool.m4: Removed.
- * Makefile.am (EXTRA_DIST): Remove libtool.m4.
- * Makefile.in, configure, aclocal.m4: Re-generated.
- * configure.in: Updat AC_PROG_LIBTOOL to LT_INIT.
- * missing: New version from automake-1.9.
- * */Makefile.in: Re-generated.
- 2005-03-04 Per Bothner <per@bothner.com>
- * kawa/repl.java: Update Interpreter->Language various places.
- * kawa/Shell.java: Likewise.
- * kawa/GuiConsole.java: Likewise.
- * kawa/TelnetRepl.java: Likewise.
- * kawa/lang/Lambda.java: Likewise.
- * kawa/lang/AutoloadProcedure.java: Likewise.
- * kawa/lang/CompileFile.java: Likewise.
- * kawa/standard/Scheme.java: Likewise.
- * kawa/standard/define_autoload.java: Likewise.
- * kawa/standard/define_syntax.java: Likewise.
- * kawa/standard/load.java: Likewise.
- * kawa/standard/not.java: Likewise.
- * kawa/standard/require.java: Likewise.
- * kawa/standard/syntax.java: Likewise.
- * kawa/standard/require.java (importDefinitions): Change to use
- FieldLocation. Better handling of non-static modules and re-export.
- Don't set 'base' of fdecl (since it might be shared); instead create
- a ReferenceExp alias with a 'context'.
- (makeDeclInModule): Various tweaks.
- * kawa/lang/Translator.java (rewrite): Use FieldLocation.
- 2005-03-03 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (kawaEnvironment): More precise type.
- * kawa/standard/ScmEnv.java (<init>): Parameter is SimpleEnvironment,
- to match superclass parameter.
- * kawa/standard/Scheme.java: Remove definition of 'emacs' fnction - it
- doesn't work for Scheme, and causes order-dependency awkwardness when
- compiling CommonLisp/ELisp.
- * Makefile.am (SUBDIR): Some re-ordering to reduce dependencies.
- Specifically, jemacs and commonlisp import scheme functions, including
- ones in gnu.kawa.slib, so we sant to compile them later.
- * kawa/standard/Scheme.java: Function 'children' has been moved.
- 2005-02-24 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java registerEnvironment):
- Use new setDefaults method.
- * kawa/repl.java (getInterpreterFromFilenameExtension): Change return
- type and name to getLanguageFromFilenameExtension.
- (getInterpreter): Also change return type and rename to getLanguage.
- 2005-02-23 Per Bothner <per@bothner.com>
- * kawa/lang/Quote.java: Add an option to not namespace-expand.
- (quote): Add overload. Change to not namespace-expand.
- * kawa/lang/Macro.java (expand): If ! hygienic, use Quote.quote to
- in-depth remove SyntaxForm, rather than only doing it shallowly.
- * kawa/lang/Translator.java (namespaceResolve): Only coerce String,
- FString, and Symbol with empty emptyspace to namespace uri.
- Specifically, don't coerce a <ClassType> at this point.
- 2005-02-20 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewrite(LambdaExp,Object,Translator): Rename
- to rewriteFormals, and add TemplateScope parameter.
- Make type of local templateScope more precise.
- (rewrite(LambdaExp,Object,Object,Translator,TemplateScope)): New.
- * kawa/standard/define.java (scanForm): Update rewrite->rewriteFormals.
- * kawa/lang/SyntaxForm.java (scope): Make type of field more precise.
- (<init>): Make private.
- (makeWithTemplate): Return argument if we don't have a SyntaxForm.
- * kawa/lang/SyntaxTemplate.java (execute, executeToList): Make
- templateScope parameter more precise.
- * kawa/standard/let.java (rewrite): Likewise for templateScope local.
- * kawa/standard/object.java (scanClassDef): Simplify - we don't need
- to remember template scopes here.
- (rewriteClassDef): See added comment.
- * kawa/standard/location.java (makeProcLocation$V): Can now simplify
- if proc is a LocationProc.
- * kawa/standard/require.java (importDefinitions): Remove duplicate
- setAlias and setIndirectBinding calls.
- 2005-02-17 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (makeAlias, makeRenamedAlias): Merge former
- into latter. Set setDontDereference flag.
- (define): Use modified makeRenamedAlias.
- 2005-02-16 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (rewriteClassDef): If an input sub-form
- is a SyntaxForm remember that, and use it to setCurrentScope.
- Fixes Savannah PR 11822.
- (rewriteClassDef): Also use SyntaxForm to rewrite init forms.
- (scanClassDef): Fix some bugs in handling of init forms.
- * kawa/standard/define_class.java (scanForDefinitions): Handle the
- case that the input form is wrapped in a SyntaxForm.
- 2005-02-15 Per Bothner <per@bothner.com>
- Use ModuleInfo to make sure 'run' is only done once, even if immediate.
- * kawa/standard/requier.java (find(String)): Use ModuleInfo.find.
- (find(ClassType, Environment), find(Class, Environment)): Remove.
- (importDefinitions): If instance is needed, manage it with ModuleInfo.
- If run is needed in immediate mode, use ModuleInfo's getRunInstance
- so run gets run only once, and at run-time, not compile-time.
- 2005-02-12 Per Bothner <per@bothner.com>
- * kawa/lang/Macro.java (expand): Add extra test since Expression
- now extends Procedure.
- * kawa/standard/define.java (scanForm): Use setSymbol since
- setName(Object) was removed from LambdaExp.
- * kawa/standard/object.java (scanClassDef): Likewise.
- * kawa/standard/Scheme.java: Declare 'make-parameter' and
- 'parameterize' from SRFI-39.
- * kawa/standard/location.java (class LocationProc): Moved class to
- new file gnu/mapping/LocationProc.java.
- * kawa/standard/define.java: Use different SetExp constructor,
- to avoid setting the 'binding' field, which will become private.
- * kawa/standard/define_class.java: Likewise.
- * kawa/standard/define_unit.java: Likewise.
- * kawa/standard/object.java: Likewise.
- * kawa/standard/define_variable.java: Use SetExp's setBinding method.
- * kawa/standard/set_b.java: Likewise.
- 2005-02-07 Per Bothner <per@bothner.com>
- * build.xml: Also compile srfi37.scm. Compile DefineRecordType.scm
- before srfi37.scm, which makes use of define-record-type.
- * kawa/lang/Translator.java (namespaceResolve): If Uri is bound to
- a constant ClassType create a ClassMethodProc.
- Fixes the second test-case for Savannah bug #11822.
- * kawa/standard/Scheme.java: Change class-methods to use defProcStFld.
- * kawa/standard/require.java (makeDeclInModule): Set value to
- reference to appropriate Declaration if StaticFieldLocation.
- Fixes Savannah bug #11822 - but only for macros in static modules.
- * kawa/standard/require.java (find(String)): Move 'run' call to ...
- (find(Class, Environment)): ... here to also do run at compile-time.
- 2005-01-31 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (namespaceResolve): Treat unbound
- identifier <name> as equivalent to "class:name".
- 2005-01-30 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java (compile_to_files): Don't generate
- error message - that's handled in Compilation.compile.
- * Shell.java (run): Print messages in all catch clauses.
- 2005-01-29 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (featureMap): Add srfi-37 and args-fold.
- * kawa/standard/ScmEnv.java (lookupExtend): Inline call to
- ClassMethods.apply, but don't throw an Exception.
- * kawa/lang/Quote.java: Rename LispInterpreter -> LispLanguage.
- * kawa/lang/Translator.java: Likewise.
- * kawa/standard/Scheme.java: Likewise. Extend LispLanguage.
- 2005-01-28 Per Bothner <per@bothner.com>
- * Makefile.am (patch-source-list): Sort the result, for stability.
- 2005-01-26 Per Bothner <per@bothner.com>
- * kawa/standard/with_compile_options.java (scanForm): Put back a
- statement that should not have been deleted in 01-22 change.
- 2005-01-25 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java: Update Interpreter -> Language.
- * kawa/lang/Eval.java: Likewise.
- 2005-01-22 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (scanBody): New parameter makeList, to
- specify whether we return a list or push result on formStack.
- (rewrite_body): Fix scanBody call.
- (makeBody): Revert 01-12 change because it breaks top-level.
- * kawa/standard/begin.java (scanForm): Use tr.scanForm option to
- create a list, and return a scanned for for later rewrite.
- Alternative fix to problem fixed by 01-12 change.
- * kawa/lang/Eval.java (evalBody): Update scanForm call.
- * kawa/standard/with_compile_options.java (scanForm): Update calls to
- tr.scanForm. Let Translator create list rather than doing it here.
- * kawa/standard/Scheme.java (scheme_counter): Remove static field.
- (getNewEnvironment): Use inherited env_counter instead.
- * configure.in: Make AC_PROG_LIBTOOL unconditional, since needed
- for bin/cgi-servlet.
- 2005-01-18 C. Brian Jones <cbj@gnu.org>
- * configure.in: Added BYTECODE_VERSION.
- [Per: changed to be the same as VERSION]
- * Makefile.am: Added targets for bytecode.jar, install-bytecode-jar.
- * gnu/bytecode/jar-manifest: New file.
- 2005-01-16 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (makeDeclInModule): Clear the value
- of the imported decl if it isn't constant.
- 2005-01-12 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (namespaceResolve(String)): Don't look
- for class matching prefix here.
- (namespaceResolve(String,boolean)): If JAVA2, look for class matching
- prefix without initializing the class.
- * kawa/lang/Translator.java (makeBody): Don't make AppendValues call
- here since it causes Scheme begin at top-level to mis-behave.
- 2005-01-10 Per Bothner <per@bothner.com>
- * config.guess: Update to newer version, from libtool 1.5.10.
- * config.sub: Likewise.
- * ltmain.sh: Update to libtool 1.5.10.
- * configure.in: More little fixes and updates.
- * configure.in: Ran autoupdate over file to update to current autoconf
- syntax, followed by some manual fixups of AC_CONFIG_LINK.
- * Makefile.am (select-java1, select-java2, select-java5): Fix sed
- pattern to work with BSD sed (as on OS X) as well as GNU sed.
- 2005-01-08 Per Bothner <per@bothner.com>
- * build.xml (build-tools): Also compile gnu/kawa/util/PreProcess.java.
- (select-java1, select-java2, select-java5): Rewrite to use PreProcess.
- * kawa/lang/Macro.java (setExpander): Remove unused field.
- * kawa/standard/define_syntax.java (setExpanderMethod): Likewise.
- * kawa/standard/define_syntax.java (makeHygienic, makeNonHygienic):
- New Procedure fields replace makeMethod, makeNonHygienicMethod.
- (scanForm): New new fields.
- * kawa/standard/define_syntax.java (scanForm): Use new ThisExp
- factory method makeGivingContext so we can eval this ApplyExp
- in the current Compilation. This fixes Savannah bug #11508.
- * kawa/standard/require.java (importDefinitions): If immediate
- note the instance value as a constant. Don't compile a dofind call.
- 2005-01-07 Per Bothner <per@bothner.com>
- * Makefile.am (patch-source-list): Filter with sed out initial "./".
- (select-java1, select-java2, select-java5): Use new PreProcess class.
- * build.xml: Add support for #ifndef JAVA5.
- * kawa/lang/Macro.java: Remove unneeded imports.
- * kawa/lang/CompileFile.java: Likewise.
- * kawa/lang/SyntaxTemplate.java: Likewise.
- * kawa/lang/Translator.java: Likewise.
- * kawa/standard/syntax_case.java: Likewise.
- * kawa/lang/Lambda.java: Reference static method using class name,
- to avoid ecj warning.
- * kawa/lang/Quote.java: Likewise.
- 2005-01-03 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxPattern.java (translate): Pass correct SyntaxForm.
- (literalIdentifierEq): Finish implementation.
- * kawa/lang/SyntaxRules.java (expand): Recover robustly if there
- was an error defining the macro.
- * kawa/lang/Translator.java (makeAlias, makeRenamedAlias): Some
- code moving to reduce duplication..
- 2005-01-02 Per Bothner <per@bothner.com>
- * Makefile.am (JAVATOP): Remove unused macro.
- * Makefile.am: Update "select" rules to use new "preprocessor" syntax.
- * build.xml: Likewise.
- * kawa/lang/Quote.java, kawa/lang/SyntaxTemplate.java,
- kawa/standard/syntax.java: Change "select" (preprocessor) syntax.
- 2004-12-29 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (importDefinitions): Avoid some
- needless work in immediate mode.
- 2004-12-27 Per Bothner <per@bothner.com>
- * kawa/standard/define_syntax.java (scanForm): Use new isStatic().
- * Makefile.am (SUBDIRS): "Inline" SUBDIRS from gnu and gnu/kawa.
- (install-html): Don't do into now Makefile-free gnu directory.
- * configure.in (AC_OUTPUT): Update accordingly.
- 2004-12-26 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxPattern.java (literalIdentifierEq,
- getLiteralsList): New static methods.
- (translate): Use literalIdentifierEq.
- * kawa/standard/syntax_rules.java: (rewriteForm): Use new
- SyntaxPattern.getLiteralsList method.
- * kawa/standard/syntax_case.java: (rewriteForm): Likewise.
- * kawa/lang/SyntaxRule.java (<init>): Take extra SyntaxForm parameter.
- * kawa/lang/SyntaxTemplate.java: Likewise.
- (convert_template): Pass extra SyntaxForm parameter.
- * kawa/standard/syntax.java: Fix to pass null SyntaxForm.
- * kawa/standard/define_syntax.java (scanForDefinitions): Replace by ...
- (scanForm): New method. Fix lacking handling of SyntaxForm.
- * kawa/lang/SyntaxRules.java (<init>): Likewise.
- 2004-12-24 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java: New syntax "include-relative".
- The "include" syntax was moved.
- * kawa/lang/SyntaxForm.java (makeWithTemplate): New static function.
- * kawa/lang/SyntaxPattern.java (allocVars): New helper method.
- * kawa/lang/Translator.java (matchArray): New field, moved
- here from syntax_case.work.
- * kawa/standard/syntax_case.java: Fix bugs when nested syntax-cases.
- * kawa/standard/Scheme.java; Define "include", "syntax-object->datum",
- "datum->syntax-object", "with-syntax".
- 2004-12-23 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (setLineOf): Do nothing if QuoteExp.
- 2004-12-22 Per Bothner <per@bothner.com>
- * Makefile.am: Partially convert pre-processor syntax, for JAXP
- version selection: use #ifdef, #ifndef, #else. Updates rules.
- * build.xml: Update select-java1, select-java2, select-java5.
- * kawa/lang/SyntaxTemplate.java: Fix comment syntax so it doesn't
- break under 'make select-java1' -> 'make select-java2'.
- * kawa/lang/Translator.java (syntaxError): Moved to Compilation.
- * kawa/standard/Scheme.java: Update classes for 'make-element' and
- 'make-attribute'.
- 2004-12-20 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): "Filter" through Quote.quote.
- * kawa/lang/Quote.java: Merge with quasiquote.java to handle both
- quasiquote and regular quote. Check for cycles.
- * kawa/standard.Scheme (initScheme): Update 'quote' and 'quasiquote'.
- * kawa/lang/Translator.java (selfEvauatingSymbol): New method.
- (matches, getBinding, rewrite_pair, rewrite): Use new method.
- * kawa/standard/quasiquote.java: Remove no-longer-used class.
- * kawa/standard/Makefile.am: Update accordingly.
- 2004-12-19 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxTemplate.java: New handling of ellipsis,
- needed to correctly process forms like (template ... ...).
- (BUILD_REPEAT): Remove constant.
- (BUILD_DOTS): New constant.
- (print_template_program, convert_template): Update accordingly.
- (execute_car): Gnerealize to executeToList. Handle BUILD_DOTS.
- * kawa/lang/SyntaxTemplate.java (convert_template): Extra isVector
- paremater, since argument to BUILD_VECTOR must be true list.
- * kawa/lang/SyntaxTemplate.java (convert_template): Check for cycles.
-
- * kawa/lang/SyntaxPattern.java (match): Add optional debug output.
- * kawa/standard/Scheme.java (initScheme): Define 'case-lambda'.
- 2004-12-18 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxRules.java (<init>): Allow an empty list in
- syntax-rules, since R%RS does.
- * kawa/lang/SyntaxTemplate.java (BUILD_VECTOR): Simplify implemenation.
- (BUILD_VEC_REPEAT): Remove non-longer-used constant.
- (print_template_program): Update accordingly.
- (convert_template, execute): Vector handling is now trivial.
- 2004-12-08 Per Bothner <per@bothner.com>
- * kawa/repl.java: Update for new Environment handling.
- * kawa/lang/AutoloadProcedure.java (load): No longer handle autoload
- of ModuleBody.
- * kawa/lang/AutoloadSyntax.java: Likewise.
- * kawa/standard/load.java: Small updates.
- * kawa/standard/location.java: Update for changed ProcLocation.
- * kawa/standard/require.java: Rewrite for new Environment handling.
- * kawa/standard/fluid_let.java: Don't set type, since it's no
- longer a typeFluidBinding, but an indirect binding.
- Clear noted value, since it may be changed unpredictably.
- * kawa/standard/Scheme.java (defSntxStFld): Removed - now redundant.
- (initScheme): Update. Use defSntStFld many places.
- * kawa/standard/ScmEnv.java: No longer search "extra" Environments.
- (extra, numExtras): Removed fields.
- (addExtra, get): Removed method.
- (lookupExtend): New method.
- (ScmEnvConstraint): Remove local class.
- * kawa/standard/TracedProcedure.java: Use new Location handling.
- * kawa/standard/define.java (scanForm): Use new Translator.define.
- * kawa/standard/define_alias.java: Set line number.
- * kawa/standard/define_autoload.java: Remove the unused ability to
- specify an autoload type.
- * kawa/lang/Macro.java: Handle hygiene even without (require).
- (getCapturedScope, setCapturedScope, makeNonHygienic): New methods.
- * kawa/lang/SyntaxForm.java: New implements Externalizable.
- * kawa/lang/TemplateScope.java: New class.
- * kawa/lang/Makefile.am: Update accordingly.
- * kawa/lang/SyntaxTemplate.java (execute): Create TemplateScope.
- * kawa/lang/Translator.java: Numerous updates.
- * kawa/standard/define_class.java: Handle hygiene.
- * kawa/standard/define_syntax.java: Support new macro handling.
- * kawa/standard/define_variable.java: Set decl's IS_DYNAMNIC flag.
- * kawa/standard/object.java: Use rewrite_car to set line numbers.
- * kawa/standard/define_syntax.java: Don't special-case for rule
- being a QuoteExp. Pass 'instance' value when create Macro.
- 2004-12-07 Per Bothner <per@bothner.com>
- * Makefile.am (EXTRA_DIST): Don't include old makekawa.bat.
- * acinclude.m4: Remove unused LIBGCJ_CONFIGURE rule.
- * configure.in: Set version to 1.7.91.
- * build.xml (version.release): Set to 1.7.91.
- 2004-12-02 Per Bothner <per@bothner.com>
- * kawa/standard/force.java: Converted to Scheme and removed.
- * kawa/standard/make_future.java: Likewise.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java: Update accordingly.
- Also use defProcStFld for 'as' and 'throw'.
- 2004-11-16 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (defSntxStFld): New method.
- (initScheme): Replace many uses of define_syntax by defSntxStFld.
- * kawa/standard/throw_name.java (throwName): New static field.
- * kawa/standard/call_with_values.java (callWithvalues): Likewise.
- * kawa/standard/Scheme.java (initScheme): Replace most define_field
- calls by defprocStFld, and the rest by define_syntax, Also replace
- many define_proc by defProcStFld.
- 2004-11-15 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxTemplate.java: Change "opcode" of template_program
- from 2 bits to 3 bits. Rearrange them some.
- (BUILD_VAR_CAR): New opcode.
- (pattern_nesting): Rename to patternNesting. Low-order bit encodes
- if match is car of saved Pair.
- (get_var, execute_car): New helper methods.
- * kawa/lang/PatternScope.java (pattern_nesting): Renamed likewise.
- * kawa/lang/SyntaxPattern.java (MATCH_ANY_CAR): New opcode.
- (translate): Take a "context" parameter so we can tell when to
- emit MATCH_ANY_CAR.
- (match_car): New function.
- (disassemble, match): Handle MATCH_ANY_CAR.
- * kawa/lang/SyntaxRules.java: Updated for renamed pattern_nesting.
- * kawa/lang/Lambda.java (rewrite): Use Translator.setLine method.
- * kawa/lang/Macro.java (expand): If result is not PairWithPosition,
- copy position from input form.
- * kawa/lang/Translator.java (setLine): New static convenience method.
- * kawa/standard/define.java (scanForm): Use it.
- * kawa/standard/syntax_case.java: Remove unused local.
- 2004-11-14 Per Bothner <per@bothner.com>
-
- * kawa/standard/char_ready_p.java: No longer extend Procedure0or1.
- (apply0, apply1): Remove methods.
- * kawa/standard/Scheme.java (r4Environment, r5Environment): Make
- public, so they can be accessed from kawa.lib.misc.
- * kawa/standard/scheme_env.java: Remove.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java: The functions dynamic-wind, char-ready?,
- scheme-report-environment and moved to different classes.
- * kawa/standard/Scheme.java: Incompletely convert to use defProcStFld.
- 2004-11-11 Jim White <jim@pagesmiths.com>
- * build.xml: Update select-java1, select-java2, and add select-java5.
- Search for BEGIN JAVA|BEGIN JAXP instead of maintaining an
- explicit lists of files to modify.
- 2004-11-10 Per Bothner <per@bothner.com>
- * Makefile.am (selected-java-source): Depend on Makefile.
- * kawa/standard/and_or.java: Removed.
- * kawa/standard/Makefile.am (java_sources): Remove and_or.java.
- * kawa/standard/Scheme.java: Use definition of 'or' with macro
- define in kawa.lib.std_syntax.
- 2004-11-08 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxPattern.java (translate): Change MATCH_LENGTH
- encoding for non-pure lists.
- (match): Fix MATCH_LENGTH and MATCH_LREPEAT handling.
- * kawa/lang/SyntaxTemplate.java (BUILD_VECTOR): Since no repetition
- uses a var_no of 0, add one to var_no for a repeated variable.
- * kawa/lang/Translator.java (listLength): Minor optimization.
- 2004-11-06 Per Bothner <per@bothner.com>
- * kawa/lang/Syntax.java (rewriteForm, scanForm): New methods.
- * kawa/lang/SyntaxForm.java (form, scope): Make fields public.
- (tr): Remove field.
- (make, toString, fromDatum, fromDatumIfNeeded, rewrite, rewriteBody,
- isIdentifier, freeIdentifierEquals): New methods.
- * kawa/lang/SyntaxPattern.java: New class extends Pattern. It encodes
- a pattern from syntax-case/syntax-rules in a "program".
- * kawa/lang/SyntaxTemplate.java: New class.
- * kawa/lang/SyntaxRule.java: Now a skeleton that inherits from
- SyntaxTemplate.
- * kawa/lang/SyntaxRules.java: Major re-write.
- * kawa/lang/PatternScope.java: New class.
- * kawa/lang/Makefile.am: Add new classes.
- * kawa/lang/PairPat.java (match): Remove no-lobger-useful SyntaxForm
- support.
- * kawa/lang/Quote.java (rewrite): Strip off SyntaxForm.
- * kawa/lang/Translator.java: Major rewrite to handle SyntaxForm.
- Some methods renamed. Scan methods now use the new formStack,
- rather than a freshly-allocated Vector. Some new helper routines.
- * kawa/lang/Macro.java: Don't keep track of captured identifiers
- individually, but instead use a single 'capturedScope'.
- (hygienic): New field to handline hygienic and non- differently.
- * kawa/lang/Eval.java (evalBody): Update for new scan protocol.
- * kawa/lang/AutoloadSyntax.java: Update to define scanForm.
- * kawa/lang/Lambda.java: Handle incoming SyntaxForms.
- * kawa/standard/require.java: Create a new ModuleExp for imported
- fields. Set Macro's capturedScope to it, rather than each Declaration.
- * kawa/standard/set_b.java: Simplify by just calling rwrite on LHS.
- * kawa/standard/syntax.java: New class.
- * kawa/standard/syntax_case.java: Rewrite.
- * kawa/standard/syntax_error.java (error): New static method.
- * kawa/standard/let.java: Re-write.
- * kawa/standard/let_syntax.java: Likewise.
- * kawa/standard/IfFeature.java: No longer extends Syntax.
- Just contains static help methods.
- * kawa/standard/begin.java (scanForDefinitions): Replace by scanForm.
- * kawa/standard/define.java: Re-shuffle. Simplify parsing by
- using define-syntax. OTOH, have to deal with SyntaxForm.
- * kawa/standard/define_class.java: Handle SyntaxForm - incompletely.
- * kawa/standard/define_syntax.java: Also use for %define-macro.
- * kawa/standard/ifp.java: Removed - now implemented in prim_syntax.scm.
- * kawa/standard/object.java: Handle SyntaxForm - incompletely.
- * kawa/standard/try_catch.java: No longer implement Syntax.
- * kawa/standard/synchronizd.java: Removed - now in prim_syntax.scm.
- * kawa/standard/try_finally.java: Likewise.
- * kawa/standard/with_compile_options.java: Handle SyntaxForms.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java: Various updates.
- 2004-11-06 Per Bothner <per@bothner.com>
- * Make-rules: New automake doesn't seem to set DIST_SOURCES from
- SOURCES, so undefine SOURCES and define DISTFILES explicitly.
- * configure.in: New --with-java-source flag, sets @JAVA_SOURCE@.
- * Makefile.am (java1-java2-files): Rename to patch-source-list and
- generailize to also look for JAVA5 and JAXP conditionals.
- (selected-java-source, select-java5, dist-hook): New rules.
-
- * Makefile.am (makekawa.bat): Remove bit-rotted rule.
- 2004-10-27 Per Bothner <per@bothner.com>
- * Shell.java (counter): Remove static field.
- (run): Use ModuleExp.interactiveCounter instead of counter field.
- 2004-10-23 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Use new QuoteExp.getInstance.
- (rewrite_body): Initialize variables using #!undefined, not #!null.
- * kawa/standard/Scheme.java (initScheme): letrec in now in kawa/lib.
- * kawa/standard/letrec.java: Removed, no longer needed.
- * kawa/standard/Makefile.am (java_sources): Remove letrec.java.
- * Make-rules: Remove bogus 'clean' rule.
- 2004-09-05 Per Bothner <per@bothner.com>
- * kawa/standard/ifp.java (allowElseList): New flag.
- (<init>): New constructor.
- (rewrite): Rewrite.
- * kawa/lang/ListPat.java (match): Check that list isn't too long.
- Based on a patch (8/19) from Dominique Boucher
- <dominique.boucher@nuecho.com>.
- 2004-08-24 Per Bothner <per@bothner.com>
- * kawa/standard/readchar.java (readChar, peekChar): New static fields.
- * kawa/standard/Scheme.java (initScheme): Use new static fields.
- * kawa/standard/Scheme.java (initScheme): Functions open-input-file,
- pen-output-file, and call-with-output-string now in kawa.lib.ports.
- * kawa/standard/open_input_file.java: Remove - no longer needed.
- * kawa/standard/open_output_file.java: Likewise.
- * kawa/standard/call_with_output_string.java: Likewise.
- * kawa/standard/Makefile.am: Update accordingly.
- 2004-08-23 Per Bothner <per@bothner.com>
- * configure.in (--with-swt): New option.
- (WITH_SWT): New conditional.
- (AC_OUTPUT): Add gnu/jemacs/swt/Makefile.
- 2004-08-04 Christian Surlykke <christian@surlykke.dk>
- * build.xml: Added jemacs-swt-classes task.
- 2004-08-10 Per Bothner <per@bothner.com>
- * configure.in: Change conf_classpath so the pathsep comes after
- the added entry.
- * Make-rules (CLASSPATH_ENV): Change accordingly.
- (scm-classes.stamp, clisp-classes.stamp, elisp-classes.stamp):
- Use CLASSPATH_ENV, so --with-servlet jar gets searched.
- * Makefile.am (dis-kawa-@VERSION@.jar): Update to use --with-servlet.
- 2004-08-09 Per Bothner <per@bothner.com>
- * Make-rules (DIST_SOURCES): Remove unused macro.
- * configure.in: Replace --enable-servlet by --with-servlet[=jar].
- Default enable_servlet from with_servlet.
- (conf_classpath): New variable, set from --with-servlet.
- Use AC_HELP_STRING.
- * Make-rules (CLASSPATH_ENV): Use autoconf variable @conf_classpath@.
- 2004-08-08 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Don't set decl if no uri.
- 2004-08-08 Per Bothner <per@bothner.com>
- * kawa/lang/CalledContinuation.java (values): A continuation
- can take multiple values.
- * kawa/lang/Continuation.java: Extend MethodProc, not ProcedureN.
- (<init>): Change to take a CallContext.
- (apply1, applyN): Remove methods.
- (apply): New method.
- * kawa/standard/call_with_values.java (apply): Use checkN.
- * kawa/standard/callcc.java: Extend MethodProc, not Procedure1.
- (apply(Procedure), apply1): Remove methods.
- (numArgs, match1, apply): New methods.
- * kawa/standard/load.java (loadCompiled): Always assume ModuleBody.
- 2004-08-08 Per Bothner <per@bothner.com>
- * kawa/lang/AutoloadProcedure.java (load):
- ModuleBody is not always Runnable.
- * kawa/lang/Translator.java (pushPositionOf): Trivial optimization.
- 2004-08-07 Per Bothner <per@bothner.com>
- * kawa/standard/cxr.java: Use new WrongType constructors.
- * kawa/standard/make.java: Likewise.
- * kawa/standard/read.java: Likewise.
- * kawa/standard/readchar.java: Likewise.
- * kawa/standard/vector_append.java: Likewise.
- * kawa/standard/append.java: Likewise.
- (append): New static field.
- * kawa/standard/Scheme.java: Redefined 'append' to use new field.
- 2004-08-06 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java: New longer implements Procedure2.
- (apply2): Convert to Scheme and move to kawa.lib.system.
- (read): Use WrappedException instead of GenericFile.
- * kawa/standard/Scheme.java: Change location of compile-file.
- 2004-08-03 Per Bothner <per@bothner.com>
- * kawa/Shell.java (counter): New field.
- (run): Increment and append counter to generated class name.
- 2004-07-31 Per Bothner <per@bothner.com>
- * kawa/repl.java: Update copyright year printed by --version.
- 2004-07-27 Chris Dean <ctdean@sokitomi.com>
- * kawa/repl.java: Print out compilation options
- 2004-07-20 Per Bothner <per@bothner.com>
- * kawa/GuiConsole.java: Remove unused import statements.
- * kawa/GuiInPort.java: Likewise.
- * kawa/MessageArea.java: Likewise.
- * kawa/Shell.java: Likewise.
- * kawa/lang/AnyPat.java: Likewise.
- * kawa/lang/CompileFile.java: Likewise.
- * kawa/lang/EqualPat.java: Likewise.
- * kawa/lang/Lambda.java: Likewise.
- * kawa/lang/ListRepeatPat.java: Likewise.
- * kawa/lang/PairPat.java: Likewise.
- * kawa/lang/SyntaxRule.java: Likewise.
- * kawa/lang/Translator.java: Likewise.
- * kawa/lang/loadcompiled.java: Likewise.
- * kawa/standard/Scheme.java: Likewise.
- * kawa/standard/atan.java: Likewise.
- * kawa/standard/call_with_values.java: Likewise.
- * kawa/standard/define_autoload.java: Likewise.
- * kawa/standard/define_member_alias.java: Likewise.
- * kawa/standard/letrec.java: Likewise.
- * kawa/standard/logior.java: Likewise.
- * kawa/standard/make_future.java: Likewise.
- * kawa/standard/max.java: Likewise.
- * kawa/standard/min.java: Likewise.
- * kawa/standard/module_extends.java: Likewise.
- * kawa/standard/module_implements.java: Likewise.
- * kawa/standard/module_name.java: Likewise.
- * kawa/standard/object.java: Likewise.
- * kawa/standard/open_output_file.java: Likewise.
- * kawa/standard/prim_method.java: Likewise.
- * kawa/standard/quantity2number.java: Likewise.
- * kawa/standard/quantity2unit.java: Likewise.
- * kawa/standard/scheme_env.java: Likewise.
- * kawa/standard/syntax_error.java: Likewise.
- * kawa/standard/throw_name.java: Likewise.
- * kawa/standard/try_finally.java: Likewise.
- * kawa/standard/vector_append.java: Likewise.
- * kawa/standard/with_input_from_file.java: Likewise.
- * kawa/standard/with_output_to_file.java: Likewise.
- * kawa/standard/define.java: Use static syntax to access
- static fields/methods.
- * kawa/standard/define_class.java: Likewise.
- * kawa/standard/define_member_alias.java: Likewise.
- * kawa/standard/define_syntax.java: Likewise.
- * kawa/standard/define_unit.java: Likewise.
- * kawa/standard/define_variable.java: Likewise.
- * kawa/standard/object.java: Likewise.
- 2004-07-19 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme (initScheme): The functions rationalize,
- sqrt, exact->inexact and inexact->exact are now in kawa.lib.numbers.
- * kawa/standard/exact2inexact.java: Removed class.
- * kawa/standard/inexact2exact.java: Likewise.
- * kawa/standard/rationalize.java: Likewise.
- * kawa/standard/sqrt.java: Likewise.
- * Makefile.am: Update accordingly.
- 2004-06-21 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (throwsKeyword): New constant.
- * kawa/lang/Lambda.java (rewrite): Do pushPositionOf and
- popPositionOf around each parameter for better error messages.
- (rewriteAttrs): Handle throws specification.
- 2004-05-10 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (scanClassDef, rewriteClassDef): Improved
- line number setting.
- (scanClassDef): Error if duplicate init forms.
- * kawa/standard/object.java (scanClassDef): Remove clinits local.
- (rewriteClassDef): Remove clinits form returned array.
- (scanClassDef) Don't rewrite init-form: expression yet.
- (rewriteClassDef): Extra pre-pass to rewrite init-form: forms first.
- Fixes bug #8837.
- 2004-05-06 Per Bothner <per@bothner.com>
- * kawa/standard/cxr.java (count): Replace field by high-order
- 16 bits, so that setting mask+count is atomic.
- * kawa/standard/cxr.java (program): Fix race condition.
- Partly fixes bug #8817.
- 2004-04-22 Per Bothner <per@bothner.com>
- * build.xml (build.selectjava): Add gnu/lists/FString.java
- 2004-04-17 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Fix typo.
- Fixes bug #7666.
- * configure.in: Fix help text typo reported by Pete Chown.
- Fixes bug #7851.
- 2004-03-08 Per Bothner <per@bothner.com>
- * kawa/standard/define_syntax.java (rewriteForm): Do setProcedureDecl
- and setFuncDef, for the sake of 'defmacro' used in Common Lisp.
- * kawa/standard/define_class.java (rewrite): Move setSimple call ...
- (scanForDefinitions): ... to here.
-
- * kawa/standard/load.java (loadSource): Don't call beginDocument
- or endDocument.
- * build.xml (build.selectjava): Add gnu/mapping/Symbol.java
- and gnu/text/Char.java.
- 2004-03-03 Per Bothner <per@bothner.com>
- * kawa/lang/Macro.java (bind): Remove method.
- (make): Call Declaration's setSyntax instead of bind.
- (<init>(Object,Expression)): Remove constructor.
- * kawa/standard/define_syntax.java (scanForDefinitions): Defer
- allocation of new Macro until rewrite time.
- (rewrite): Simpler and cleaner logic. We don't note the value of
- Declaration as being a constant Macro when it isn't.
- * kawa/standard/let_syntax.java (rewrite): Add call to noteValue,
- since Macro constructor no longer does it.
- * kawa/standard/require.java (importDefinitions): Call noteValue and
- setSynax for Macro declaration in place of Macro's removed bind.
- 2004-02-21 Per Bothner <per@bothner.com>
- * build.xml (build.selectjava): Add gnu/math/RealNum.java.
- 2004-02-15 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewrite): Refactor so rewrite can be called
- at scan time, while rewriteBody can be called at rewrite time.
- (rewriteAttrs): New method handles access and allocation attributes.
- (rewrite(LambdaExp, Object, Translator), skipAttrs): New methods.
- * define.java (scanForDefinitions): Do first part of lambda.rewrite
- here (but not rewriteBody), to get parameter and result types.
- * kawa/standard/define_alias.java (rewrite): Move processing
- to scanForDefinitions.
- * kawa/standard/object.java (accessKeyword): New constant.
- (allocationKeyword): Make public.
- (scanClassDef): New method, for "scan-time" processing.
- Process access: specifier for fields.
- Call rewriteAttrs for methods.
- (rewriteClassDef): Method for "rewrite-time" processing.
- Call skipAttrs for methods,
- (rewriteForm): Update to call scanClassDef and then rewriteClassDef,
- * kawa/standard/define_class.java (scanForDefinitions):
- Call object's scanClassDef.
- (rewriteForm): Call objects's rewriteClassDef.
- 2004-02-15 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite_car): Make public.
- (rewrite_pair): Use LispInterpreter's makeApply (overridden by q2).
- (rewrite): Rewrrite value of LangExp.
- * kawa/standard/prim_method.java (exp2Type): Remove method.
- (rewrite): Use Translator's exp2Type.
- * kawa/standard/define.java (rewrite): Use Translator's exp2Type.
- * kawa/standard/let.java (rewrite): Likewise.
- * kawa/standard/letrec.java (rewrite): Likewise.
- * kawa/standard/module_extends.java (rewriteForm): Likewise.
- * kawa/standard/module_implements.java (rewriteForm): Likewise.
- * kawa/standard/try_catch.java (rewrite): Likewise.
- * kawa/lang/Translator.java (exp2Type): If unknown type return
- pointer_type rather than null.
- 2004-02-13 Per Bothner <per@bothner.com>
- * gnu/kawa/Makefile.am (SUBDIRS): Add q2.
- * configure.in: Add gnu/q2/Makefile gnu/q2/lang/Makefile.
- 2004-01-09 Per Bothner <bothner@bothner.com>
- * kawa/repl.java: Use new Environment setGlobal method.
- * kawa/standard/Scheme.java (registerEnvironment): Update setCurrent
- to setGlobal.
- 2003-12-24 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (importDefinitions): Fix thinko -
- we were comparing the wrong type against typeProcedure.
- 2003-12-20 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (initKeyword): New constant field.
- (instanceKeyword, classKeyword): Removed constant fields.
- (matches): New helper function.
- (rewriteClassDef): Evaluate init-form: expression in outer scope.
- Alloc init: EXPR where EXPR is evaluated in class scope.
- Handle init forms for static fields.
- Allow alternative forms 'OPTION and "OPTION" for option names.
- Allow unnamed dummy fields with init: for initialization-type actions.
- 2003-12-20 Per Bothner <per@bothner.com>
- * kawa/lang/SyntaxRule.java (translate_template): Some constants
- have moved from Interpreter to LispInterpreter. Update for that.
- * kawa/standard/Scheme.java (initScheme): Likewise.
- 2003-11-25 Per Bothner <per@bothner.com>
- * Makefile.in (install-javadoc-html): Only delete html files.
- (Specifically, we don't want to delete CVS directories.)
- 2003-11-21 Per Bothner <per@bothner.com>
- * kawa/standard/call_with_input_file.java: Removed.
- * kawa/standard/call_with_output_file.java: Removed.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java: For call-with-input-file and
- call-with-output-file use new implementations in kawa.lib.ports.
- 2003-11-20 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Better error robustness.
- 2003-11-14 Per Bothner <per@bothner.com>
- * kawa/standard/string_append.java: Removed class.
- * kawa/standard/Makefile.am: Update accordingly.
- 2003-11-09 Chris Dean <Chris.Dean@sokitomi.com>
- * kawa/standard/Scheme.java (LispInterpreter): Definition for
- string-append/shared; redefine string-append.
- 2003-11-08 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Use new Interpreter.parse convention.
- 2003-11-05 Per Bothner <per@bothner.com>
- * kawa/standard/define.java (rewriteForm): Complain if not in <body>.
- * kawa/standard/define_variable.java (scanForDefinitions, rewriteForm):
- Fix various problems.
- * kawa/standard/Scheme.java (<init>): Use define_syntax for
- 'define-variable'.
- 2003-11-02 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Replace call to old 'parse' method
- by call to 'parse' with different parameter list.
- * kawa/lang/CompileFile.java (read): Replace 'parseFile' call
- by call to new 'parse' method.
- * kawa/lang/Eval.java (evalBody): Inline LispInterpreter.makeModuleExp
- here, so we can get rid of it.
- 2003-10-30 Per Bothner <per@bothner.com>
- * configure.in: Add link to gnu/xquery/testsuite/auction.xml.in.
- 2003-10-28 Per Bothner <per@bothner.com>
- * Make-rules (DONT_EDIT_SUBS): Move to gnu/xml/Makefile.am.
- 2003-10-21 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.7.90.
- * build.xml (version.release): Set to 1.7.90.
- 2003-10-19 Per Bothner <per@bothner.com>
- * kawa/lang/Eval.java (evalBody): Need to pass Interpreter
- to new Translator.
- * kawa/lang/Translator.java (<init>): Take Interpreter.
- Remove unused constructors.
- (resolve): Moved to super class Compilation.
- * kawa/standard/module_compile_options.java: New class extends Syntax.
- * kawa/standard/with_compile_options.java: New class extends Syntax.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java: Define '"module-compile-options'
- and 'with-compile-options'.
- 2003-10-18 Jim White <jim@pagesmiths.com>
- * build.xml: Handle gnu/kawa/models and gnu/kawa/swingviews.
- 2003-10-16 Per Bothner <per@bothner.com>
- * kawa/lang/AutoloadSyntax.java (load): Give Syntax object a name.
- * kawa/repl.java (processArgs): Try arguments in Compiletion.options.
- 2003-10-12 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite_pair): Check if decl's
- constant value is a Syntax rather than using IS_SYNTAX flag.
- * kawa/standard/Scheme.java (Scheme): Update isEq initialization.
- 2003-10-09 Per Bothner <per@bothner.com>
- * kawa/standard/read.java (apply1): Use Procedure's getName
- method rather than the deprecated name.
- 2003-10-08 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Use define_field to
- define 'values-append', since it allows better optimization.
- * kawa/standard/require.java (scanForDefinitions): Split most into
- new method importDefinitions - used for XQuery modules.
- (importDefinitions): New static method. Take module namespace.
- Note if decl is a procedure decl.
- * kawa/standard/Scheme.java (<init>): Specify field for "ash".
- * kawa/lang/SetFieldProc.java: Use Values.empty directly instead of
- via Interpreter.voidObject.
- 2003-10-02 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java, kawa/standard/load.java,
- kawa/standard/sleep.java: Use Values.empty directly instead of
- Interpreter's voidObject field
- * kawa/repl.java, kawa/standard/string2number.java: Use Boolean
- FALSE/TRUE directly instead of via Scheme or Interpreter field.
- 2003-09-23 Per Bothner <per@bothner.com>
- * build.xml (build.selectjava): Add FVector.java and LList.java.
- 2003-09-14 Per Bothner <per@bothner.com>
- * configure.in (AC_LINK_FILES): Add gnu/xquery/testsuite/outline.xml.
- 2003-09-08 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Resolve hygiene using
- getOriginalRef *before* resolving namespace prefix.
- Fixes Savannah bug #5113.
- 2003-09-03 Per Bothner <per@bothner.com>
- * kawa/repl.java (processArgs): Set Compilation.defaultCallConvention.
- 2003-08-20 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Change definitions
- of positive? and modulo.
- * kawa/standard/modulo.java: Remove - implemented in kawa.lib.numbers.
- * kawa/standard/positive_p.java: Likewise.
- * kawa/standard/Makefile.am (java_sources): Update accordingly.
- * kawa/standard/string2number.java (parse): Pass new exactness
- parameter.
- 2003-08-06 Per Bothner <per@bothner.com>
- * kawa/standard/TracedProcedure.java (indentation): Initialize using
- Symbol.unInterned, matching 2003-03-15 gnu/mapping/Symbol.java change.
- 2003-08-03 Per Bothner <per@bothner.com>
- * configure.in: Add AC_LINK_FILES for report1.xml.in.
- 2003-08-01 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewriteBody): Use new setCoercedReturnValue
- helper method in Convert.
- 2003-07-22 Per Bothner <per@bothner.com>
- * configure.in (AC_OUTPUT): Add Makefiles in gnu/kawa/models
- and gnu/kawa/swingviews.
- 2003-07-15 Chris Dean <Chris.Dean@sokitomi.com>
- * kawa/standard/Scheme.java (initScheme): Add invoke-special.
- 2003-07-13 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Do followAliases
- when checking for a namespace-using name.
- 2003-07-10 Chris Dean <Chris.Dean@sokitomi.com>
- * kawa/standard/syntax_rules.java (rewriteForm): Allow Keywords among
- the literals
- 2003-06-14 Per Bothner <per@bothner.com>
- * Makefile.am (JAVADOC_PACKAGES): Add gnu.kawa.sax, gnu.jemacs.swing.
- * kawa/lang/Eval.java (apply): Use CallContext's getNextArg
- method rather than getArgAsObject, which will be deprecated.
- 2003-06-06 Jim White <jim@pagesmiths.com>
- * build.xml: Add gnu/ecmascript. Add gnu/jemacs/swing.
- Name change to XStrings.scm.
- Check for Servlet 2.3 API for enable-servlet (HttpServletResponse
- .resetBuffer and HttpServletRequest.getRequestURL are only since 2.3).
- Init of tmp directory moved so that clean will work ok.
- * build.xml: Make system.scm get compiled after vectors.scm.
-
- 2003-06-03 Per Bothner <per@bothner.com>
- * Makefile.am (distall): Add more stuff.
- * kawa/standard/IfFeature.java (scanForDefinitions): Call scan_form
- on single form. Fixes bug reported by Sven.Hartrumpf@FernUni-Hagen.de.
- 2003-06-01 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.7.
- * build.xml (version.release): Set to 1.7.
- * kawa/standard/IfFeature.java (scanForDefinitions): New method.
- * Makefile.am (dist-kawa-@VERSION@.jar): Add --with-sax2 to configure.
- 2003-06-01 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Specify field name for
- vector-append. Fixes bug reported by Sven.Hartrumpf@FernUni-Hagen.de.
- 2003-05-31 Per Bothner <per@bothner.com>
- * kawa/standard/load.java (loadSource): Don't call BaseUri.resolve
- if name is absolute.
- 2003-05-31 Vladimir Tsichevski <wowa@jet.msk.su>
- * configure.in: Fix documentation typo AWT -> SAX2.
- 2003-05-31 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Use define_field instead of
- define_proc for define-procedure builtins for partial inlining.
- 2003-05-22 Per Bothner <per@bothner.com>
- * kawa/lang/EqualPat.java (match): Generalize 2003-04-21 fix
- to handle arbitrary String/Symbol pairs. Fixes bugs reported
- 05-19 by Sven Hartrumpf and 05-22 by Bruce Lewis.
- * kawa/standard/IfFeature.java (hasFeatureX): Remove debug kludge.
- * kawa/standard/IfFeature.java (hasFeature): Add new SRFIs.
- * kawa/standard/IfFeature.java (hasFeature): Add 'kawa' feature.
- * kawa/standard/define.java (scanForDefinitions, rewriteForm):
- Handle names that are Symbols as well as Strings. Fixes bug reported
- 05-22 by Bruce Lewis "renamed identifiers in defines in macros" .
- 2003-05-18 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.7beta1.
- * build.xml (version.release): Set to 1.7beta1.
- * Makefile.am (MAINTAINERCLEANFILES): Add Version.java.
- * kawa/standard/letrec.java (rewrite): Do setDefining on SetExp.
- 2003-05-17 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (setLineOf): New method.
- (rewrite_with_position): Use setLineOf.
- (rewrite_body): Call pushPositionOf, popPositionOf.
- Call setLineOf on result.
- * kawa/kawa/Lambda.java (rewriteBody): Don't allow a return type
- to be specified with just a string literal.
- If converting result, set line position of modified body.
- 2003-05-09 Per Bothner <per@bothner.com>
- * configure.in: Remove --with-java-collections arg and related crud.
- * build.xml (build.preprocessed): Remove gnu/lists and QName.
- Remove no-longer-needed will-collections crud.
- * build.properties: Remove with-collections.
- * build.xml (build.selectjava): Add new gnu/lists classes.
- 2003-05-04 Per Bothner <per@bothner.com>
- * build.xml (build.selectjava): Add ListItems.java and
- IteratorItems.java.
- (build.preprocessed): Remove CallContext.java and Focus.java.
- * Makefile.am (java1-java2-files): New rule.
- 2003-05-03 Per Bothner <per@bothner.com>
- * build.xml: Remove no-longer needed support for "references".
- * build.properties: Likewise.
- * Make-rules: Remove WITH_JAVA_REFERENCES conditionals.
- * configure.in: Drop --without-java-references argument.
- 2003-04-29 Jim White <jim@pagesmiths.com>
- * build.xml: Support for JAVA1 <-> JAVA2 source conversion.
- (select-java1, select-java2, check-for-java2, select-java1-auto,
- select-java2-auto, select-java-auto): New targets.
- 2003-04-30 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Intern name before lookup.
- 2003-04-25 Per Bothner <per@bothner.com>
- * Makefile.am (select-java1, select-java2): New rules to convert
- basebase to Java1-compliant and back again.
- 2003-04-21 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (getOriginalRef): New method.
- (matches, getBinding, rewrite): Use getOriginalRef.
- * kawa/lang/EqualPat.java (match): Add a kludge to for '::'.
- Fixes bug reported 04-11 by Vladimir Tsichevski <wowa@jet.msk.su>.
- * kawa/lang/SyntaxRules.java (<init>): Better debugging output.
- * kawa/lang/AutoloadProcedure.java: Call Procedure's getName
- method instead of deprecated name method.
- * kawa/lang/CompileFile.java: Likewise.
- * kawa/standard/TracedProcedure.java: Likewise.
- * kawa/standard/cxr.java: Likewise.
- * kawa/standard/readchar.java: Likewise.
- 2003-04-19 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (lexical): Now in Compilation.
- (<init>): Update accordingly.
- (push(ScopeExp), pop(ScopeExp), push(Declaration)): Subsumed
- by version in Compilation.
- (pop(Declaration)): Removed - never used.
-
- 2003-04-18 Per Bothner <per@bothner.com>
- * kawa/lang/AutoloadSyntax.java (toString): New method.
- (print): Use toString.
- * kawa/lang/Translator.java (environ): Remove field.
- (lexical): Replacement field.
- (<init>): Allocate lexical instead of environ.
- (lookup, getBinding, rewrite): Update.
- (matches): Update for new hygiene handling.
- (rewrite_body): Combine overloaded methods into one.
- Inline the effect of push - but don't push decls twice.
- (shadowStack): Remove field.
- (pushDeclStart, popDecls, pushDecls, popBinding): Removed methods.
- (finishModule, push, pop): Update accordingly.
- * kawa/standard/Scheme.java (getNamespaceOf): New method.
- * kawa/standard/set_b.java (rewrite): Update to use new NameLookup.
- * kawa/lang/SyntaxRules.java (expand): Likewise.
- 2003-04-14 Per Bothner <per@bothner.com>
- * kawa/lang/Macro.java (capturedDeclarations): Change type.
- (captureDecls): Allocate capturedDeclarations as Declaration array.
- * kawa/lang/SyntaxRules.java (<init>): Update accordingly.
- (expand): Create an aliad Declaration, and push that in the
- Translator lexical scope, instead of the original symbol.
- * kawa/lang/Translator.java (matches): Update accordingly.
- (resolve): Allow first parameter to be a String.
- (getBinding, rewrite): Update and re-organize.
- (pushBinding): Remove and inline into push(Declaration).
- (popBinding): Make private.
- * kawa/standard/define_alias.java (scanForDefinitions): Use
- Translator's push method instead of pushBinding.
- * kawa/standard/define_syntax.java (scanForDefinitions): Likewise.
- * kawa/standard/define_unit.java (scanForDefinitions):
- Remove call to pushBinding. Call push on decl instead.
- 2003-04-12 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (finishModule): Remove unused variables.
-
- * kawa/standard/define.java (scanForDefinitions): Set PROCEDURE
- flag of Declaration.
- * kawa/standard/object.java (rewriteClassDef): Set FIELD_OR_METHOD
- or PROCEDURE flags of Declaration as appropriate.
- * kawa/lang/Translator.java (rewrite): Complain if variable
- reference to a class method.
- * kawa/standard/define.java (scanForDefinitions): Use Translator's
- push method instead of pushBinding.
- * kawa/standard/require.java (scanForDefinitions): Likewise.
- * kawa/repl.java (apply0, apply1, checkInitFile): Don't use
- static fields from kawa.standard.Scheme.
- * kawa/repl.java (SocketRepl class): Make public and rename to ...
- * kawa/TelnetRepl.java: ... new class based on old SocketRepl.
- (serve): New static method based on old kawa.serveTelnet method.
- * kawa/repl.java (serveTelnet): Removed method.
- (processArgs) Update to call TelnetRepl.serve.
- * kawa/Makefile.am (java_sources): Add TelnetRepl.java.
- 2003-04-06 Per Bothner <per@bothner.com>
- * kawa/lang/EqualPat.java (print): Don't use SFormat.
- * kawa/lang/ListRepeatPat.java (print, match): Likewise.
- * kawa/lang/PairPat.java (print): Likewise.
- * kawa/lang/SyntaxRules.java (expand): Likewise.
- 2003-04-04 Per Bothner <per@bothner.com>
- * kawa/standard/define_class.java (scanForDefinitions): Use getDefine.
- 2003-04-01 Per Bothner <per@bothner.com>
- * kawa/standard/set_b.java (rewrite): Handle Symbol assignee.
- Based on patch from Vladimir Tsichevski <wowa@jet.msk.su>.
- 2003-03-29 Jim White <jim@pagesmiths.com>
- * build.xml: Various fixes.
- 2003-03-24 Chris Dean <ctdean@mercedsystems.com>
- * kawa/standard/load.java (loadRlative): Fix typo to loadRelative.
- 2003-03-24 Per Bothner <per@bothner.com>
- * kawa/standard/object.java (rewriteClassDef): Allow names to be
- Symbol as well as String.
- * kawa/standard/define_class.java (scanForDefinitions): Likewise.
- (rewriteForm): Likewise.
- * kawa/lang/Translator.java (getBinding): Follow aliases.
- Needed if Syntax is imported from some other module.
- 2003-03-21 Per Bothner <per@bothner.com>
- * configure.in: Set am__fastdepGCJ_TRUE in non-gcj case.
- Remove kawa_bin variable.
- * configure: Re-generate using auoconf 2.57.
- * aclocal.m4: Re-generate using aclocal 1.7.3.
- * */Makefile.in: Re-generate using automake 1.7.3.
- 2003-03-06 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.7beta1.
- * build.xml (version.release): Set to 1.7beta1.
- 2003-03-03 Per Bothner <per@bothner.com>
- * kawa/standard/load.java (relative): New boolean field.
- (<init>): Add constructor.
- (load, loadRelative): New static fields.
- (loadSource, apply): Take boolean parameter.
- (loadSource): Handle URLs. Resolve usng baseUri or baseUriDefault.
- (apply1, apply2): Pass relative flag.
- (apply): Set/restore base URI.
- * kawa/standard/Scheme.java: Add load-relative and base-uri.
- * kawa/Shell.java (runFile): Update for extra load.apply parameter.
- 2003-03-02 Per Bothner <per@bothner.com>
- * kawa/Shell.java (runFile): Use Environment.getCurrent instead of
- Environment.user, which should probably be deprecated.
- 2003-01-29 Per Bothner <per@bothner.com>
- * kawa/standard/require.java: Recognize 'gui package.
- 2003-01-26 Per Bothner <per@bothner.com>
- * kawa/lang/Record.java (getField): New static helper method.
- (get, set1): Use it.
- Fixes bug reported 1/24 by Wen-Chun Ni <wcn@tbcommerce.com>.
- * kawa/lang/Record.java (makeRecordType): Twice use Method's startCode
- method instead of deprecated init_param_slots.
- 2003-01-24 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java: Define cut and cute.
- * kawa/lang/Lambda.java (rewrite): Don't convert rest parameter
- to String if it is a Symbol.
- * kawa/lang/SyntaxRule.java (print_template_program): Update
- commented-out debug helper routine.
- * kawa/lang/SyntaxRules.java (<init>): Update call in debug code.
- 2003-01-03 Per Bothner <per@bothner.com>
- * libtool.m4, ltmain.sh: Copied from libtool (pre-1.5 CVS) version.
- * ltmain.sh: Add definition of SED.
- * Make-rules (.o rule): Remove --tag=GCJ - not needed by new libtool.
- * aclocal.m4: Re-generated using aclocal 1.6.3.
- * configure: Re-generate using autoconf 2.53.
- * **/Makefile.in: Re-generate using automake 1.6.3.
-
- * config.guess, config.sub: Update from ftp.gnu.org.
- 2003-01-02 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Use 3-operand form of
- define_field for unescaped-data.
- 2003-01-01 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Use 3-operand form of
- define_field if and only if field is in class written in Java.
- 2002-12-11 Per Bothner <per@bothner.com>
- * kawa/standard/define_syntax.java (scanForDefinitions, rewriteForm):
- Handle Symbols as macro names - needed for Common Lisp.
- * kawa/standard/syntax_case.java (rewriteClauses): Allow
- pattern names to be Objects - i.e. Symbols as well as Strings.
- (rewriteForm): Lkewise allow literal identifiers to be Symbols.
- (class syntax_case_work): Likewise - change field type to Object[].
- * kawa/lang/Syntax.java (name): Change field from String to Object.
- (getName): Change to handle either Symbol or String in name.
- (getSymbol, setname): New methods.
- (<init>): Change paramater type to Object, to allow Symbol.
- * kawa/lang/Macro.java (make): Allow name to be Symbol or String.
- (<init>): Likewise.
- * kawa/lang/SyntaxRules.java (translate_pattern): Don't convert
- Symbol to String - instead use as is. Needed for Common Lisp.
- 2002-11-23 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (define_field): Moved to Interpreter.
- * kawa/standard/StaticFieldConstraint.java: Moved to gnu.kawa.reflect.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/lang/Translator.java: Explicitly import StaticFieldConstraint.
- * configure.in: Make --with-collections the default.
- 002-11-20 Per Bothner <bothner@bothner.com>
- * kawa/lang/Translator.java (rewrite): Turn an identifier with a
- colon and matching namespace into a Symbol.
- 2002-11-16 Per Bothner <per@bothner.com>
- * kawa/lang/Promise.java (print): Don't try to print forced value,
- as this could cause a loop.
- * kawa/lang/Lambda.java (rewrite): Parameter name can be Symbol.
- * kawa/lang/SyntaxRules.java (literal_identifiers): Can now be Symbol.
- (<init>, translate_pattern, readExternal): Update accordingly.
- (translate_pattern): Handle Symbols.
- (expand): Renamed hygiene names now use uninterned Symbol, instead of
- uninterned String, since Hashtable doesn't distinguish latter.
- * kawa/lang/Translator.java (environ): Change type to Hashtable,
- because keys can now be Symbols, not just Strings.
- (<init>): Change to match.
- (matches, getBinding, rewrite_pair, rewrite): Re-write to handle
- new types for hygiene.
- (lookup(Object)): Removed.
- (lookup, lookupGlobals, getBinding. push, pushBinding):
- Names can be either Symbols or Strings.
- (shadowStack): No longer public.
- 2002-11-15 Per Bothner <per@bothner.com>
- * kawa/standard/define_class.java: Don't hardwire "define-class" name.
- * kawa/standard/define_autoload.java: Handle Symbol using getName.
- * kawa/standard/let.java (rewrite): Use name as is, without toString.
- * kawa/standard/try_catch.java (rewrite): Likewise, allow Symbol.
- * kawa/standard/fluid_let.java (rewrite): Likewise.
- * kawa/standard/letrec.java (rewrite): Likewise.
- Use Translation's matches method.
- 2002-11-05 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java (read): Call parseFile with new
- 'immediate' argument set to false.
- 2002-10-28 Per Bothner <bothner@bothner.com>
- Rename the Binding and BindingEnumerator classes in gnu.mapping
- to Symbol and SymbolEnumerator, respectively.
-
- 2002-10-28 Per Bothner <per@bothner.com>
- The classes gnu.expr.Symbol and gnu.commonlisp.lang.Symbol were
- renamed to gnu.expr.Symbols and gnu.commonlisp.lang.Symbols.
- 2002-10-22 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Print file and line on IOException.
- If !interactive and caught unresumable exception, return.
- 2002-10-21 Per Bothner <per@bothner.com>
- * kawa/MessageArea.java (doFocus): Remove field - always true.
- (<init>): Don't set focus.
- (isFocusTraversable): Remove - now equivalent to super method.
- * kawa/GuiConsole.java (<init>): Change new MessageArea to match.
- 2002-10-14 Francisco Vides Fernández <pvides@dedalo.ws>
- * kawa/GuiConsole.java (<init>): Pass true for focus argument
- in Message constructor.
- 2002-10-20 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (scanForDefinitions): Change to create
- an alias declaration as well as the imported field. This is needed
- if the imported decl is re-exported or used in an exported macro.
- * kawa/standard/define_syntax.java (scanForDefinitions): Set type.
- * kawa/lang/Translator.java (rewrite_pair): Follow aliases
- before checking for macro.
- * kawa/lang/Macro.java (copying <init>): Copy name as well.
- * kawa/standard/define_alias.java (rewrite): Simplify.
- 2002-10-17 Per Bothner <per@bothner.com>
- * kawa/standard/location.java (rewriteArg): Removed. No longer
- needed now that Translator.rewrite doesn't create PrimProcedures.
- (rewrite): Replace rewriteArg cal by call to Translator.rewrite.
- * kawa/standard/define_alias.java (rewrite): Likewise.
- 2002-09-28 Jim White <jim@pagesmiths.com>
- * build.xml: Compile .scm files for xml-classes.
- Remove unneeded workaround in servlet-classes.
- 2002-09-27 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Only map Procedure to
-
- 2002-09-27 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Only map Procedure to
- field Declaration if Compilation.inlineOk.
- 2002-09-26 Per Bothner <per@bothner.com>
- * kawa/standard/ScmEnv.java (get): Follow aliases.
- * kawa/standard/require.java (scanForDefinitions): Recognize aliases,
- as indicated by the type gnu.mapping.Location.
- * kawa/standard/map.java (applyN): Handle for-each properly
- when arity is 1.
- 2002-09-24 Per Bothner <per@bothner.com>
- * kawa/standard/define.java (scanForDefinitions): If inlineOk is false,
- mark declaration as writeable, even if functional definition.
- * kawa/repl.java (processArgs): Set compile.inlineOk to false
- if --no-inline or --inline=none is specified.
- * kawa/repl.java (printOptions): Also mention --output-format.
- * kawa/repl.java (processArgs): Update copyright year printed by --version.
- 2002-09-21 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewrite, rewriteBody): Use 'matches'
- method of Translator to match against '::'.
- * kawa/standard/Scheme.java (initScheme): Add define-record-type.
- 2002-08-22 Per Bothner <per@bothner.com>
- * kawa/lang/Macro.java (expander): Change type to Object.
- (getExpander): Remove unused method.
- (expand): Handle expander as evaluated Procedure, or
- an re-written S-expression. If latter, re-write it.
- * kawa/standard/define_syntax.java (scanForDefinitions): Set expander.
- (rewrite): Re-write expander if it has been re-written yet.
- 2002-08-16 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): Always look for known
- functions, even if immediate.
- 2002-08-10 Jim White <jim@pagesmiths.com>
- * build.xml: Patch to compile HTTP.scm.
- 2002-08-04 Per Bothner <per@bothner.com>
- * kawa/standard/{string_ci_equal_p.java, string_ci_greaterequal_p.java,
- string_ci_greaterthan_p.java, string_ci_lessequal_p.java,
- string_ci_lessthan_p.java, string_greaterequal_p.java,
- string_greaterthan_p.java, string_lessequal_p.java,
- string_lessthan_p.java}: Removed - noew use kawa.lib.strings.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/vector_append.java (vectorAppend): New static field.
- (<init>): New constructor
- * kawa/standard/Scheme.java (initScheme): Update accordingly.
- 2002-08-02 Per Bothner <per@bothner.com>
- * kawa/standard/expt.java (expt): New static methods.
- (expt) New static final field.
- * kawa/standard/Scheme.java (initScheme): Use define_field for "expt".
- 2002-07-29 Per Bothner <per@bothner.com>
- * kawa/standard/prim_throw.java (primitiveThrow): New static field.
- * kawa/standard/Scheme.java (initScheme): Define "primitive-throw"
- using define_field, so it can be inlined.
- 2002-07-28 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (getNamedType): Define <never-returns>.
- 2002-07-25 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite_pair): Remove some optimizations,
- and argument count checking. They are now done in InlineCalls.
- 2002-07-24 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Update for gnu.expr changes.
- * kawa/standard/load.java (loadSource): Likewise.
- * kawa/lang/CompileFile.java: Likewise.
- (read): Return Compilation instead of ModuleExp.
- (compile_to_file): Catch compile-time exceptions.
- * kawa/lang/Eval.java (evalBody): Updates.
- * kawa/lang/Translator.java: Update Parser -> Compilation.
- Replace current_line etc by Compilation's getLine etc methods.
- (module, getModule): Now in Compilation.
- * kawa/standard/Scheme.java (makeModuleExp): Moved to LispInterpreter.
- * kawa/lang/Translator.java (matches): New method.
- * kawa/standard/define.java (rewriteForm): Use new matches method.
- * kawa/standard/let.java (write): Likewise.
- 2002-07-21 Per Bothner <per@bothner.com>
- * kawa/standard/map.java (inline): Take extra ExpWalker parameter.
- * kawa/lang/Translator.java (rewrite_pair): Check for dotted list.
- 2002-07-02 Per Bothner <per@bothner.com>
- * kawa/standard/string_append.java (stringAppend$V): Remove
- needless toString - which also make it null-safe.
- * kawa/standard/ScmEnv.java: Remove unneeded (and harmful) import.
- 2002-06-26 Per Bothner <per@bothner.com>
- * build.xml: Update XMLParser.java -> XMLParserChar.java.
-
- * build.xml (lib-scm-2nd): Add arrays.scm.
- (slib-scm): Add srfi1.scm.
- 2002-06-13 Per Bothner <per@bothner.com>
- * build.xml (java-classes): Add gnu/kawa/util/. Reported by
- Mirko.Luedde@Computer.Org.
- 2002-06-12 James P. White <jim@pagesmiths.com>
- * build.xml (java-classes): Add gnu/kawa/xml and gnu/xml/.
- 2002-06-12 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.99.
- * build.xml (version.release): Set to 1.6.99.
- * Makefile.am (JAVADOC_PACKAGES): Add gnu.kawa.xslt.
- 2002-06-11 Per Bothner <per@bothner.com>
- * configure.in (--with-sax2): New flag.
- (AC_OUTPUT): Craete gnu/kawa/xslt/Makefile and gnu/kawa/sax/Makefile.
- * build.xml: Support with-xax2 option.
- * build.properties: Document with-ax2 flag.
- Build gnu/kawa/xslt/ and gnu/kawa/sax/ if appropriate.
- * kawa/repl.java (commandLineArgArray): New variable.
- (setArgs): Set commandLineArgArray.
- * build.xml: Generate Focus.java from gnu/kawa/xml/Focus.java.in.
- 2002-06-10 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java: Define srfi-25 array functions.
- 2002-06-02 Per Bothner <per@bothner.com>
- * kawa/standard/define_alias.java (scanForDefinitions):
- Call Translator's pushBinding to make alias compiler-visible.
- 2002-05-29 Per Bothner <per@bothner.com>
- * Makefile.am (kawa-@VERSION@.jar): Change rule so we hopefully don't
- pick up extreanous .class files.
- 2002-05-28 Per Bothner <per@bothner.com>
- * kawa/lang/Macro.java (capturedIdentifiers, capturedFields
- templateIdentifiers, capturedDeclarations): New fields.
- (make): New static methods.
- (captureDecls, getUsedFieldsList): New methods.
- * kawa/lang/SyntaxRule.java (template_identifiers, captured_decls):
- Removed fields. Instead use capturedIdentifiers and
- capturedDeclarations from current Macro.
- (<init>): Capture decls in SyntaxRules.<init>, not here.
- (execute)_template): Removed. Munging of tr.environ is now
- done in SyntaxRules.expand.
- * kawa/lang/SyntaxRules.java (calculate_maxVars, <init>):
- Take extra length parameter.
- (<init>): Get capturedIdentifiers from current Macro, and set them.
- (expand): Munge tr's environ to use macro-definition-time decls.
- * kawa/lang/Translator.java (currentMacroDefinition): New field.
- (lookup. lookupGLobal): New methods.
- (finishModule): Only error if NOT_DEFINING and not IS_UNKNOWN.
- (pushDeclsStart): New method.
- (popDecls): Now takes no arguments.
- * kawa/standard/define_syntax.java: Use new Macro.make method.
- Set/restore tr.currentMacroDefinition
- * kawa/standard/let_syntax.java: Likewise.
- * kawa/standard/require.java (scanForDefinitions): If the loaded value
- is a Macro, at end call its captureDecls method.
- * kawa/lang/AutoloadSyntax.java (rewriteForm): Set currentSyntax.
- 2002-04-18 Per Bothner <per@bothner.com>
- * kawa.repl (exitCounter): New static field.
- (exitIncrement, exitDecrement): New static methods.
- (main): Call exitDecrement.
- * kawa/GuiConsole.java (numConsoles): Removed static field.
- (<init>): Call repl's exitIncrement instead of upping numConsoles.
- (close): Instead of incrementing/testing numConsoles,
- call repl's exitDecrement.
- * kawa.repl (windowStarted): Removed field.
- (processArgs): Don't set windowStarted.
- (main): Don't test windowStarted - I don't think it makes sense.
-
- * kawa/lang/Record.java (makeRecordType): No longer need to
- catch java.io.IOException, since writeToArray now takes care of it.
- 2002-03-21 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewrite): Check for mis-placed '::'.
- * kawa/standard/IfFeature.java: New class, extends Syntax.
- * kawa/standard/Makefile.am (java_sources): Add IfFeature.java.
- * kawa/standard/Scheme.java: Standard procedures memq, memv, member,
- assq, assv, and assoc are now defined in kawa.lib.syntax.
- * kawa/standard/require.java: Recognuze 'srfi-1 and 'list-lib.
- 2002-03-19 Per Bothner <per@bothner.com>
- * configure.in (AC_OUTPUT): Add gnu/jemacs/swing/Makefile.
- 2002-03-07 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite_pair): Use get, with a default,
- in case there is an existing Binding, but it is unbound.
- * configure.in (pathset, filesep): New substitutions.
- * Make-rules (CLASSPATH_ENV): Use pathsep and filesep.
- * configure.in: Add links for 3 gnu/xquery/testsuite xml data files.
- 2002-03-02 Per Bothner <per@bothner.com>
- * .../*/Makefile.am, Makefile.in: Updated to autmake-1.5d.
- Since SOURCES now gets over-written, move source list to EXTRA_DIST.
- Use automake include instead of autoconf substitution.
- Remove AUTOMAKE_OPTIONS, except in doc.
- Various related tweaks.
- * AUTHORS, INSTALL, depcomp: New files, required by automake now
- that AUTOMAKE_OPTIONS is no longer foreign.
- * Make-rules: Various updates, now that we use autoamke inclusion.
- (SED_REFERENCES_SUBS): Moved from 3 three other Makefile.am's.
- * configure.in: Various fixes/tweaks.
- * libtool.m4, ltmain.sh: Updated to cvs libtool.
- * libtool.m4: Don't add -DPIC compile flag if tag is GCJ.
- (ac_compile. ac_link): Add definitions.
- * ltcf-c.sh, ltcf-cxx.sh, ltcf-gcj.sh, ltconfig: Removed.
- * kawa/lang/CompileFile.java (read): Add throws specifications since
- Interpreter's parseFile.has them.
- (compile_to_files): Add catches.
- * kawa/standard/Scheme.java (eval): Removed - now in Intrepreter.
- * kawa/standard/require.java (<clinit>): HTTP is now in slib package.
- 2002-02-20 Per Bothner <per@bothner.com>
- * config.sub, config.guess: Updated from master versions.
- 2002-02-16 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.98.
- * build.xml: Likewise.
- * build.xml: Handle filtering of CallContext.java.in. Build gnu/brl.
- * Makefile.am (+kawa-doc.tar.gz): New rule.
- 2002-02-13 Per Bothner <per@bothner.com>
- * Make-rules (scm-classes.stamp): Use SCM_COMPILE_FLAGS.
- * kawa/lang/Translator.java (makeBody): Take extra ScopeExp arg.
- If argument is a ModuleExp, wrap in append-values.
- * kawa/lang/Translator.java (lookup, resolve): New methods.
- (getBinding, rewrite): Using new methods reduces code duplication.
- * kawa/repl.java: Remove calls to CallContext.setMainContext.
- * Make-rules (DONT_EDIT_SUBS): Moved from gnu/xml/Makefile.am.
- 2002-02-12 Per Bothner <per@bothner.com>
- * kawa/repl.java (main, getInterpreterFromFilenameExtension,
- getInterpreter): Call CallContext.setMainContext.
- * kawa/Shell.java (run): Call CallContext.getInstance.
- * kawa/standard/TracedProcedure.java (applyN): Likewise.
- * kawa/standard/load.java (loadSource): Likewise.
- * kawa/lang/Eval.java (evalBody, eval): Call CallContext.getInstance.
- Set/restore CallContext's consumer.
-
- * kawa/standard/load.java (loadClassFile): Explicitly check
- for Runable rather than just cast to ModuleBody.
- 2002-02-11 Per Bothner <per@bothner.com>
- * configure.in: Link testsuite/scribble.html.in to scribble.html.
- 2002-02-05 Per Bothner <per@bothner.com>
- * configure.in: Add links to two more xml data-sets for xml tests.
- 2002-01-31 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): No longer define
- response-header - the programmer must first (require 'http) now.
- 2002-01-29 Per Bothner <per@bothner.com>
- * read.java: Since apply1 can now throw Throwable, don't need to
- wrap exception. However, so call SyntaxException's new setHeader.
- Don't call ScmRead's statuc readObject, which creates a new ScmRead.
- * configure.in: Also make link to gnu/xquery/testsuite/bib.xml.in.
- * gnu/brl: New package - code imported from BRL.
- * configure.in (AC_OUTPUT): Also generate gnu/brl/Makefile.
- * kawa/repl.java (getInterpreterFromFilenameExtension): New static.
- (processArgs, main): Use filename extension to select language.
- * kawa/standard/reequire: Handle (require 'http).
- * kawa/standard/reequire (scanForDefinitions): Coerce find call
- to void if we're not actually using it (to prevent it being
- printed when we're compiling with implicit values-append).
- 2002-01-23 Per Bothner <per@bothner.com>
- * build.xml: Add enable-xml flag, to build xml-related classes.
- * build.properties: Add/document enable-xml.
- * configure.in (AC_OUTPUT): Also make gnu/kawa/brl/Makefile.
- * kawa/Shell.java (run): Call Lexer's setInteractive if TtyInPort.
- * kawa/standard/Scheme.java (initScheme): Define values-append.
- Fix definition of unescaped-data.
- * kawa/lang/Translator.java (makeBody): New method.
- (rewrite_body, finishModule): Use makeBody.
- 2002-01-21 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java: Also define 'unescaped-data'.
- * acinclude.m4: New check-in.
- 2002-01-19 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java (apply2): Don't catch and re-throw.
- 2002-01-13 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Define response-header.
- * kawa/Shell.java (format): New static table.
- (setDefaultFormat, getOutputConsumer): New static methods.
- (run): New overload taking an output Consumer instead of an OutPort.
- * kawa/repl.java (processArgs): New method.
- New code to handle "\\" and "--output-format" or "--format".
- (main): Use processArgs.
- * kawa/standard/load.java (loadSource): Use getOutputConsumer.
- Wrap body in a beginDocument/endDocument pair.
- 2002-01-07 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java (compile_to_files): Do mangleNameIfNeeded.
- 2001-12-24 James P. White <jim@pagesmiths.com>
- * kawa/repl.java (main): Need to increment iArg on -w.
- 2001-12-24 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite_pair): Don't crash if we
- get a Procedure with a null name.
- 2001-11-27 Per Bothner <per@bothner.com>
- * Makefile.am (JAVADOC_PACKAGES): Add new packages.
- Add coment docuemnting javadoc procedure.
- * Makefile.am (dist-kawa-@VERSION@.jar): Add configure options.
- (kawa-@VERSION@-src.zip, kawa-src.zip): New rules.
- 2001-11-26 Per Bothner <per@bothner.com>
- * build.xml (build.dir): Change to basedir.
- (echo): Also output dist.kawa.jar. Avoids tabs.
- 2001-11-24 Per Bothner <per@bothner.com>
- * build.xml, build.properties: Update from Jim White.
- * Makefile.am: Add more directories (conditionally) to JAR_DEPS.
- * kawa/standard/convert.java: Moved to gnu.kawa.functions.Convert.
- * kawa/standard/Makefile.am: Update accordingly
- * kawa/standard/Scheme.java (initScheme): Likewise.
- * kawa/standard/Scheme.java (getTypeFor): Map "java.lang.String"
- to Type.tostring_type, for convenience.
- * kawa/standard/{define_variable.java,let.java,let_syntax.java,
- letrec.java,load.java,module_name.java,require.java}: Use 'name'
- rather than `name' in messages.
-
- * kawa/standard/map.java: The makeGetField helper methods was moved
- from Expression to SlotGet.
- * kawa/lang/Lambda.java: makeCoercion moved from Expression to Convert.
- 2001-11-23 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewriteBody): Call setReturnType.
- * kawa/lang/AutoloadSyntax.java, kawa/lang/Lambda.java,
- kawa/lang/Macro.java: Change errors message to use 'name' not `name'.
- 2001-11-19 Per Bothner <per@bothner.com>
- * kawa/standard/call_with_values.java (apply): Use CallContext's
- getArgs method. Fixes testsuite regression.
- 2001-11-18 Per Bothner <per@bothner.com>
- Add support building Kawa using Ant, contributed by Jim White
- with some hacking by yours truly.
- * build.xml: New file, with build rules for Ant,
- * build.properties: New file, with comment-out settable properties.
- * Makefile.am (EXTRA_DIST): Add build.xml and build.properties.
- * configure.in (AC_OUTPUT): Also make gnu/kawa/ant/Makefile.
- 2001-11-18 Per Bothner <per@bothner.com>
- * kawa/standard/define_namespace.java: Moved to gnu/kawa/xml and
- renamed to DefineNamespace.java.
- * kawa/standard/Makefile,am, kawa/standard/Scheme.java: Update.
- 2001-11-12 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (initScheme): Define current-error-port.
- * kawa/standard/define_namespace.java (scanForDefinitions):
- Use NamespaceEnv.NAMESPACE_PREFIX
- 2001-11-05 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (getNamedType): The type <String>
- is now Type.tostring_type rather than Type.string_type.
- * kawa/standard/Scheme.java (initScheme): Define let-values
- and let*-values. [srfi-11]
- 2001-11-01 Per Bothner <per@bothner.com>
- * kawa/standard/define_namespace.java: New class; extends Syntax.
- * kawa/standard/Makefile.am (java_sources0: Added define_nameapace..
- * kawa/standard/Scheme.java (initScheme): Define define-namespace.
- 2001-10-20 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Use CallContext's runUntilDone, not run.
- (run, runFile): Catch Throwable, not Exception.
- * kawa/lang/AutoloadProcedure.java, kawa/lang/Eval.java,
- kawa/standard/callcc.java, kawa/standard/TracedProcedure.java,
- kawa/standard/call_with_values.java, kawa/standard/map.java,
- kawa/standard/force.java, kawa/standard/call_with_output_string.java,
- kawa/standard/prim_throw.java, kawa/standard/throw_name.java,
- (apply* methods, eval* methods): Now specify throws Throwable.
- * kawa/lang/Promise.java (force): Likewise.
- * kawa/standard/{call_with_input_file.java, call_with_output_file.java,
- with_input_from_file.java, with_output_to_file.java,load.java):
- Likewise. No longer need to catch exceptions.
- * kawa/standard/prim_throw.java (throw_it): Specify throws Throwable.
- No longer need to wrap checked exceptions.
- * kawa/lang/Macro.java: Catch Throwable, not Exception.
- * kawa/standard/constant_fold.java: Likewise.
- * kawa/standard/Scheme.java (eval): Catch and wrap Throwable.
- * kawa/lang/Record.java (get): Take extra defaultValue parameter.
- * kawa/standard/ScmEnv.java (likewise):
- (addExtra): New hook to add extra Environments to search.
- * kawa/standard/Scheme.java (<init>): Use getNewEnvironment.
- (getNewEnvironment): Use reflection to add NamespaceEnv.
- 2001-10-17 Per Bothner <per@bothner.com>
- * configure.in (AC_OUTPUT): Add gnu/kawa/xml/Makefile.
- * kawa/standard/Scheme.java: Declare "attributes" procedure.
- * kawa/standard/ScmEnv.java (getChecked): Look for "ns-alias:name".
- 2001-10-16 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.97.
- * configure.in (--without-java-references): New flag.
- (WITH_JAVA_REFERENCES) New automake conditional.
- 2001-10-11 Per Bothner <per@bothner.com>
- * config.guess: Import new version.
- * configure.in: Set version to 1.6.96.
- * confgure.in: New --enable-servlet flag.
- (ENABLE_SERVLET): New automake conditional.
- (AC_OUTPUT): Add gnu/kawa/servlet/Makefile.
- * gnu/kawa/Makefile.am (SUBDIRS): Add servlet if ENABLE_SERVLET.
- * kawa.repl: Handle --servlet option.
-
- 2001-10-05 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (getNamedType): Update "abstract-string"
- for CharSequence -> CharSeq renaming.
- 2001-09-24 Per Bothner <per@bothner.com>
- * kawa/standard/NumberCompare.java: Moved to gnu.kawa.functions.
- * kawa/standard/divide_oper.java: Ditto; renamed to DivideOp.
- * kawa/standard/multiply_oper.java: Ditto; renamed to MultiplyOp.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java: Likewise.
- 2001-09-21 Per Bothner <per@bothner.com>
- * kawa/lang/AutoloadProcedure.java (load): If getFunction
- raises an UnboundSumbol, catch that silently.
- * kawa/standard/define.java (scanForDefinition): For define-private,
- set PRIVATE_SPECIFIED explicitly in addition to default PRIVATE flag.
- * kawa/lang/Translator.java (finishModule): Only complain about
- export and private mismatch if PRIVATE_SPECIFIED.
- * kawa/standard/require.java (scanForDefinition): Look for instance
- declaration in current Environment.
- Make the instance declaration readable, so it won't becomes 'ignored'.
- Use getDefineto define imported fields..
- 2001-09-20 Per Bothner <per@bothner.com>
- Add support for --help, based on a patch from
- Andreas Schlapbach <schlpbch@kde.org>.
- * kawa/kawa.repl (printOptions): New method.
- (main, bad_option): Use printOptions.
- 2001-09-13 Per Bothner <per@bothner.com>
- * configure.in: Fix typo in help text for --with-gcj.
- Create tab.xml using AC_LINK_FILES rather than AC_OUTPUT.
- * kawa/standard/define.java (scanForDefinitions): Remove test for
- usingTailCalls.
- 2001-08-30 Per Bothner <per@bothner.com>
- * kawa/lang/Record.java (makeRecordType): Use mangleIfNeeded.
- 2001-08-24 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (pushPositionOf, popPositionOf):
- New methods to make it easier to save and restore line numbers etc.
- (rewrite_with_position): Use new methods.
- (exp2Type): New method
- * kawa/lang/Lambda.java (rewrite): Use new method.
- * kawa/standard/object.java (rewriteClassDef): Likwise.
- * kawa/standard/thisRef.java: New class, extends Syntax.
- * kawa/standard/Makefile.am (java_sources): Add thisRef.java.
- * kawa/standard/Scheme.java (initScheme): Change define for "this".
- 2001-08-23 Per Bothner <per@bothner.com>
- * configure.in (AC_OUTPUT): Add gnu/xquery/testsuite/tab.xml.
-
- * kawa/standard/object.java (rewriteClassDef): New implementation to
- handle CLOS-style keyword-options arguments.
- * kawa/standard/require.java (scanForDefinitions): Map implementation
- type to source type when setting type of declaration.
- 2001-08-17 Per Bothner <per@bothner.com>
- * kawa/repl.java (main): Don't getInterpreter on --connect.
- Wait until processing other arguments.
-
- * kawa/standard/Scheme.java (demangleName): Moved two methods
- to gnu/expr/Compilation.java.
- * kawa/standard/Scheme.java (initScheme): Define define-class,
- define-simple-class. map-values, and children.
- * kawa/standard/define_class.java: New working implementation.
- * kawa/standard/load.java (loadSource): If getMainPrintValues(),
- then expression values are printed to standard output.
- * kawa/Shell.java (run): Clear list of errors after SyntaxException.
- (runString): If ModuleBody.getMainPrintValues(), print to outDefault.
-
- * kawa/standard/object.java (rewriteClassDef): Take ClassExp.
- Allow super type to be non-constant.
- 2001-07-18 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.95.
- * Makefile.am (JAR_DEPS_XML): Add gnu/xquery/lang/java-classes.stamp.
- * configure.in: --with-awt defalts except if --with-gcj.
- (LIBKAWA): Automake conditional renamed to WITH_GCJ.
- (WITH_AWT): New automake conditional.
- (AC_OUTPUT): Add gnu/xquery/*/Makefile.
- * kawa/Shell.java (run): Use Interpreter's new getPropter method.
- Use Interpreter's new interp.getOutputConsumer method.
- Use Interpreter's new parse method.
- * kawa/lang/CompileFile.java (read): Don't take Translator arg,
- instead allocate it locally, but take SOurceMessages arg.
- (apply2): Update accordingly.
- * kawa/standard/load.java (loadSource): Likewise.
- * kawa/standard/Scheme.java: Extend LispInterpreter.
- (initScheme): Add print-as-xml, make-element, make-attribute.
- Various procedures have been moved or now use define_field.
- * kawa/lang/Lambda.java (rewriteBody): Update package of Consumer.
- * kawa/lang/SyntaxRule.java: Use Scheme.writeFrmat, instead of
- semi-deprecated SFormat.print.
- * kawa/lang/Translator.java (immediate): Field moved up to Parser.
- (scan_form): Made public since called by LispInterpreter.
- (push, pop, pushDecls, popDecls): Moved from Parser.
-
- 2001-06-19 Per Bothner <per@bothner.com>
- * kawa/repl.java (main): Don't runCleanups at end if we succeeded
- in registerShutdownHook or started a window with -w.
- 2001-06-17 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java: Handle symbol as Binding.
- * kawa/lang/Translator.java: Handle symbol as Binding.
- * kawa/standard/define_autoload.java: Likewise.
- * kawa/standard/fluid_let.java: Likewise.
- * kawa/standard/let.java: Likewise.
- * kawa/standard/prim_method.java: Likewise.
- * kawa/standard.Scheme.java (getNamedType): Handle clisp:xxx as
- well as elisp:xxx, and better error check.
- * configure.in: Set version to 1.6.94.
- * configure.in (WITH_SWING): New automake conditional.
- (AC_OUTPUT): Add gnu/commonlisp/lisp/Makefile.
- * Make-rules (clisp-classes.stamp): New rule.
- * Makefile.am: Use automake conditionals.
- (kawa-@VERSION@-jar): Depend on */*.stamp files.
- * Makefile.am (JAVADOC_PACKAGES): Update list.
- (JAVADOC_DIR): Change.
- (install-javadoc-html): Use -sourcepath to get generated files.
- 2001-06-09 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.92.
- * configure.in (ENABLE_XML): New automake conditional.
- 2001-06-04 Per Bothner <per@bothner.com>
- No longer install the .class files, but install kawa.jar instead.
- * Make-rules (install-java-classes, install-data-am): Removed.
- * Makefile.am (CLEANFILES): Add *.jar.
- (kawa-@VERSION@.jar): New only makes jar file, without new configure.
- (dist-kawa-@VERSION@.jar): Renamed from old kawa-@VERSION@.jar.
- (install-jar): New rule.
- (install-data-am): New dependency - depend on install-jar.
- (all-redirect): New dependency, on kawa-@VERSION@.jar.
- (distall): Depend on dist-kawa-@VERSION@.jar, not plain kawa.jar.
- * kawa/Makefile.am (EXTRA_DIST): Include $(java_WITH_AWT).
- 2001-06-03 Per Bothner <per@bothner.com>
- * Make-rules ($(PACKAGE_FNAME).lo): Link $^ rather than $? to get
- all the dependencies, not just the out-of-date ones.
-
- * kawa/standard/Scheme.java (writeFormat, displayFormat): New fields.
- (getFormat): New method.
- (<init>): Change procedures display and write.
- (print): Removed method.
- * kawa/standard/require.java (find(Class,Environment)): Don't run
- Runnable instance here (at compile-time).
- (find(String)): Run it here instead (at run-time).
- (scanForDefinitions): If no instance yet, but class is Runnable,
- return ApplyExp to find instance at run-time.
- * kawa.repl (main): New --debug-print-expr option.
- Update copyright date printed by --version.
- Call WriterManager's registerShutdownHook.
- Call OutPort's runCleanups method in finalizer.
- * Shell.java (run): Instead of printing results here, call evalModule
- with the standard output as the Consumer.
- 2001-05-16 Per Bothner <per@bothner.com>
- * kawa/lang/SpecialType.java: Moved to gnu.kawa.lispexpr.LangPrimType.
- * kawa/lang/Makefile.am (java_sources): Remove SpecialType.java.
- * kawa/standard/Scheme.java: Update to use LangPrimType instead
- of SpecialType. Use statics of LangPrimType instead of Scheme.
- 2001-05-08 Per Bothner <per@bothner.com>
- * configure.in: Add AC_OBJEXT and AC_CANONICAL_HOST (otherwise
- make install tried to use libtool).
- Change --enable-gcc-compiled to --with-gcj.
- * libtool.m4, ltcf-c.sh, ltcf-cxx.sh, ltcf-gcj.sh, ltconfig, ltmain.sh:
- New files, part of libtool support.
- * Makefile.am (EXTRA_DIST): Add new files.
- * Make-rules: Various cleanups for libtool support.
- * */Makefile.am: Various changes for libtool support etc.
- * kawa/Makefile.am (EXTR_DIST): Add Version.java.in.
- * kawa/Shell.java: Avoid removed PairWithPosition constructor.
- * kawa/lang/Eval.java (eval, evalBody): New method overloads.
- (apply(Environment,CallContext)): New method.
- * kawa/standard/load.java (loadClassFile): No longer test that inst
- is a Procedure0 (it is now a CpsProcedure).
- * kawa/standard/require.java (find): Don't check if value is a
- MdouleBody, since ModuleBody is now always Runnable.
- 2001-05-01 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.91.
- 2001-04-26 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.90.
- Change most Makefile.am back to worked with released automake.
- This means include of Make-rules must be handled by automake, which
- is less ideal, but automake snapshots are too buggy.
- * Make-rules: Bunch of little changes.
- * Makefile.am (EXTRA_DIST): Add Make-rules.
- * configure.in: Add AC_SUBST_FILE for Make-rules.
- 2001-04-23 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (getNamedType): Add <readtable>.
- * kawa/standard/require.java: Add readtable feature.
- 2001-04-22 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java (readBody): Removed method.
- * kawa/standard/Scheme.java (eval): Re-write to use new static
- ReaderParens.readList instead of CompileFile.readBody.
- * kawa/standard/define_autoload.java (findAutoloadComments):
- Update call to LispReader's readNestedComment for new argument list.
- * kawa/standard/string2number.java (parse): Use new
- LispReader.parseNumber method.
- 2001-04-11 Per Bothner <per@bothner.com>
- * kawa/lang/Eval.java (eval): If argument is PairWithPosition,
- use it to set position of temporary "body" PairWithPosition.
- (evalBody): If body is PairWithPosition, set ModuleExp's filename.
- * kawa/standard/Scheme.java (initScheme): Define <pair-with-position>.
- 2001-04-09 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (<clinit>): Also handle require 'xml.
- * Make-rules (CLEANFILE): Also remove $(OFILES_DIR)/$(PACKAGE_FNAME).o.
- * configure.in (AC_OUTPUT): Replace gnu/kawa/xml by gnu/xml.
- * kawa/Makefile.am (SOURCES): Removed - recent automake complains.
- (EXTRA_DIST): Use this instead.
- * kawa/lang/Makefile.am (CLEANFILES): Remove redundant macro.
- * kawa/lib/Makefile.am (CLEANFILES): Likewise.
- 2001-04-07 Thomas Kirk <tk@research.att.com>
- * kawa/standard/load.java(loadCompiled): Avoid leaking
- zipfiles by calling new method ZipLoader.loadAllClasses, which
- reads all classes immediately so that zipfile can be closed,
- 2001-03-22 Per Bothner <per@bothner.com>
- * Make-rules: Various tweaks.
- If compiling .class to native, no longer need to make classes.jar.
- (install-java-classes): New rule.
- * Makefile.am (SUBDIRS): Added new bin directory.
- (KAWA1_OFILES, kawa1$(exeext)): Moved to bin/Makefile.am.
- * configure.in: (AC_OUTPUT): Add bin/Makefile.
- If --enable-gcj-compiled, default JAVA and JAVAC to gij and gcj.
- * bin: New sub-directory.
- * kawa/kawa.c: Moved to new bin directory.
- * kawa/Makefile.am: Moved stuff to bin/Makefile.am.
-
- * repl.java (checkInitFile): Set home-directory variable *before*
- running init file.
- * Shell.java (run): Fix logic for EOF testing,
- 2001-03-08 Per Bothner <per@bothner.com>
- Many changes to handlenew gnu.lists package.
- * Make-rules (CLEANFILES): New definition.
- * configure.in: Handle --with-java-collection flag.
- * kawa/Shell.java, kawa/repl.java:
- Import gnu.lists instead of gnu.kawa.util.
- * kawa/lang/{AutoloadSyntax.java,CompileFile.java,Eval.java,
- Lambda.java,ListPat.java,ListRepeatPat.java,Macro.java,PairPat.java,
- Quote.java,Record.java,RecordConstructor.java,Syntax.java,
- SyntaxRule.java,SyntaxRules.java,Translator.java,VarListPat.java}:
- Likewise. Also, use LList.listLength instead of LList.length.
- * kawa/standard/{and_or.java,append.java,begin.java,
- call_with_output_string.java,cxr.java,define.java,define_alias.java,
- define_autoload.java,define_class.java,define_member_alias.java,
- define_syntax.java,define_unit.java,define_variable.java,export.java,
- fluid_let.java,let.java,let_syntax.java,letrec.java,load.java,
- location.java,map.java,module_extends.java,module_implements.java,
- module_name.java,module_static.java,object.java,prim_method.java,
- quasiquote.java,read_line.java,readchar.java,require.java,set_b.java,
- string2number.java,string_append.java,string_v.java,synchronizd.java,
- syntax_case.java,syntax_error.java,syntax_rules.java,try_catch.java,
- try_finally.java,vector_append.java}:
- Import gnu.lists instead of gnu.kawa.util.
- Update LList.length->listLength, elementAt->get, length->size.
- * kawa/standard/{exact_p.java,inexact_p.java,list_p.java,list_ref.java,
- .list_tail.java,list2string.java,number2string.java,string2list.java,
- vector2list.java}: Removed - re-written in Scheme.
- * Makefile.am (java_JAVA): Remove removed files.
- * Scheme.java (initScheme): Update accordingly.
- (getNamedType): Update paths for classes now in gnu.lists.
- * Scheme.java (define_field): Mangle the procedure name.
- * missing: Update to newer version.
- 2001-02-28 Per Bothner <per@bothner.com>
- Support for compiling Kawa using Gcj.
- * Make-rules: New file, to be include by each Makefile.am.
- * Makefile.am (JAVADOC_PACKAGES): Add "recent" packages.
- (kawa1$(exeext)): Make, using gcj, Kawa executable (Java-only part).
- M aclocal.m4
- * configure.in: Add support for --enable-gjc-compiled flag.
- * .../Makefile.am: Include Make-rules; handle --enable-gjc-compiled.
- * kawa/lang/Record.java: Use fully-qualified java.lang.reflect.Field
- instead of import, as latter confuses Gcj.
- * kawa/standard/Scheme.java: Use define_field for display.
- * kawa/standard/map.java: Fix typo in comment.
- * kawa/standard/require.java (featureMap, SLIB_PREFIX): Static fields
- moved from gnu.kawa.slib.SLib.
- (map, mapFeature): Methods moved from gnu.kawa.slib.SLib.
- (scanForDefinitions): Uddate to use local mapFeature.
- 2001-02-27 Per Bothner <per@bothner.com>
- * kawa/repl.java (main): Field dumpZipPrefix moved to ModuleExp.
- * kawa/standard/define_class.java: Comment out until we can fix it.
- 2001-02-16 Per Bothner <per@bothner.com>
- * configure.in: New --enable-xml flag.
- (XML_SELECTED): New substitution macro.
- * gnu/kawa/Makefile.am (SUBDIR): Add optional xml directory.
- * kawa/standard/Scheme.java (getNamedType): Add <document>.
- 2000-12-13 Per Bothner <per@bothner.com>
- * kawa/standard/map.java (inline): Inline map as well as for-each.
- * kawa/standard/quasiquote.java (expand_pair): Call LList.make
- rather than kawa.lib.lists.cons.
- (consType): Removed static field.
- * kawa/standard/Scheme.java (initScheme): Add "reverse!".
- The reverse function is now in kawa.lib.lists.
- * kawa/standard/reverse.java: Removed.
- * kawa/standard/Makefile.am (java_JAVA): Removed reverse.java.
- 2000-12-13 Emmanuel Castro <castro@lirmm.fr>
- * kawa/standard/Scheme.java (initScheme): 'error' is now in
- kawa.lib.misc, not kawa.lib.syntax.
- 2000-12-13 Per Bothner <per@bothner.com>
- * kawa/standard/map.java (inline): Swap order of then-clause and
- else-clause in generated code. Fixes bug 'for-each does not compile
- in CVS tree' reported by Emmanuel Castro <castro@lirmm.fr>.
- 2000-12-11 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (map, forEach): New fields.
- (<init>): Initialize map and forEach fields.
- (initScheme): Defie map, for-each using define_field.
- * kawa/standard/map.java: Implement CanInline.
- (inline): New methods, to implement CanInline.
-
- 2000-12-09 Per Bothner <per@bothner.com>
- Patch from Matthias Radestock <matthias@lshift.net>:
- * kawa/lang/AutoloadProcedure.java (env): New field.
- (<init>): Extra Environment argument.
- (load): Use env field instead of current Environment.
- * kawa/lang/AutoloadSyntax.java: Likewise.
- * kawa/standard/define_autoload.java: Pass Translator's global
- environment to AutoloadProcedure and AutoloadSyntax constructors.
- * kawa/standard/Scheme.java (define_proc, define_syntax): Pass
- current environ to AutoloadProcedure and AutoloadSyntax constructors.
- 2000-12-02 Per Bothner <per@bothner.com>
- * kawa/lang/Macro.java (getExpander): New method.
- * kawa/lang/Translator.java (addGlobal): Removed method.
- (getBinding): Lookup using hygiene-resolved name.
- (pushBinding): Do nothing if new value is name as old.
-
- * kawa/standard/define.java (scanForDefinitions): Do pushBinding.
- * kawa/standard/define_unit.java: Do pushBinding, not addGlobal.
- * kawa/standard/define_syntax.java: Likewise.
- * kawa/standard/require.java (scanForDefinitions): Likewise.
- Also if value is a Macro, call bind on it.
- * kawa/standard/open_output_file.java (openOutputFile): New static.
- 2000-11-21 Matthias Radestock <matthias@lshift.net>
- * kawa/standard/load.java (apply): Removes an incorrect fall-through
- that results in files to be loaded twice.
- * kawa/standard/require.java (find): Fixes lookup of module class
- instances which resulted in multiple require's for the same module
- to loadExecute the module multiple times
- 2000-10-23 Per Bothner <per@bothner.com>
- * kawa/lang/CompileFile.java (compile_to_files): Strip off any file
- extension, not just ".scm" or ".el".
- 2000-08-31 Emmanuel Castro <castro@lirmm.fr>
- * kawa/standard/require (finf): Fix typo in error message.
- 2000-10-13 Per Bothner <per@bothner.com>
- * kawa/lang/Syntax.java: No longer extend Declaration.
- (getName, setName): New methods.
- (<init>): Do nothing - since not a Declaration.
- * kawa/lang/Macro.java (bind): New method.
- * kawa/lang/Record.java (put): Swap arguments in call to set1,
- due to change in setter conventions.
- * kawa/standard/cxr.java (set1): Swap arguments for new convention.
- * kawa/standard/make.java (applyN): Likewise.
- * kawa/standard/set_b.java (rewrite): Likewise.
- * kawa/lang/Translator.java: Significant changes to support that
- Syntax no longer extends Declaration, and that the introduction
- of StaticFieldConstraint (which could replace autoloading).
- * kawa/standard/call_with_values.java (apply): Update for changes
- in CallContext.
- * kawa/standard/let_syntax.java (rewrite): Update for Macro no
- longer inheriting from Declaration.
- * kawa/standard/define_syntax.java: Likewise.
- * kawa/standard/let.java (let): New static final field.
- * kawa/standard/car.java: Replaced by car from kawa/lib/lists.scm.
- * kawa/standard/cdr.java: Replaced by cdr from kawa/lib/lists.scm.
- * kawa/standard/plus_oper.java: Replaced by gnu.kawa.functions.AddOp.
- * kawa/standard/minus_oper.java: Replaced by gnu.kawa.functions.AddOp.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java: Likewise.
- 2000-10-12 Per Bothner <per@bothner.com>
- * kawa/standard/{ceiling.java,floor.java,round.java,truncate.java,
- ashift.java}: Replaced by new procedures in kawa/lib/numbers.scm.
- * kawa/standard/Scheme.java: Update accordingly.
- * kawa/standard/Makefile.am (java_JAVA): Remove removed classes.
- * configure.in: Set version to 1.6.71.
- (AC_OUTPUT): Add gnu/kawa/functions/Makefile.
- * kawa/standard/apply.java: Moved to gnu/kawa/functions/Apply.java.
- * kawa/standard/format.java: Moved to gnu/kawa/functions/Format.java.
- * kawa/standard/ObjectFormat.java: Moved to gnu/kawa/functions.
- * kawa/standard/TracedProcedure.java: Add import for ObjectFormat.
- * kawa/standard/ParseFormat.java: Moved to gnu/kawa/functions.
- * kawa/standard/LispFormat.java: Moved to gnu/kawa/functions.
- * kawa/standard/ass.java: Moved to gnu/kawa/functions/Assoc.java.
- * kawa/standard/eq_p.java: Moved to gnu/kawa/functions/IsEq.java.
- * kawa/standard/equal_p.java: Moved to gnu/kawa/functions/IsEqual.java.
- * kawa/standard/eqv_p.java: Moved to gnu/kawa/functions/IsEqv.java.
- * kawa/standard/list_v.java: Moved to gnu/kawa/functions/MakeList.java.
- * kawa/standard/mem.java: Moved to gnu/kawa/functions/Member.java.
- * kawa/standard/setter.java: Moved to gnu/kawa/functions/Setter.java.
- * kawa/standard/not.java (<init>(Interpreter,String)): New constructor.
- * kawa/standard/prim_method.java (rewrite): More robust;
- diagnostic for missing class.
- * kawa/standard/convert.java (instance): Sttaic field renamed ...
- (as): ... new field, now allocated at <clinit>-time.
- (getInstance): Always return the 'as' field.
- * kawa/standard/StaticFieldConstraint.java: New class,
- extends ClassMemberConstraint.
- * kawa/standard/Scheme.java (define_field): New methods.
- (instanceOf, not, isEq, isEqv, isEqual, memq, memv, member, assq,
- assv, assoc): New static fields for standard Procedures.
- (initScheme): Numerous updates.
- (parseFormat): Removed static field. (Use field in ParseFormat.)
- * kawa/standard/Makefile.am: Numerous updates.
- 2000-8-17 Per Bothner <per@bothner.com>
- * kawa/standard/apply.java (apply): Update CallStack -> CallContext.
- * kawa/standard/call_with_values.java (apply): Likewise.
- * kawa/standard/callcc.java (apply): Likewise.
- * kawa/lang/Lambda.java (rewriteBody): Handle ':: <TYPE> EXP ...'.
- Use new makeCoersion method in Expression.
- Support <sequence> result to use Consumer target.
- 2000-10-09 Per Bothner <per@bothner.com>
- * kawa/standard/prim_method.java (rewrite): Load reflectClass here;
- emit diagnostic message on failure.
- 2000-10-02 Per Bothner <per@bothner.com>
- * kawa/standard/require.java (scanForDefinitions): If imported field
- is a Binding, do setIndirectBinding(true).
- 2000-08-16 Per Bothner <per@bothner.com>
- * kawa/repl.java (main): The --cps flag also sets usingTailCalls.
-
- * kawa/GuiConsole.java (<init>): Set autoflush for default out
- and err Writers. Fix from Emmanuel Castro <castro@lirmm.fr>.
- 2000-06-26 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (rewrite): If separate name spaces,
- don't resolve regular name to procedure decl.
- 2000-06-24 Per Bothner <per@bothner.com>
-
- * configure.in: Set version to 1.6.70.
- * configure.in (AC_OUTPUT): Add gnu/commonlisp/*.
- * kawa/lang/Lambda.java: Mode a lot more generic.
- (optionalKeyword, restKeyword, keyKeyword): New fields.
- (rewriteBody): New method.
- * kawa/standard/define.java (lambda): New field.
- * kawa/standard/object.java (lambda): New field.
- * kawa/standard/define_class.java (objectSyntax): New field.
- * kawa/standard/Scheme.java: Update as appropriate.
- 2000-06-19 Per Bothner <per@bothner.com>
- * Makefile.am (kawa.jar): Fix dependency.
- (EXTRA_DIST): Add jar-manifest.
- * configure.in: Set version to 1.6.68.
- (JEMACS_VERSION): New variable.
- * Makefile.am: Add rules to make jemacs.tar.
- (kawa-@VERSION@-compiled.jar): Renamed to kawa-@VERSION@.jar.
- Do a full configure+make first.
- * gnu/kawa/util/Char.java: Moved to gnu/text.
- Various references had to be updated, or import statements added.
- * kawa/repl.java: Update copyright printed by --version.
- * kawa/standard/LispFormat.java (class LispIntegerFormat):
- Moved and renamed to gnu/text/IntegerFormat.java.
- * kawa/standard/ParseFormat.java: Add mostly-working (except that
- precision is ignored) for %d %i %o %x and %X.
- * kawa/standard/{char_ci_equal_p.java,char_ci_greater_equal_p.java,
- char_ci_greater_p.java,char_ci_less_equal_p.java,char_ci_less_p.java,
- char_equal_p.java,char_greater_equal_p.java,char_greater_p.java,
- char_less_equal_p.java,char_less_p.java}: Removed. Subsumed by
- new procedures in kawa/lib/characters.scm.
- * kawa/standard/Makefile.am: Update accordingly.
- * kawa/standard/Scheme.java: Update accordingly.
- 2000-06-17 Per Bothner <per@bothner.com>
- * kawa/lang/AutoloadProcedure.java (getProperty): New method.
- * kawa/lang/AutoloadSyntax.java (load): Don't re-set in Environment.
- * kawa/standard/Scheme.java (getTypeValue): Use getTypeFor method
- of Interpreter.
- * kawa/standard/ParseFormat.java (asFormat): New static method.
- * kawa/standard/format.java (formatToString): New static method.
- * kawa/standard/instance.java: Moved and renamed to
- gnu/kawa/reflect/InstanceOf.java.
- * kawa/standard/Makefile.am: Updated accordingly.
- * kawa/standard/apply.java: Extend for use by ELisp.
- (getArguments): Make static, add new skip parameter.
- (apply, applyN): Adjust accordingly.
- * kawa/standard/not.java (trueExp, falseExp): New fields.
- (compile): Use them.
- Also, pass interpreter to ConditionalTarget constructor.
- 2000-06-09 Per Bothner <per@bothner.com>
- * Makefile.am (SUBDIRS): Move testsuite before gnu, to "force" check
- to be run there before in gnu/jemacs/testsuite.M
- * configure.in (AC_OUTPUT): Added gnu/jemacs/testsuite/Makefile.
- * kawa/lang/AutoloadProcedure.java: Implement Externalizable.
- * kawa/lang/AutoloadSyntax.java: Implement Externalizable.
- * kawa/lang/Syntax.java (<init>): Don't bother setting TYPE_SPECIFIED.
- * kawa/lang/Translator.java (finishModule): Handle case of no forms.
- * kawa/standard/define_autoload.java: New class, extends Syntax.
- * kawa/standard/define_unit.java: New class, extends Syntax.
- * kawa/standard/Makefile.am (java_JAVA): Update accordingly.
- * kawa/standard/Scheme.java (initScheme): Add new syntaxes.
- * kawa/standard/define_syntax.java (rewriteForm): Add a noteValue.
- * kawa/standard/define.java (makeConstant): New field.
- Generaize to implement define-constant.
- * kawa/standard/require.java: If immediate, just call
- ClassMemberConstraint.define.
- * kawa/standard/set_b.java (rewrite): Complain if setting a constant.
- 2000-06-09 Bruce Lewis <brlewis@alum.mit.edu>
- * kawa/standard/read_line.java (apply): Fix off-by-one error in
- handling of '\r' followed by '\n'.
- 2000-05-28 Per Bothner <per@bothner.com>
- * configure.in (AC_OUTPUT): Added gnu/kawa/lispexpr/Makefile.
- * kawa/lang/CompileFile.java: LispReader moved to gnu.kawa.lispexpr.
- * kawa/lang/ScmRead.java: Moved to gnu.kawa.lispexpr.
- * kawa/lang/Makefile.am: Updated accordingly.
- * kawa/standard/Scheme.java: Update imports.
- * kawa/Shell.java: LispReader moved to gnu.kawa.lispexpr.
- * kawa/lang/Translator.java (finishModule): If SUPERTYPE_SPECIFIED,
- force declaration to be non-static.
- * kawa/standard/module_extends.java: Set SUPERTYPE_SPECIFIED.
- * kawa/standard/module_implements.java: Likewise.
-
- * kawa/standard/read.java: Use RuntimeException or WrappedException
- instead of semi-deprecated GenericException.
- * kawa/standard/call_with_input_file.java: Likewise.
- * kawa/standard/call_with_output_file.java: Likewise.
- * kawa/standard/make.java: Likewise.
- * kawa/standard/scheme_env.java: Likewise.
- * kawa/standard/string2number.java: Likewise.
- * kawa/standard/with_input_from_file.java: Likewise.
- 2000-05-27 Per Bothner <per@bothner.com>
- * kawa/repl.java (main): New --module-static flag.
- * kawa/lang/Syntax.java (<init>): Set TYPE_SPECIFIED and IS_CONSTANT.
- * kawa/lang/Macro.java (setExpander): New method.
- * kawa/lang/Lambda.java (rewrite): Maybe set TYPE_SPECIFIED on param.
- * kawa/lang/Translator.java (finishModule): Process static and
- export specification.
- * kawa/standard/module_static.java: New class; extends Syntax.
- * kawa/standard/export.java: New class; extends Syntax.
- * kawa/standard/Makefile.am (java_JAVA): Add new files.
- * kawa/standard/Scheme.java (initScheme): Add module-static and
- module-export.
- * kawa/standard/Scheme.java (demangleName): Fix to handle
- minor changes in Compilation.mangleName.
- * kawa/standard/define.java: Handle optional type-specifier.
- * kawa/standard/define_alias.java: If aliased expression is a simple
- name, don't call rewrite (which does setIndirectBinding).
- (scanForDefinitions): Don't set decl type until rewrite.
- * kawa/standard/define_syntax.java: If immediate, call Macro's
- setExpander method, re-using current Macro.
- * kawa/standard/let.java (rewrite): Set TYPE_SPECIFIED in Declaration.
- * kawa/standard/letrec.java: Likewise.
- * kawa/standard/require.java (find): Fix typo.
- (scanForDefinitions): Note that Declaration is not simple.
- Note mustCompileHere.
- * kawa/standard/set_b.java: Do followAliases.
- 2000-05-22 Per Bothner <per@bothner.com>
- * confgure.in (AC_OUTPUT): Add gnu/jemacs/lisp/Makefile.
-
- * kawa/lang/AnyPat.java: No longer implement Compilable.
- * kawa/lang/EqualPat.java: No longer implement Compilable.
- * kawa/lang/PairPat.java: No longer implement Compilable.
- * kawa/lang/ListRepeatPat.java: No longer implement Compilable.
- * kawa/lang/Macro.java: No longer implement Compilable
- * kawa/lang/SyntaxRule.java: No longer implement Compilable
- * kawa/lang/SyntaxRules.java: No longer implement Compilable
- * kawa/lang/SpecialType.java: Do method lookup here instead of
- expecting it in gnu.kawa.util.Char or gnu.math methods.
- * kawa/standard/Scheme.java (string2Type): Use ArrayType.make.
- (<init>): Set Interpreter.defaultInterpreter first.
- (getNamedType): Add <procedure> as a synonym for <function>.
- (getTypeFor): New method.
- (exp2Type): Just call getTypeFor.
- * kawa/standard/define_syntax.java
- (typeMacro, makeMethod): New static fields.
- (rewriteForm): Check if syntax rule is Externalizable, rather
- than no-longer-used Compilable. Use new makeMethod field.
- 2000-05-09 Per Bothner <per@bothner.com>
- * kawa/lang/AutoloadProcedure.java: Use new Environment puttFunction.
- * kawa/lang/AutoloadSyntax.java: Use new Environment getFunction.
- * kawa/lang/AnyPat.java: Implement java.io.Externalizable.
- * kawa/lang/EqualPat.java: Likewise.
- * kawa/lang/ListRepeatPat.java: Likewise.
- * kawa/lang/PairPat.java: Likewise.
- * kawa/lang/Macro.java: Likewise.
- * kawa/lang/SyntaxRule.java: Likewise.
- * kawa/lang/SyntaxRules.java: Likewise.
- * kawa/lang/Macro.java (scanForDefinitions): Use new Parser methods
- to set line position.
- * kawa/lang/Translator.java (current_filename, current_line,
- current_column. messages): Moved fields to superclass (Parser).
- (getMessages, setMessages, error): Likewise moved methods.
- (setLine): New methods.
- (scan_form): Use new setLine method.
- * kawa/lang/SyntaxRules.java (<init>): Likewise.
- * kawa/repl.java (setInterpreter): Method removed.
- (getInterpreter): Don't hard-wire in Scheme.
- (main): Don't hard-wire in languages, instead ask Interpreter.
- * kawa/standard/Scheme.java (getNamedType): Don't hard-wire
- "elisp:boolean". Instead, handle "elisp:*". Also, get an Elisp
- instance using reflection - in case it isn't available when compiling.
- 2000-04-22 Per Bothner <per@bothner.com>
- * kawa/lang/SpecialType.java (interpreter): New optional field.
- Call interpreter to handle conversion to/from boolean.
- * kawa/standard/eq_p.java (interpreter): New field. Used to
- do language-appropriate boolean result.
- * kawa/standard/equal_p.java: Likewise.
- * kawa/standard/eqv_p.java: Likewise.
- * kawa/standard/instance.java: Likewise.
- * kawa/standard/not.java (getReturnType): Get from interpreter.
- * kawa/standard/Scheme.java
- (booleanType): Don't initialize in static constructor.
- (intType, floatType, etc): Use new SpecialType constructor.
- (initSchee): Pass this to eq_p, eqv_p, equal_p, instance constructors.
- (getNamedType): Init boolean here, passing in Scheme.getInstance.
- Also, handle <elisp:boolean>.
- 2000-04-22 Per Bothner <per@bothner.com>
- * kawa/lang/SpecialType.java (interpreter): New optional field.
- Call interpreter to handle conversion to/from boolean.
- * kawa/standard/eq_p.java (interpreter): New field. Used to
- do language-appropriate boolean result.
- * kawa/standard/equal_p.java: Likewise.
- * kawa/standard/eqv_p.java: Likewise.
- * kawa/standard/instance.java: Likewise.
- * kawa/standard/not.java (getReturnType): Get from interpreter.
- * kawa/standard/Scheme.java
- (booleanType): Don't initialize in static constructor.
- (intType, floatType, etc): Use new SpecialType constructor.
- (initSchee): Pass this to eq_p, eqv_p, equal_p, instance constructors.
- (getNamedType): Init boolean here, passing in Scheme.getInstance.
- Also, handle <elisp:boolean>.
- 2000-04-21 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java: No extends from gnu.expr.Parser.
- (current_scope): Moved field to Parser.
- (parse): New method, implements method from Parser.
- (currentLambda, currentScope, getInterpreter, mustCompileHere,
- push, pop, pushDecls, popDecls): Moved methods to Parser.
- * kawa/lang/Translator.java (getBinding): Also check inherited env.
- 2000-04-18 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.67.
- 2000-04-17 Per Bothner <per@bothner.com>
- * kawa/lang/Record.java (getFieldFields): Removed two methods.
- (equals): Re-write to not use getFieldFields.
- * kawa/standard/Scheme.java (getNamedType): Add <abstract-string>.
- 2000-04-12 Per Bothner <per@bothner.com>
- * kawa/Telnet.java: Merge contents of TelnetConnection.java.
- Implement Runnable instead of extending Thread.
- Make some constants (such as ECHO, DONT, etc) public.
- * kawa/TelnetConnection.java: Removed.
- * kawa/TelnetInputStream.java: Update accordingly.
- * kawa/TelnetOutputStream.java: Likewise.
- * kawa/repl.java: Likewise.
- * kawa/Makefile.am (java_JAVA): Remove TelnetConnection.java.
-
- * kawa/lang/GetFieldProc.java: Use gnu.bytecode.Field (now with
- sourceName and reflection cache) instead of java.lang.reflect.Field.
- * kawa/lang/SetFieldProc.java: Likewise.
- * kawa/lang/RecordConstructor.java: Likewise.
- * kawa/lang/Record.java (toString): Likewise use extended Field.
- (makeRecordType): Handle names that need to be mangled.
- * kawa/standard/location.java (rewrite): If ReferenceExp, return it.
- * kawa/standard/define_alias.java (scanForDefinitions): Put
- Declaration in pushed form. Call Declarations's setAlias.
- (rewrite): Don't create IndirectConstraint.
- * kawa/standard/Scheme.java (Scheme): Initialize
- Interpreter.defaultInterpreter to this Scheme.
- * kawa/standard/number2string.java (apply, apply): Create FString.
- * kawa/standard/Scheme.java (demangleName): New static method.
- * kawa/standard/Scheme.java (getTypeValue): Follow aliases.
- (getNamedType): Remove emacs type aliases. (Now in emacs.scm.)
- * kawa/standard/prim_method.java (exp2Type): Use Scheme.getTypeValue.
- 2000-03-22 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.64.
- 2000-03-21 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (module): Make non-public.
- (getModule): New method.
- * kawa/standard/module_extends.java: New class, extends Syntax.
- * kawa/standard/module_name.java: New class, extends Syntax.
- * kawa/standard/module_implements.java: New class, extends Syntax.
- * kawa/standard/Makefile.am (java_JAVA): Add new classes.
- * kawa/standard/Scheme.java (initScheme): Define new syntax.
- 2000-03-17 Per Bothner <per@bothner.com>
- * kawa/Shell.java (run): Kludge to work with ELisp.
- * kawa/lang/AutoloadProcedure.java (load): Likewise.
- * kawa/lang/AutoloadSyntax.java (load): Likewise.
- * kawa/lang/Translator.java (getInterpreter): New field.
- (rewrite_pair, rewrite): More kludges for ELisp.
- * kawa/lang/CompileFile.java (readBody, read): Get correct lexer
- via the default Interpreter.
- (compile_to_files): Know about .el file extension.
- * kawa/standard/NumberCompare.java: New generalized compare class.
- Has appropriate mangled static fields and methods.
- * kawa/standard/{equal_oper.java,greater_oper.java,less_oper.java,
- greaterequal_oper.java,lessequal_oper.java}: Subsumed by NumberCompare.
- * kawa/standard/Makefile.am (java_JAVA): Update class list.
- * kawa/standard/write.java: Replaced by kawa/lib/port.scm.
- * kawa/standard/writechar.java: Replaced by kawa/lib/port.scm.
- * kawa/standard/Scheme.java (initScheme): Update accordingly.
- * kawa/standard/fluid_let.java: Support ELisp `let' and `let*'.
- (start, defaultInit): New fields, for Elisp support.
- * kawa/standard/load.java (loadSource): Don't hard-wire Scheme.
- * kawa/standard/prim_method.java (rewrite): Allow 'xx for method name.
- * kawa/standard/require.java: Default package as compilationPrefix.
- * kawa/standard/string_append.java (stringAppend$V): New static method.
- * kawa/standard/number2string.java (format): Renamed to apply.
- * kawa/standard/char_equal_p.java (apply): New static method.
- 2000-03-06 Per Bothner <per@bothner.com>
- * Makefile.am (makekawa.bat): Add new scm sub-directories.
- * gnu/{jawa/slib,jemacs/buffer,jemacs/lang}/Makefile.{am,in}:
- Added list-sources target.
- * configure.in, configure (AC_OUTPUT): Add gnu/slib/Makefile.
- * gnu/kawa/Makefile.am (SUBDIRS): Add slib.
- * jar-manifest: New file, used to build kawa-@VERSION@-compiled.jar.
- * Makefile.am (kawa-@VERSION@-compiled.jar): Add manifest file.
- (install-javadoc-html): Copy over COPYING.
- * kawa/lang/Translator.java (immediate): New field.
- * kawa/Shell.java (run): Set Translator's immediate field
- * kawa/lang/Translator.java (rerite_pair): Call check_if_syntax.
- * kawa/lang/Translator.java (scan): Save/restore line number info.
- * kawa/lang/CompileFile.java (compile_to_file): Return if errors seen.
- * kawa/standard/eqv_p.java (apply): Make static.
-
- * kawa/standard/require.java (allocate): Rename to find.
- Add working implementation.
- 2000-03-02 Per Bothner <per@bothner.com>
- * jawa/standard/prim_throw.java (getReturnType):
- Change to Type.neverReturnsType.
- 2000-02-29 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.65.
- 2000-02-27 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.64.
- * configure.in: Support new flag --without-awt.
- * kawa/GuiConsole.java: Addd default constructor.
- * kawa/repl.java (main): Load GuiConsole using reflection.
- * kawa/Makefile.am: Don't build GuiConsole etc if --without-awt.
- * Makefile.am: Add rules for kawa-compiled.jar.
- * kawa/lang/Syntax.java: Also implements Named.
- * kawa/standard/Scheme.java: Use Procedure.getName instead of name.
- 2000-02-26 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme.java (getNamedType): Add "frame".
- 2000-02-19 Per Bothner <per@bothner.com>
- * kawa/Shell.java (runFile): Catch SyntaxException, and do printAll.
- * kawa/standard/Scheme.java (initScheme): Define `emacs'.
- * configure.in: New substitution variable SWING_SELECTED.
- 2000-02-12 Per Bothner <per@bothner.com>
- * kawa/standard/Scheme (initScheme): Define "this" macro.
- (registerEnvironment): Set Interpreter.defaultInterpreter
- 2000-02-11 Per Bothner <per@bothner.com>
- * kawa/repl.java (main): Recognize --applet flag.
- * kawa/standard/load.java (apply): Now throws FileNotFoundException.
- (apply2): Catch FileNotFoundException.
- (loadClassFile): Do ClassMemberConstraint.defineAll.
- * kawa/Shell.java (runFile): Use load.apply.
- * kawa/lang/Lambda.java (rewrite): Using a Pattern is overkill.
- * kawa/lang/Translator.java (rewrite_pair): Maybe setProcedureName.
- * kawa/standard/Scheme.java (registerCurrent): New static method.
- * kawa/standard/define_variable.java: New class; extends Syntax.
- * kawa/standard/Makefile.am (java_JAVA): Add define_variable.java.
- * kawa/standard/Scheme.java (initScheme): Define "define-variable".
- 2000-02-02 Per Bothner <per@bothner.com>
- * kawa/standard/define.java (scanForDefinitions): Fix thinko.
- 2000-02-01 Per Bothner <per@bothner.com>
- * kawa/repl.java (defaultInterpreter): Static field moved
- to Interpreter. Updated various uses.
- * kawa/lang/Interpreter.java: Moved gnu.expr.
- * kawa/GuiConsole.java: Update import statement accordingly.
- * kawa/lang/Makefile.am (java_JAVA): Removed Interpreter.java.
- * kawa/lang/Translator.java (getrBinding, rewrite_pair):
- Call Binding's getFunctionValue method.
- * kawa/standard/{char_ready_p.java,eqv_p.java,exact_p.java,
- inexact_p.java,integer_p.java,positive_p.java}:
- Use Boolean.TRUE/Boolean.FALSE rather than Interpreter.boolObject.
- * kawa/standard/{string_ci_equal_p.java,string_ci_greaterequal_p.java,
- string_ci_greaterthan_p.java,string_ci_lessequal_p.java,
- string_ci_lessthan_p.java,string_greaterequal_p.java,
- string_greaterthan_p.java,string_lessequal_p.java;
- kawa/standard/string_lessthan_p.java}: Likewise.
- (apply) New static method.
- * kawa/standard/{write.java,writechar.java}: Use Scheme.voidObject
- instead of Interpreter.voidObject.
- * kawa/standard/not.java (interpreter): New field.
- (apply1): Use interpreter.booleanObject.
- * kawa/standard/and_or.java (interpreter): New field.
- (rewrite): Use interpreter.booleanObject.
- * kawa/standard/Scheme.java: Rename fields to Java conventions:
- (null_environment): Renamed to nullEnvironment.
- (r4_environment): Renamed to r4Environment.
- (r5_environment): Renamed to r5Environment.
- (kawa_environment): Renamed to kawaEnvironment.
- * kawa/standard/scheme_env.java (apply1): Update accordingly.
- 2000-01-24 Per Bothner <per@bothner.com>
- * kawa/lang/ScmRead.java: Add #!undefined->Interpreter.undefinedObject.
- * kawa/lang/PrimArrayGet.java: Moved to gnu.kawa.reflect.ArrayGet.
- * kawa/lang/PrimArraySet.java: Moved to gnu.kawa.reflect.ArraySet.
- * kawa/lang/PrimArrayNew.java: Moved to gnu.kawa.reflect.ArrayNew.
- * kawa/lang/PrimArrayLength.java:Moved to gnu.kawa.reflect.ArrayLength.
- * kawa/lang/PrimGetStatic.java: Moved to gnu.kawa.reflect.StaticGet.
- * kawa/lang/PrimSetStatic.java: Moved to gnu.kawa.reflect.StaticSet.
- * kawa/lang/QueueReader.java: Moved to gnu.text.
- * kawa/lang/Makefile.am (java_JAVA): Update accordingly.
- * kawa/standard/syntax_case.java: Update for new class names.
- * kawa/GuiConsole.java: Update since QueueReader was moved.
- * kawa/MessageArea.java: Likewise.
- * kawa/standard/Makefile.am (java_JAVA): Remove moved files.
- * kawa/standard/Scheme.java (initScheme): Various procedures are
- now defined in kawa/lib/vectors.scm and numbers.scm.
- * kawa/standard/{acos.java,asin.java,lognot.java,logop.java,
- logbit_p.java,logtest.java,logcount.java,bit_extract.java,
- int_length.java close_input_port.java,null_env.java,user_env.java,
- make_vector,.java,vector_fill_b.java,cons.java,vector_v.java}:
- No longer needed.
- * kawa/standard/load.java (apply): Make static.
- * kawa/standard/quasiquote.java: Call utility functions using inlined
- Invoke.makeInvokeStatic, rather than new ApplyExp (new QuoteExp ...).
- * kawa/standard/append.java (append$V): New method.
- No longer implement Compilable.
- * kawa/standard/vector_append.java (apply$V): New method.
- No longer implement Compilable.
- * kawa/standard/Scheme.java (initScheme): Don't use removed statics.
- 2000-01-23 Per Bothner <per@bothner.com>
- * kawa/standard/load.java: Change methods to return void.
- (loadCompiled): Call defineAll method in ClassMemberConstraint
- to import public fields.
- * kawa/lang/AutoloadProcedure.java (load): Likewise.
- * kawa/lang/AutoloadSyntax.java (load): Likewise.
- * kawa/lang/Macro.java: No longer use inherited value field.
- Now implement Compilable and Printable.
- (transformer): Removed field.
- (expander): New Expression field.
- (print): New method (to implement Printable).
- (makeLiteral, emit): New methods (to implement Compilable).
- * kawa/standard/define_syntax.java: Change for new Macro handling.
- * kawa/standard/let_syntax.java (rewrite): Likewise - save
- tranbsformers in local array, not in Macro.transformer.
- * kawa/lang/Translator.java (push, pop): Use pushBinding. popBinding.
- (push): Do mustCompileHere() for all scopes except ModuleExp.
- * kawa/standard/call_with_values.java (callWithValues): New static.
- * kawa/standard/close_input_port.java (apply1): Use WrappedException.
- * kawa/standard/define.java (scanForDefinitions): Re-structure.
- Sometimes do setCanWrite on decl when we don't want default inlining.
- In that case, set decl's value to null.
- * kawa/lang/NamedException.java (toString): Trivial optimization.
- * kawa/lang/PairPat.java (match): Stylistic simplification.
- * kawa/lang/Lambda.java (rewrite): Set (default) type of #!rest arg.
- Allow #!rest arg to have a type.
- * kawa/standard/values_v.java: Removed.
- * kawa/standard/Scheme.java (initScheme): Don't declare it either.
- * kawa/standard/location.java (makeProcLocation$V): New static method.
- (rewrite): Call makeProcLocation$V instead of %makeProcLocation.
- * kawa/standard/makeProcLocation.java: Removed.
- * kawa/standard/Scheme.java (initScheme): Remove %makeProcLocation;
- now get `values' from kawa.lib.misc.
- * kawa/standard/Makefile.am (java_JAVA): Update accordingly.
- * kawa/standard/format.java (format, formatToString): Make static.
- (format$V): New static method.
- * kawa/standard/list_v.java: Implement Inlinable.
- (compile, getReturnType): New methods.
- 1999-12-27 Per Bothner <per@bothner.com>
- * kawa/lang/Lambda.java (rewrite): Don't call setParameter.
- * kawa/lang/Syntax.java: Two trivial cleanups.
- * kawa/lang/Translator.java (current_decl): Rename to environ.
- (rewrite): Handle non-Declaration in environ.
- (shadowStack): New field.
- (pushBindund, popBinding): New methods.
- * kawa/lang/SyntaxRule.java: Use Translator's environ field.
- * kawa/standard/define_alias.java: Likewise.
- * kawa/standard/require.java: New class; extends Syntax.
- * kawa/standard/Makefile.am (java_JAVA): Add require.java.
- * kawa/standard/Scheme.java (initScheme): Add require.
- * kawa/standard/define.java: Use Declaration's new getName() method.
- * kawa/standard/define_member_alias.java: Likewise.
- * kawa/standard/letrec.java: Use Declaration instead of Variable.
- * kawa/standard/set_b.java: Likewise.
- 1999-12-10 Per Bothner <per@bothner.com>
- * gnu/kawa/util: New package directory.
- * configure.in (AC_OUTPUT): Add gnu/kawa/util/Makefile.
- * kawa/lang/Makefile.am (java_JAVA): Remove classes moved
- to gnu/kawa/util.
- * gnu/*: Update for classes moved to new gnu.kawa.util (some renamed).
- * kawa/*: Likewise.
- * gnu/kawa/Makefile.am (SUBDIRS): Add util.
- * kawa/lang/ScmRead.java (readUniformVector): New method.
- (readObject): Use readUniformVector to read SRFI-4 uniform vectors.
- (readCharacter): Use new Char.nameToChar method.
- * kawa/standard/length.java: Removed - replaced by Scheme code.
- * kawa/standard/Makefile.am (java_JAVA): Update accordingly.
- * kawa/standard/Scheme (initScheme): Add new SRFI-4 procedures.
- (getNamedType): Add new type names for SRFI-4 uniform vectors.
- 1999-12-06 Per Bothner <per@bothner.com>
- * Makefile.am, Makefile.in (JAVADOC_PACKAGES): Add new packages.
- (JAVADOC_FLAGS): Add flags to give javadoc enough memory.
- * kawa/lang/Lambda.java (rewrite): Support NAME :: TYPE syntax.
- * kawa/standard/let.java (rewrite): Trivial optimization.
- * kawa/standard/define_member_alias.java: New Syntax class.
- * kawa/standard/Makefile.am (java_JAVA): Add define_member_alias.java.
- * kawa/standard/Scheme.java (initScheme): Define define-member-alias.
- (getNamedType): Define buffer and window.
- 1999-12-05 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.63.
- 1999-11-16 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.62, and made release.
- * COPYING: New file. Replaces removed doc/license.terms.
- * kawa/repl.java (main): --version prints (short) copyright notice.
- 1999-11-15 Per Bothner <per@bothner.com>
- * kawa/lang/Pair.java (emit): Use new ClassType.getDeclaredField.
- * kawa/lang/Translator.java (rewrite_pair): If Inlineable,
- don't try PrimProcedure.getMethodFor (yet).
- M kawa/standard/TracedProcedure.java
- * kawa/standard/Scheme.java (string2Type): Use ClassType.make.
- (initScheme): Update for gnu.kawa.reflect changes.
- * kawa/standard/static_field.java: Remove; subsumed by Invoke.
- * kawa/standard/Makefile.am (java_JAVA): Update accordingly.
- 1999-11-04 Per Bothner <per@bothner.com>
- * kawa/lang/Char.java (make): Remove subsumed method.
- * kawa/lang/Translator.java (rewrite_pair): Move code to look
- for matching static method to gnu.expr.PrimProcedure.getMethodFor.
- * kawa/lang/Translator.java (apply_rewrite): Fix thinko,
- reported by Daniel Bonniot <d.bonniot@mail.dotcom.fr>.
- * kawa/standard/Scheme.java (initScheme): Define open-output-string,
- get-output-string, string-output-port.
- * kawa/standard/call_with_output_string.java (apply1):
- Use new CharArrayOutPort class instead of CharArrayWriter.
- * kawa/standard/format.java (formatToString): Likewise.
- * kawa/standard/plus_oper.java (apply$V): New method.
- (apply(Object,Object)): Removed, until we have better inlining.
- 1999-10-20 Bruce Lewis <brlewis@alum.mit.edu>
- * kawa/lang/ScmRead.java: New method readDefault lets subclasses
- extend the behavior of the readObject methods.
- * kawa/standard/Scheme.java: Allow subclasses to use define_proc
- and define_syntax methods.
- 1999-10-25 Per Bothner <per@bothner.com>
- * Makefile.am, Makefile.in (makekawa.bat): Depend on configure.in.
- * configure.in, configure: Set version to 1.6.61.
- * doc/kawa.texi: Document `invoke'.
- * NEWS, TODO: Updates.
- * kawa/lang/Syntax.java (scanForDefinitions): New method.
- * kawa/lang/AutoloadSyntax.java (scanForDefinitions): New method.
- * kawa/lang/Macro.java (scanForDefinitions): New method.
- * kawa/lang/Translator.java
- (rewrite_pair): Handle varargs method (apply$V and NAME$V).
- (scan_form): Rewr-ite to use new Syntax.scanForDefinitions.
- More logic specific to a syntax to the corresponding method.
- * kawa/standard/begin.java (scanForDefinitions): New method.
- * kawa/standard/define.java (scanForDefinitions): New method.
- * kawa/standard/define_alias.java (scanForDefinitions): New method.
- * kawa/standard/define_syntax.java (scanForDefinitions): New method.
- * kawa/standard/Scheme.java (defineSyntax, defineSyntaxPrivate,
- beginSyntax, defineAliasSyntax, defineSyntaxSyntax): Remove fields.
- (initScheme): Fix typo "kawa.lib.number" -> "kawa.lib.numbers".
- Add "open-input-string" (SRFI-6), "define-class", "invoke".
- * kawa/standard/object.java (rewriteClassDef): New method.
- * kawa/standard/define_class.java: New class.
- * kawa/standard/{Makefile.am,Makefile.in} (java_JAVA): Update.
- * kawa/standard/read_line.java (apply): Re-throw a WrappedException.
- * kawa/standard/make_future.java (apply1): Future Procedure
- no longer is necessarily a Procedure1.
- 1999-10-13 Walter C. Pelissero <wcp@demon.db.de>
- * kawa/standard/TracedProcedure.java: Catch RuntimeException,
- print to trace output, and re-throw.
- 1999-10-13 Per Bothner <per@bothner.com>
- * kawa/standard/TracedProcedure.java: Indent output.
- 1999-10-07 Per Bothner <per@bothner.com>
- * kawa/standard/TracedProcedure.java: Indent nested calls.
- 1999-10-07 Walter C. Pelissero <wcp@demon.db.de>.
- * kawa/standard/Scheme.java: Fix typo number -> numbers.
- 1999-10-04 Per Bothner <per@bothner.com>
- * kawa/standard/make_future.java: Future action is now Procedure,
- not necessarily Procedure0.
- Fixes bug reported by Walter C. Pelissero <wcp@demon.db.de>.
- 1999-09-14 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.60.
- (AC_OUTPUT): Add gnu/kawa/Makefile gnu/kawa/reflect/Makefile.
-
- * kawa/lang/Interpreter.java (coerceFromObject, coerceToObject):
- New methods.
- * kawa/standard/call_with_values.java: Update values() -> getValues().
- * kawa/standard/Scheme.java: Likewise.
- * kawa/lang/InvokeStatic.java: Moved to gnu/kawa/reflect.
- * kawa/standard/class_methods.java: Replaced by
- gnu/kawa/reflect/ClassMethods.java.
- * kawa/standard/field.java: Replaced by gnu/kawa/reflect/SlotGet.java.
- * kawa/standard/Scheme.java: Update for new or moved procedures.
- * kawa/lang/Makefile.am: Update accordingly.
- * kawa/standard/Makefile.am: Likewise.
- * kawa/standard/list_v.java (list$V): New method.
- 1999-09-08 Per Bothner <per@bothner.com>
- * kawa/lang/InvokeStatic.java: Get rid of lots of crud by
- using kawa.standard.class_methods.
-
- * kawa/lang/CompileFile.java (read): Set filename of ModuleExp.
- * kawa/lang/Translator.java (scan_form): Copy line number info.
- * kawa/lang/Lambda.java (rewrite): Set line number info on
- parameter Declarations.
- * kawa/standard/define.java (rewrite): Replace by rewriteForm.
- * kawa/lang/{Pair.java,Vector.java}: Update scmObjectType->typeObject.
- 1999-09-05 Per Bothner <per@bothner.com>
- * kawa/lang/Translator.java (error): New method.
- (syntaxError): Use new method.
- (rewrite_pair): If car is Syntax, then apply_rewrite.
- (scan_form); New method, with code moved from scan_body.
- (finishModule): New method.
- * kawa/lang/Interpreter.java (getName): New method.
- * kawa/lang/CompileFile.java (read): Now read each line, and
- does Translator.scan_form separate on each statement.
- (read, readBody): No long throw SyntaxException.
- (compile_to_files): Takes SourceMessages parameter; returns void.
- * kawa/repl.java: Use new compile_to_files interface.
- * Shell.java (run): Skip whitespace in case read is called.
- * kawa/lang/Macro.java (expand): Add quotes in error message.
- * kawa/lang/ScmRead.java (readNumber): A quantity like 12in is
- no longer a literal, but returns a form like (* 12 in$unit).
- (readString): Use readEscape.
- * kawa/standard/ScmEnv.java: Also handle UNITNAME$unit.
- * kawa/standard/location.java (rewrite): Handle static bindings.
- * kawa/standard/Scheme.java: Define read-line and define-private.
- (eval): Update for new CompileFile.readBody interface.
- (makeModuleExp): Use scan_body instead of lambda.rewrite.
- (getNamedType): "java.lang.String" is no longer bound to
- Type.string_type (though "String" still is).
- * kawa/standard/define_syntax.java (rewrite): Handle the case when
- the macro "name" is a Declaration (created by Translator.scan_form).
- * kawa/standard/define.java: Likewise.
- Also add support for define-private.
- * kawa/standard/read_line.java: New class; extends ProcedureN.
- * kawa/standard/Makefile.am (java_JAVA): Add read_line.
- * kawa/lang/Sequence.java (toArray): Use an Emueration.
- * kawa/lang/List.java (list1, list2, list3): New convenience methods.
- * kawa/lang/FString.java: Do two new constructors.
-
- 1999-08-26 Per Bothner <per@bothner.com>
- * kawa/lang/Interpreter.java (getTypeFor): New abstract method
- * kawa/standard/Scheme.java (getTypeFor): New method.
- * kawa/lang/Syntax.java: Now inherits from Declaration.
- * kawa/lang/AutoloadSyntax.java: Replace each name() by getName().
- * kawa/standard/prim_method.java: Likewise.
- * kawa/standard/Scheme.java (define_syntax): New methods needed.
- * kawa/lang/Macro.java: Merge in functionality of DefMacro.
- * kawa/lang/DefMacro.java: Removed - subsumed by Macro.
- * kawa/lang/Makefile.am, Makefile.in (java_JAVA): Remove DefMacro.java.
- (<init>): Re-do correspondingly.
- * kawa/lang/SyntaxRule.java (captured_decls): New field.
- (<init>): Save current visible local Declarations in captured_decls.
- (execute_template): Map renamed symbol to captured decl, if any.
- * kawa/lang/Translator.java (getGlobalEnvironment): New method.
- (push, pop): Immediately return if Declaration's name is null.
- (getBinding): If lexical binding is Syntax, return that.
- (rewrite_pair): Simpler test if car is non-lexically bound to Syntax.
- If no lexical binding, don't call getBinding; just check global env.
- (scan_body): Handle define-alias.
- * kawa/standard/define.java (rewrite): Re-organize.
- * kawa/standard/define_alias.java: Now also handle non-top-level uses.
- * kawa/standard/define_syntax.java: Replace DefMacro uses by Macro.
- * kawa/standard/let_syntax.java: Now also handles letrec-syntax.
- * kawa/standard/class_methods.java: New class; extends ProcedureN.
- * kawa/standard/Makefile.am (java_JAVA): Add class_methods.java.
- * kawa/standard/Scheme.java: Update accordingly.
- 1999-08-22 Per Bothner <per@bothner.com>
- * kawa/lang/Quote (rewrite): Don't use Patterns.
- * kawa/lang/Sequence (toArray): Allocate correct array type,
- as specified by Java2 Collections.
- * kawa/lang/PairWithPosition.java (<init>): New constructor.
- * kawa/MessageArea.java: Remove redundant import java.lang.*.
- * kawa/lang/AutoloadSyntax.java (rewrite): Replace by rewriteForm.
- * kawa/lang/SyntaxRule.java (execute_template, both overloadings):
- Take the input form as an extra argument. Use this to copy line
- position of input (if known) to expansion.
- * kawa/lang/Translator.java: More general macro framework:
- A macro has an arbitrary expansion precedure (possibly using
- syntax-case), which is called with a SyntaxForm.
- Also, some better line number handling and error message hooks.
- * kawa/lang/Syntax.java (rewriteForm): New preferred method to
- override, instead of (still-available) rewrite.
- * kawa/lang/Macro.java (rewriteForm): Method replaces rewrite.
- (expand): Takes a complete form, not just the argument list.
- * kawa/lang/DefMacro.java: Re-write - expander now takes a single
- SyntaxForm, rather than an array of forms. Also, provide hook for
- not-yet-evaluated expression instead of expander Procedure.
- * kawa/lang/SyntaxRules.java: Now inherit from Procedure1.
- (apply1): New methods - calls expand.
- (expand): Update interface to take Pair.
- * kawa/standard/location.java (rewriteArg): Update expand call.
- * kawa/lang/SyntaxForm.java: New class.
- * kawa/lang/InvokeStatic: New class.
-
- * kawa/lang/EqualPat.java (print): Tweak the output.
- * kawa/lang/Pattern.java (typePattern, matchPatternMethod):
- New static fields.
- * kawa/lang/ListRepeatPat.java: Use Pattern.typePattern.
- * kawa/lang/PairPat.java: Likewise.
- (match): If input is SyntaxForm, match its contained form.
- * kawa/standard/syntax_case.java: New Syntax class.
- * kawa/standard/syntax_rules.java: New Syntax class.
- * kawa/standard/let_syntax.java: New Syntax class.
- * kawa/standard/Scheme.java: Define new macros.
- (exp2Type): New method.
- * kawa/standard/define_syntax.java: No-longer handles
- the syntax-rules part now that syntax-rules is stand-alone.
- * kawa/standard/Makefile.am: Update for new classes.
- * kawa/standard/eq_p.java (compile): New static method.
- * kawa/standard/eqv_p.java: Make Inlineable.
- (isEqv): Rename to apply.
- 1999-08-08 Per Bothner <per@bothner.com>
- * configure.in, configure (AC_OUTPUT): Update for gnu.jemacs change.
- * kawa.repl (setInterpreter): Update ELisp package prefix.
- * kawa/lang/ListPat.java: New static match methods.
- * kawa/standard/ifp.java (rewrite): Use static ListPat.match method.
- 1999-08-07 Per Bothner <per@bothner.com>
- * kawa/lang/GetFieldProc.java (compile): Don't inline if class was
- loaded with an ArrayClassLoader.
- * kawa/lang/SetFieldProc.java (compile): Likewise.
- * kawa/lang/Record.java (toString): Don't print static fields.
-
- 1999-08-06 Per Bothner <per@bothner.com>
- * configure.in (AC_OUTPUT): Revert use of javatop macro.
- * kawa/lang/Sequence.java (elements): New method.
- (SeqEnumeration): New non-public class.
- * kawa/lang/List.java (elements): New method.
- (ListEnumeration): New non-public class.
- * kawa/lang/Interpreter.java (getNewEnvironment): New method.
- * kawa/standard/Scheme.java (getNewEnvironment): New method.
- * kawa/GuiConsole.java: Separate Environment from Interpreter.
- * kawa/repl.java (main): Use new GuiConsole constructor.
- * kawa/Shell.java (run): No longer need to explicitly catch WrongType.
- Change confusing message for ClassCastException.
- * kawa/lang/Translator.java (rewrite_pair): If directly calling
- an inlined PrimProcedure, set the name (for better error messages).
- * kawa/standard/car.java: Catch ClassCastException instead of
- using instanceof.
- * kawa/standard/cdr.java: Likewise.
- 1999-08-03 Per Bothner <per@bothner.com>
- * configure.in (AC_INIT): Use doc/kawa.texi instead of kawa/repl.java.
- (AC_OUTPUT): Use (normally undefined) javatop macro.
- * Makefile.am (JAVATOP): New (normally undefined) macro.
- 1999-07-20 Per Bothner <per@bothner.com>
- * kawa/Makefile.am, kawa/Makefile.in (BUILT_SOURCES, Version.java):
- Moved to ./Makefile.am, to make sure Version.java is built first.
- * Makefile.am, Makefile.in (makekawa.bat): New rule.
- 1999-07-19 Per Bothner <per@bothner.com>
- * configure.in: Set version to 1.6.59.
- * kawa/standard/TracedProcedure.java: New ProcedureN class.
- * kawa/standard/Makefile.am (java_JAVA): Add TracedProcedure.java.
- * kawa/standard/ObjectFormat.java (format): New overload.
- * kawa/standard/Scheme.java (initScheme): Define call/cc (alias),
- system-tmpdir, make-temporary-file, trace, untrace.
- 1999-07-16 Per Bothner <per@bothner.com>
- * kawa/GuiConsole.java (<init>): Create a kawa.repl, not a kawa.Shell.
- * kawa/Shell.java: No longer inherits from Procedure0.
- All methods are static; most now take an explicit Environment
- (for top-level bindings) as well as Interpreter (current language).
- * kawa/repl.java: Now extends Procedure0or1.
- (apply0, apply1): New methods.
- (interp): New instance field.
- (<init>): New constructor.
- (defaultInterpreter): New static field.
- (getInterpreter, setInterpreter): New static methods.
- (main): Options to select interpreter (language).
- (serveTelnet): Take Interpreter argument.
- Create a new SocketRepl, instead of a new Shell.
- (SocketRepl): New Procedure0 class.
- * kawa/lang/Sequence.java (toArray): Implement two new methods.
- * kawa/lang/Pair.java (toArray): Implement optimized versions.
- * kawa/lang/FString.java (toCharArray): New method.
- * kawa/lang/Interpreter.java (getLexer): New abstract method.
- * kawa/standard/Scheme.java (getInstance, getLexer): New methods.
- (initScheme): Declare "repl". Change "emacs.read".
- * kawa/standard/load.java (loadSource): Use Scheme.getInstance.
- * kawa/standard/convert.java (compile): Use Target.pushValue.
- 1999-07-11 Per Bothner <per@bothner.com>
- * kawa/lang/Char.java (charNameValues, charNames): Add "bel" for ^G.
- 1999-06-30 Per Bothner <per@bothner.com>
- * **/Makefile.in: Re-generated.
- * **/Makefile.nt, **/Makefile.unix: Remove - not used in years.
- * kawa/standard/ObjectFormat.java (format): Optimize if no length
- truncation is needed, especially if dst is CharArrayWriter.
- * kawa/standard/LispFormat.java (LispRealFormat): New class.
- (LispFreshlineFormat): New non-public ReportFormat class.
- (LispTabulateFormat.padChar): New field.
- (LispTabulateFormat.format): Re-write - now works.
- (LispFormat.<init>): Working support for ~F, ~E, ~G, ~$, ~T, ~&.
- 1999-06-20 Per Bothner <bothner@pacbell.net>
- * configure.in: Add new --with-swing option.
- Also configure gnu/emacs/Makefile.
-
- 1999-04-25 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/standard/object.java (rewrite): Fields have unknown value.
- 1999-04-23 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/lang/Translator.java (errors): Removed field.
- (messages): New gnu.text.SourceMessages field.
- (syntaxError): Don't print messages; invoke messages.error instead.
- * kawa/lang/Eval.java (eval): Create new SourceMessages.
- (evalBody): Add and use new SourceMessages parameter.
- * kawa/lang/Lambda.java: Update for new SourceMessages convention.
- * kawa/lang/ScmRead.java (<init>): New overload taking SourceMessages.
- (readSymbol): Handle `::' as a symbol, not a keyword.
- (readObject): Handle [ ... ].
- * kawa/lang/CompileFile.java: Use new SourceMessages conventions.
- * kawa/standard/Scheme.java: Declare new precedure subtype?.
- (getNamedType): Add character.
- (eval): Catch SyntaxException.
- * kawa/standard/let.java: Handle :: TYPE specifier.
- * kawa/standard/letrec.java: Handle :: TYPE specifier.
- * kawa/standard/load.java: Use new SourcesMessages class.
- * kawa/Shell.java (run): New new SourceMessages conventions.
- * kawa/repl.java: When compiling, catch SyntaxException.
- * kawa/lang/SyntaxRule.java (execute_template): Move DEBUGGING comment
- * kawa/lang/SyntaxRules.java (expand): ... to here.
- 1999-04-22 Per Bothner <bothner@cygnus.com>
- * kawa/standard/object.scm (rewrite): Do setClassMethod on $finit$.
- 1999-04-09 Per Bothner <bothner@cygnus.com>
- * kawa/lang/Translator.java (systemClassLoader): New private field.
- (rewrite_pair): Compare with systemClassLoader.
- Wed Apr 7 21:52:19 1999 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/lang/Translator.java (isLexical): New method.
- (getBinding, rewrite): Call isLexical.
- * kawa/standard/fluid_let.java: New Syntax class.
- * kawa/standard/Makefile.am (java_JAVA): Add fluid_let.java.
- * kawa/standard/Scheme.java: fluid-let is now written in Java.
- * kawa/standard/let.java (pattern2): Remove unused static field.
- * kawa/standard/location.java (rewrite): Check that !isFluid().
- * kawa/standard/set_b.java (rewrite): Check that decl is lexical.
- Tue Mar 30 17:52:57 1999 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/standard/object.java (rewrite): Call LambdaExp.setClassMethod.
- Sat Mar 20 11:23:48 1999 Per Bothner <bothner@Magnus.Cygnus.COM>
- * configure.in (AC_OUTPUT), configure: Add gnu/elisp/Makefile.
- * kawa/lang/Macro.java: New Syntax sub-class.
- * kawa/lang/Makefile.am (java_JAVA): Add Macro.java.
- * kawa/lang/SpecialType.java: Inherit from Macro rather than Syntax.
- (rewrite1): Rename to expand (overrides) Macro.
- (rewrite): Removed - now in Macro.
- * kawa/lang/DefMacro.java: Inherit from Macro rather than Syntax.
- (rewrite): Replace by Macro.expand method.
- * kawa/lang/Translator.java (getBinding): Use gnu.expr.Binding.
- (scan_body): Scan for the more general Macro, rather than SyntaxRules.
- * kawa/lang/Record.java (get): Renamed to getChecked.
- * kawa/standard/Scheme.java (voidType): New static Type field.
- (getNamedType): USe voidType.
- (initScheme): Define define-alias and emacs:read.
- * kawa/standard/ScmEnv.java (getType): New helper method.
- (ScmEnvConstraint): New helper class.
- (<init>): Set unboundConstraint to new ScmEnvConstraint.
- * kawa/standard/call_with_values.java (apply(CallStack)): New method.
- * kawa/standard/location.java (rewriteArg): New static method.
- (rewrite): Handle macros and both global and local variables.
- * kawa/standard/constant_fold.java (checkConstant): Just call
- get(Object) - which does not throw exception if undefined.
-
- * kawa/standard/define_alias.java: New Syntax sub-class.
- * kawa/standard/Makefile.am (jav_JAVA): Add define_alias.java.
- Sun Mar 7 16:42:02 1999 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/repl.java: New flags --full-tailscalls and --no-full-tailcalls.
- * kawa/lang/AutoloadProcedure.java (load): ModuleBody.run no longer
- takes any argument.
- * kawa/lang/AutoloadSyntax.java (load): Likewise.
- * kawa/lang/Promise.java: Change thunk from Procedure0 to Procedure.
- * kawa/lang/Record.java (typeFieldNames): Skip static fields.
- * kawa/standard/Scheme.java (env_formal, moduleFormals): Removed.
- * kawa/standard/apply.java: Handle full tailcall-elimination.
- * kawa/standard/{let.java,letrec.java}: Handle type specifiers.
- * kawa/standard/load.java: ModuleBody.run no longer takes
- Tue Feb 9 11:39:20 1999 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/standard/{string2symbol,symbol2string}.java: Replaced
- by Scheme code in ../lib/misc.scm.
- * kawa/standard/{sin,cos,tan}.java: Replaced by code in numbers.scm.
- * kawa/standard/Scheme.java: Update to get new implementations.
- * kawa/standard/Makefile.am: Updated for removed classes.
- Mon Feb 22 22:19:00 1999 Per Bothner <bothner@cygnus.com>
- * configure.in: Set version to 1.6.58.
- Update AM_EXEEXT -> AC_EXEEXT. Move AC_PROG_CC before AC_EXEEXT.
- * Makefile.am (kawa-compiled.zip): New rule.
- * **/Makefile.in: Re-generate using automake 1.4.
- * aclocal.m4: Re-generate using aclocal 1.4.
- * configure: Re-generate using autoconf 2.13.
- Fri Jan 1 22:13:41 1999 Per Bothner <bothner@Magnus.Cygnus.COM>
- * configure.in: Set version to 1.6.57.
- * Makefile.am, Makefile.in (install-javadoc-html): New rules.
- * kawa/Makefile.am (EXTRA_DIST): Add Version.java.in.
- * kawa/TelnetConnection.java: New class - for telnet connection.
- * kawa/TelnetInputStream.java: New class.
- * kawa/TelnetOutputStream.java: New class.
- * kawa/Telnet.java: New class - a mini-client for telnet.
- * kawa/kawa.c: New front-end driver for Kawa.
- * kawa/Makefile.am: Support building and installing kawa front-end.
- * kawa/Shell.java (socket): New field.
- (apply0): If socket field is non-NULL, close it on exit.
- * kawa/repl.java (serveTelnet): New method.
- (main): Support new flags --connect and --server.
- * configure.in: Support new --enable-kawa-frontend flag.
- * */Makefile.in: Re-generated.
- Wed Dec 23 15:10:03 1998 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/standard/object.java (rewrite): Handle field initialization.
- Set fields declarations to both redaable and writable.
- Tue Dec 15 18:35:44 1998 Per Bothner <bothner@cygnus.com>
- Moved Kawa source repository to sourceware.cygnus.com.
- * config.guess, config.sub, install-sh, missing, mkinstalldirs:
- Copied over scripts shared by most GNU programs.
- * Makefile.am (config,guess, config.sub, install-sh, mkinstalldirs):
- Removed no-longer needed rules.
- Tue Dec 15 10:31:38 1998 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/standard/object.java: Support field declarations,
- and put field declarations in scope of methods.
-
- Tue Nov 24 23:05:36 1998 Per Bothner <bothner@Magnus.Cygnus.COM>
- * configure.in: Set version to 1.6.56.
- * kawa/lang/PrimGetStatic.java (getReturnType): New method.
- * kawa/lang/PrimSetStatic.java (getReturnType): New method.
- * kawa/lang/PrimArrayNew.java (getReturnType): New method.
- * kawa/lang/PrimArrayGet.java (getReturnType): New method.
- * kawa/lang/PrimArraySet.java (getReturnType): New method.
- * kawa/lang/PrimArrayLength.java (getReturnType): New method.
- * kawa/lang/SetFieldProc.java (getReturnType): New method.
- * kawa/standard/convert.java (getInstance): New static method.
- * kawa/lang/GetFieldProc.java: (getReturnType): New method.
- Use RuntimeException instead of GenericError.
- * kawa/lang/Lambda.java (rewrite):
- Syntatic sugar: <TYPE> BODY --> (as <TYPE> BODY)
- * kawa/lang/Translator.java (mustCompileHere): Make public.
- * kawa/standard/Scheme.java: Use convert.getInstance().
- * kawa/standard/{convert.java,eq_p.java,instance.java,not.java,
- prim_throw.java} (getReturnType): New methods.
- * kawa/standard/object.java: New Syntax class.
- * kawa/standard/field.java: New Procedure2 class.
- * kawa/standard/static_field.java: New Procedure2 class.
- * kawa/standard/Scheme.java: Defined new procedures and syntax.
- * kawa/standard/Makefile.am (java_JAVA): Added new classes.
- Sun Nov 15 19:18:20 1998 Per Bothner <bothner@cygnus.com>
- * kawa/standard/ScmEnv.java: New Environment class.
- * kawa/standard/Makefile.{am,in} (java_JAVA): Add ScmEnv.java.
- * kawa/standard/Scheme.java (builtin): Create new ScmEnv.
- * kawa/lang/Record.java: Inherit from NameMap, not Procedure1.
- * Makefile.am, Makefile.in: Work-around for automake (dist) problem.
- Sat Oct 17 14:16:05 1998 Per Bothner <bothner@Magnus.Cygnus.COM>
- * kawa/standard/synchronizd.java: New Syntax.
- * kawa/standard/Makefile.{am,in} (java_JAVA): Add synchronizd.java.
- * kawa/standard/Makefile.in
- * kawa/standard/Scheme.java: Define synchronized syntax.
- * kawa/standard/not.java (compile): Use new emitNot interface.
- * kawa/lang/SpecialType.java (emitCoerceToObject): Update emitConvert.
- Fri Sep 11 22:29:26 1998 Per Bothner <bothner@cygnus.com>
- * kawa/repl.java (main): Handle new --debug-dump-zip option.
- * kawa/lang/CalledContinuation.java: Make fields public.
- * kawa/lang/Continuation.java (callcc): Replaced by callcc.apply.
- * kawa/standard/callcc.java (apply): New static method.
- * kawa/lang/Lambda.java: Don't add argsArray yet.
- Handle parameter type specification.
- * kawa/lang/PrimProcedure.java: Moved to gnu.expr.
- * kawa/lang/Makefile.in: Update accordingly.
- * kawa/lang/SpecialType.java (charValue): New method.
- * kawa/standard/Scheme.java (getNamedType, string2Type):
- Moved here from PrimProcedure.
- * kawa/standard/prim_method.java: Updated for moved methods.
- * kawa/standard/{car,cdr,cons,make_vector,callcc}.java:
- Add static apply methods.
- * kawa/standard/letrec.java (rewrite): Initial value is now null,
- because that is compatible with stricter typing scheme.
- * kawa/lang/Translator.java (rewrite_body): Ditto for internal define.
- * kawa/standard/{setcar_b,setcdr_b}.java: Removed, now in lists.scm.
- * kawa/standard/{string_ref,string_set_b}.java: Replaced.
- * kawa/standard/Makefile.am: Update accordingly.
- Sat Aug 29 20:50:05 1998 Per Bothner <bothner@cygnus.com>
- * kawa/standard/{plus_oper,minus_oper,multiply_oper,greater_oper}.java:
- Add static apply methods, to allow compiling direct calls.
- * kawa/lang/*.java: Do ClassType.make instead of new ClassType.
- * kawa/lang/AutoloadProcedure.java (getLoaded, numArgs): New methods.
- * kawa/lang/PrimProcedure.java (<init>): Set right opcode from method.
- * kawa/lang/Translator.java (rewrite_pair): Directly call static apply.
- Sat Aug 29 09:12:55 1998 Per Bothner <bothner@cygnus.com>
- * **/Makefile.in, configure, aclocal.m4: Re-generated.
- * kawa/Makefile.am (Version.java): Depend on configure.in.
- 1998-08-28 Per Bothner <bothner@cygnus.com>
- * configure.in (AC_CONFIG_AUX_DIR): Removed.
- Set version to 1.6.55.
- * install-sh, mkinstalldirs: Removed, now gotten from .. .
- * kawa/lang/Translator.java (resolve): Remove.
- * kawa.standard/location.java: New Syntax.
- * kawa/standard/Makefile.am, kawa/standard/Scheme.java: Update.
- * kawa/standard/{define.java,set_b}.java: Translator.resolve is now gone.
- Mon Aug 3 13:21:22 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/FString.java (hashCode): Fix typo: 32 -> 31.
- Fri Jul 24 16:05:10 1998 Per Bothner <bothner@cygnus.com>
- * kawa/standard/makeProcLocation.java: New helper class.
- * kawa/standard/Makefile.am (java_JAVA): Add makeProcLocation.java.
- * kawa/standard/Scheme.java: Define location and %makeProcLocation.
- * kawa/lang/FString.java (hashCode): New method.
- * kawa/lang/ScmRead.java (readSymbol): Allow :KEY as well as KEY:.
- Tue Jul 21 23:19:35 1998 Per Bothner <bothner@cygnus.com>
- * gnu/mapping, gnu/expr: New packages.
- * kawa/lang: Moved many classes from here to gnu.mapping or gnu.expr.
- * kawa/{,lang,standard}: Update import statements.
- * configure.in (AC_OUTPUT): Add gnu/{mapping,expr}/Makefile.
- * Makefile.am (install-html): Simplify to call gnu/Makefile.
- * kawa/lang/SchemeLoader.java:
- Moved to gnu/bytecode/ArrayClassLoader.java.
- * kawa/standard/Scheme (makeModuleExp): New function.
- * kawa/standard: Some functions moved to kawa.lib.
-
- * configure.in: Set version to 1.6.54.
- Sun Jun 28 23:07:49 1998 Per Bothner <bothner@cygnus.com>
- * configure.in: Set version to 1.6.53.
- (AC_OUTPUT): Add gnu/text/Makefile.
- * kawa/lang/ApplyExp.java (compile): Fix incorrect implementation
- of tail-recursion. Use CodeAttr.emitTailCall.
- * kawa/lang/LambdaExp.java (start_label): Removed - no longer needed.
- * kawa/lang/Compilation.java (addClass): Don't set lexp.start_label.
- * kawa/lang/Char.java: Add some extra named characters.
- (toScmReadableString): New method. May emit octal form.
- (print): Use toScmReadableString.
- * kawa/lang/FString.java (makeUpperCase, makeLowerCase,
- makeCapitalize): New methods.
- * kawa/lang/Special.java (dfault): New static.
- * kawa/lang/Keyword.java (searchForKeyword): If no match, return
- Special.dfault, not null, to allow #!null as a default.
- * kawa/lang/Compilation.java (addClass): Update for new default
- return value of searchForKeyword (Special.dfault).
-
- * kawa/lang/LambdaExp.java (<init>): Set file name.
- * kawa/lang/{Lexer.java, LineBufferedReader.java, SourceError.java,
- SyntaxException.java}: Moved to gnu.text package.
- * kawa/Shell.java, kawa/lang/{CompileFile,InPort,Interpreter}.java,
- kawa/standard/read.java: Update because of moved classes.
- * kawa/lang/{Makefile.am/Makefile.in}: Update accordingly.
- * kawa/lang/PairWithPosition.java (<init>): Use LineBufferedReader.
- * kawa/lang/ScmRead.java (readCharacter): Support octal notation.
- (readSpecial): Read #!default as Special.dfault.
- Add some casts to (InPort) to get readState. Yuck.
- * kawa/standard/LispFormat.java: New class - Common Lisp-style format.
- * kawa/standard/ObjectFormat.java: New - plain Object formatting.
- * kawa/standard/ParseFormat.java: New Procedure1.
- * kawa/standard/Makefile.am, Makefile.in: Update for new classes.
- * kawa/standard/Scheme.java: Update for new procedures.
- Sun May 24 13:13:52 1998 Per Bothner <bothner@cygnus.com>
- * configure.in: Set version to 1.6.52.
- Thu May 21 21:38:24 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/Lexer.java: New class (extends Reader).
- * kawa/lang/ScmRead.java: New class (extends Lexer).
- * kawa/lang/SourceError.java: New class.
- * kawa/lang/SyntaxException.java: New class (extends Exception).
- * kawa/lang/ReadError.java: No longer used.
- * kawa/lang/EofReadError.java: No longer used.
- * kawa/lang/InPort.java: Scheme reader methods now in ScmRead,
- * kawa/lang/Interpreter.java (read): New throws SyntaxException.
- * kawa/lang/Makefile.am: Update for new and removed classes.
- * kawa/standard/read.java: Update for new reader.
- * kawa/standard/string2number.java (parse): Update for new reader.
- Optimize - don't convert <string> to <String> to char[].
- * Shell.java: Changes for new Lexer framework.
- * */Makefile.in: Update for automake 1.3.
- * kawa/lang/LambdaExp.java (<init>): Handle #!null as default arg.
- * kawa/lang/CompileFile.java (readBody): New method.
- * kawa/lang/Eval.java (eval): Re-organize methods.
- (evalBody): New method. Save and restore current Environment.
- * kawa/lang/ModuleExp.java (eval_module): Rename to evalModule.
- * kawa/standard/Scheme.java (eval): Use Eval.readBody.
- * kawa/lang/PrimProcedure.java (getNamedType): Add <record>, <type>,
- and <class-type>.
- * kawa/lang/Record.java (makeRecordType): Return ClassType, not Class.
- (typeFieldNames): New overload taking ClassType.
- * kawa/lang/RecordConstructor.java (numArgs): New method.
- (applyN): Throw WrongArguments if wrong number of arguments.
- (getname): New method.
- (<init>): New constructor takes ClassType (overloaded with Class).
- * kawa/lang/SetFieldProc.java (<init>): Add overload taking ClassType.
- * kawa/lang/GetFieldProc.java: Likewise.
- Tue Apr 28 21:58:49 1998 Per Bothner <bothner@cygnus.com>
- * kawa/Makefile.am: Change AUTOMAKE_OPTIONS to cygnus.
- Mon Apr 27 00:03:51 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/LambdaExp.java (declareThis): New method.
- Make some fields public (for EcmaScript).
- * kawa/lang/SysInPort.java (fill): Work-around for NTEmacs shell mode.
- * kawa/lang/TtyInPort.java (tie): Make protected.
- * kawa/lang/InPort.java (readSchemeReal): Cleaner (and more
- portable I hope) handling of inexact zero denominator.
- Tue Apr 14 10:09:17 1998 Patrick Barta <patr@welchlink.welch.jhu.edu>
- * kawa/lang/InPort.java (readSchemeReal): Simplification that
- avoids javac (on NT) problem.
- Sat Apr 4 17:53:18 1998 Per Bothner <bothner@cygnus.com>
- * configure.in: Set version number to 1.6.51.
-
- * kawa/lang/Char.java (toString): New method.
- * kawa/lang/ConditionalTarget.java: New Target class.
- * kawa/lang/Compilation.java (compileConstant):
- Handle ConditionalTarget.
- * kawa/lang/QuoteExp.java (voidExp, trueExp): New statics.
- * kawa/lang/IfExp.java (compile): Re-write to use ConditionalTarget.
- * kawa/lang/TryExp.java (compile): Let CodeAttr handle saving result.
- * kawa/lang/Future.java (<init>): Initialize in, out, and err fields.
- (waitForResult): Simplify exception handling.
- * */Makefile.am: Re-write to compile all out-of-date *.java at once.
- Changes for gnu.ecmascript:
- * kawa/lang/LineBufferedReader.java (pos, limit, buffer): Make public.
- * kawa/lang/InPort.java (readOptionalExponent): Make public.
- * kawa/lang/EofReadError.java (<init>): Make public.
- * kawa/lang/Compilation.java (trueConstant, falseConstant): Likewise.
- * kawa/standard/{eq_p, not}.java: Inline; handle ConditionalTarget.
- * kawa/standard/Scheme.java (initScheme): Get 'and from kawa.lib.
- Added port-line, port-column, and set-port-line! (from Guile).
- * kawa/repl.java (main): Allow multiple source files after -C flag.
- * kawa/Version.java.in: Use VERSION instead of @VERSION@ as template.
- * kawa/Makefile.am (Version.java): New generated at build time.
- (EXTRA_DIST): Also distribute generated Version.java.
- * configure.in (AC_OUTPUT): Remove kawa/Version.java.
-
- Fri Mar 13 22:11:59 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/Target.java: New abstract class - represents the
- destination for the value of an Expression.
- * kawa/lang/{StackTarget.java,TailTarget.java,IgnoreTarget.java}:
- New classes that extend Target.
- * kawa/lang/Makefile.am: Update for new target classes.
- * kawa/lang/Expression.java (compile): Take Target instead of flags.
- (IGNORED, LAST): Removed flags.
- (compile_with_linenumber): Renamed to compileWithPosition; take Target.
- * kawa/lang/Compilation.java (compileConstant): New overload.
- * kawa/lang/{ApplyExp.java,BeginExp.java,CatchClause.java,
- Compilation.java,ErrorExp.java,GetFieldProc.java,IfExp.java,
- Inlineable.java,LambdaExp.java,LetExp.java,PrimArrayGet.java,
- PrimArrayLength.java,PrimArrayNew.java,PrimArraySet.java,
- PrimGetStatic.java,PrimProcedure.java,PrimSetStatic.java,QuoteExp.java,
- ReferenceExp.java,SetApplyExp.java,SetExp.java,SetFieldProc.java,
- TryExp.java} (compile): Update to take a Target.
- * kawa/standard/{convert.java,instance.java,prim_throw.java}: Likewise.
- Wed Mar 11 17:00:00 1998 Per Bothner <bothner@cygnus.com>
- Kawa version 1.6 released.
- Tue Mar 10 20:01:37 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/ApplyExp.java (getFunction): New method.
- * kawa/lang/PrimArrayNew.java (compile): Fix compile target type bug.
- * kawa/lang/PrimProcedure.java (applyN): Use coerced args values.
- * kawa/lang/PrimArraySet.java (compile): Convert value.
- * kawa/standard/Scheme.java (getTypeValue): New static method.
- (initScheme): Add "constant-fold", "system", and more. Minor fixes.
- * kawa/standard/Makefile.am: Update.
- * kawa/standard/constant_fold.java: New Syntax.
- * kawa/standard/{convert.java,instance.java}: Use Scheme.getTypeValue.
- Various small fixes and improvements.
- Mon Mar 9 17:53:33 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/SysInPort.java: New TtyInPort class.
- * kawa/lang/InPort.java (systemInPort, defaultInPort): Replace inp.
- (systemInPort): Is now a SysInPort, instead of TtyInPort.
- * kawa/lang/Makefile.am: Update accordingly.
- * kawa/lang/PairWithPosition.java: Line and column nums are 1-origin.
- * kawa/lang/PrimProcedure.java (compile): Renamed for gnu.bytecode.
- * kawa/lang/ReferenceExp.java (getName, getBinding): New methods.
- * kawa/lang/PrimArraySet.java (apply3): Convert value.
- * kawa/lang/SetFieldProc.java (apply2): Add type convertion.
- Tue Mar 3 11:51:08 1998 Per Bothner <bothner@cygnus.com>
- * configure.in (AC_OUTPUT): Generate kawa/Version.java.
- * kawa/{Makefile.am,kawa/Makefile.in}: Update to generate Version.java.
- * kawa/repl.java (main): Handle --version and --main.
- Moving definition of symbol-read-case to Scheme.java.
- * kawa/Version.java.in: New template used to generate Version.java.
- * kawa/lang/Compilation.java (generateMain, generateMainDefault): New.
- (addClass): Generate main method if generateMain is true.
- * kawa/lang/ModuleBody.java (runAsMain): New method.
- * kawa/lang/{ApplyExp.java,Compilation.java,Literal.java,
- ReferenceExp.java,SetApplyExp.java,SetExp.java,SyntaxRules.java,
- Vector.java}: Update for moved gnu.bytecode methods.
- * kawa/lang/{GetFieldProc.java,SetFieldProc.java}: Rewrite to
- work with ClassType (not just Class) and implement Inlineable.
- * kawa/lang/{PrimGetStatic.java,PrimSetStatic.java}: New Procedures.
- * kawa/lang/{PrimArrayGet.java,PrimArrayLength.java,
- PrimArrayNew.java,PrimArraySet.java}: New Inlineable Procedures.
- * kawa/lang/{Makefile.am,Makefile.in}: Update for new classes.
- * kawa/standard/Scheme.java: Add new methods from kawa.lib.reflection.
- * kawa/lang/LineBufferedReader.java (fill): Fix minor think-o.
- * kawa/lang/TtyInPort.java (fill): Likewise.
- Tue Feb 24 18:32:21 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/Keyword.java (getName): New method.
- * kawa/lang/HasSetter.java: New interface.
- * kawa/lang/Procedure.java (getSetter, set0, set1, setN): New methods.
- * kawa/lang/Compilation.java: Make various static values public.
- * kawa/lang/SetApplyExp.java: New Expression class.
- * kawa/lang/Setter.java: New class, extends ProcedureN.
- * kawa/lang/Setter0.java: New. A 0-argument (not counting RHS) Setter.
- * kawa/lang/Setter1.java: New. A 1-argument (not counting RHS) Setter.
- * kawa/lang/Makefile.am: Update for new classes.
- * kawa/lang/AutoloadProcedure.java (getSetter): New method.
- * kawa/standard/set_b.java (rewrite): Handle (set! (f . args) v).
- * kawa/lang/Record.java (apply): Added, since we extend Procedure1.
- (set1): Method added, as implementation of interface HasSetter.
- (print): Method added, overrides Procedure.print.
- * kawa/lang/Named.java (sym_name): Change from public to protected.
- * kawa/lang/Translator.java (rewrite): Don't check for <TYPE> here.
- * kawa/lang/ReferenceExp.java (lookup): New method, checks for
- <TYPE>, but only if otherwise not defined.
- (eval, compile): Use lookup to handle "<NAME>".
- * kawa/standard/car.java (set1): New, to implement HasSetter.
- * kawa/standard/cdr.java (set1): New, to implement HasSetter.
- * kawa/standard/cxr.java (set1): New, to implement HasSetter.
- * kawa/standard/setter.java: New Procedure1 class.
- * kawa/standard/make.java: New ProcedureN class.
- * kawa/standard/Makefile.am, kawa/standard/Scheme.java: Update.
- Thu Feb 19 18:36:18 1998 Per Bothner <bothner@cygnus.com>
- * Makefile.am, Makefile.in (kawa-@VERSION@-compiled.zip): Build
- archive from .class files in ".", not installed ones.
- * kawa/lang/InPort.java: New constructors controlling char conversion.
- (convertToReader, openFile): New static methods.
- (readChar, readString): Always convert CR and CRLF to LF.
- * kawa/lang/TtyInPort.java: Always convert CR and CRLF to LF.
- * kawa/standard/open_input_file.java: Simplify - logic
- for selection char encoding is now in InPort.openFile.
- * kawa/lang/CompileFile.java (read): Use new InPort.openFile method.
- * kawa/Shell.java (runFile): Likewise.
- * kawa/standard/call_with_input_file.java (apply2): Likewise.
- * kawa/standard/with_input_from_file.java: Likewise.
- * kawa/standard/load.java (loadSource, apply2): Likewise.
- Wed Feb 18 22:12:13 1998 Per Bothner <bothner@cygnus.com>
- * kawa/standard/open_input_file.java: If binary file, do setBuffer.
- Do setConvertCR(true) for text files.
- * kawa/lang/LineBufferedReader.java: Fix so line and column numbers
- will be correct for CRLF is seen, even if !getConvertCR().
- * kawa/lang/InPort.java (skipWhitespaceAndComments): '\r'
- terminates comments starting with ';'.
- * kawa/lang/FString.java (open): Return plain InPort (to match
- call-with-input-string in kawa.lib).
- * kawa/lang/CharArrayInPort.java (read): Remove bad optimization.
- * kawa/lang/PrimProcedure.java: Remove second <float> definition.
- Mon Feb 16 16:01:37 1998 Per Bothner <bothner@cygnus.com>
- * Makefile.am (EXTRA_DIST): Add Debian source package files.
- * kawa/standard/{call_with_input_string.java,input_port_p.java,
- kawa/standard/output_port_p.java}: Replaced by functions in kawa/lib.
- * kawa/standard/{Scheme.java,Makefile.am}: Update accordingly.
-
- * kawa/lang/PrimProcedure.java (string2Type): Check that name is
- valid Java class name only for not-yet-defined types.
- (getNamedType): Add input-port and output-port.
- * kawa/lang/Translator.java (rewrite): Don't call
- PrimProcedure.string2Type here - now handled by string2Type.
- * kawa/standard/prim_method.java (exp2Type): Likewise.
- * kawa/lang/LineBufferedReader.java: Re-write for increased
- performance, some extra features, and maybe some bug-fixes.
- (getConvertCR, setBuffer, skip_quick, unread_quick): New methods.
- (fill): New overrideable method, subsubmes readHook.
- (readHook): Removed.
- * kawa/lang/InPort.java: Efficiency improvements.
- (readDigits): New method.
- * kawa/lang/TtyInPort.java (fill): New method, replaces readHook.
- * kawa/lang/{CharArrayInPort.java,NullReader.java}: New classes.
- * kawa/lang/{Makefile.am,Makefile.in} (OBJ): Update for new classes.
- * kawa/lang/FString.java (open): New method.
- * kawa/standard/string2number.java (parse): Use CharArrayInPort.
- * kawa/standard/Scheme.java (eval): Likewise.
- * kawa/Shell.java (runString): Likewise.
- * kawa/standard/{convert.java,instance.java}: Fix error messages.
- Sun Feb 8 15:01:42 1998 Per Bothner <bothner@cygnus.com>
- * configure.in (VERSION): Set to 1.6.
- Fri Feb 6 17:17:17 1998 Per Bothner <bothner@cygnus.com>
- * */Makefile.am, */Makefile.in (javadir): Change from $(prefix)/java
- to $(datadir)/java. More compatible with GNU standards and Linux FHS.
- * kawa/Makefile.am (kawa#(BAT)): Update KAWALIB location accordingly.
- * kawa/Makefile.am (CLEANFILES): Use *.class instead of $(OBJ).
- * kawa/standard/Scheme.java: Add scheme-window procedure.
- * kawa/repl.java (main): Add -w flag (creates new GuiConsole).
- Tue Feb 3 12:57:50 1998 Per Bothner <bothner@cygnus.com>
- * configure.in, configure: Set version to 1.5.95.
- * kawa/GuiConsole.java (close): Make non-private.
- (Works around javac bug in some JDK versions.)
- * kawa/Shell.java: Better handling of WrongArguments.
- * kawa/repl.java (main): If compilation throws exception, print stack.
-
- * kawa/standard/{abs,angle,complex_p.denominator,exp,imag_part,log,
- magnitude,make_polar,make_rectangular,number_p,numerator,quantity_p,
- quotient,rational_p,real_p,real_part,remainder,zero_p}.java:
- Replaced by functions in lib.
- * kawa/standard.Scheme.java: Many functions moved to kawa.lib.numbers.
- * kawa/standard/Makefile.{am,in}: Update for removed files.
- * kawa/lang/PrimProcedure.java (getNamedType): Add more logical names.
- * kawa/standard/convert.java: New Procedure2 implements "as".
- * kawa/standard/instance.java: New Procedure2 implements "instance?".
- * kawa.standard/{char_p,vector_p}.java: Replaced by Scheme functions.
- * kawa/standard/Scheme.java: Update for new or moved procedures.
- (byteType ... charType): New Scheme-specific SpecialType Types.
- * kawa/standard/Makefile.am: Update accordingly.
-
- * kawa/lang/{AnyPat,ApplyExp,Char,Compilation,EqualPat,FString,IfExp,
- Keyword,LambdaExp,Literal,ListRepeatPat,Pair,PairPat,PrimProcedure,
- Record,ReferenceExp,SetExp,Special,SyntaxRule,SyntaxRules,Vector}.java:
- Update calls to gnu.bytecode methods (from compile_xxx to emitXxx).
- * kawa/lang/Char.java: Use Scheme.charType.
- * kawa/lang/ApplyExp.java (compile): Split off to new static function.
- * kawa/lang/CompileFile.java (read): Check if unmatched ')' follows.
- * kawa/lang/InPort.java (readListBody): Fix line-num off-by-one error.
- * kawa/lang/ReadError.java (construct_message): Likewise.
-
- * kawa/lang/QuoteExp.java (getValue): New final method.
- * kawa/lang/Translator.java (rewrite_pair): If functions is an
- Inlineable Procedure, check that the number of args is ok.
- (rewrite): Use string2Type instead of getNamedType.
- * kawa/lang/SpecialType.java: New class - extends PrimType.
- * kawa/lang/Makefile.am: Added SpecialType.class.
- * kawa/lang/Expression.java (compile(Compilation,int,Type)): No
- longer need special handling here for char and boolean primtive types.
- * kawa/lang/Named.java (getName): Make non-final.
- * kawa/lang/PrimProcedure.java (applyN): Make work.
- (getNamedType): Use new Scheme SpecialType objects.
- (getname): new overriding method.
- (compile): Can simplify, because of new SpecialType objects.
-
- * kawa/lang/WrongArguments.java (getMessage, constructor): New.
- (checkArgCount): New static method.
- Inherit from IllegalArgumentException, not RuntimeException.
- * kawa/lang/Procedure.java (numArgs): New virtual method.
- (minArgs, maxArgs): New final methods.
- (checkArgCount): New static method.
- * kawa/lang/{Procedure0,Procedure0or1,Procedure1,Procedure1or2,
- Procedure2,Procedure3,Procedure4}.java
- (numArgs): Add overriding method.
- (applyX): Remove unneeded throws specifications.
- (applyX): Use new WrongArguments constructor.
- * kawa/lang/Compilation.java: If compiling to a ProcedureN class,
- emit numArgs method, and call to cehckArgs.
- Tue Jan 27 12:02:33 1998 Per Bothner <bothner@cygnus.com>
- * configure.in (VERSION): Set to 1.5.94.
- Mon Jan 26 16:38:14 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/CatchClause.java: Fixes to get things working.
- (getNext, setNext, getBody, setBody): New methods.
- * kawa/lang/TryExp.java: More fixes.
- (getCatchClauses, setCatchClauses): New.
- * kawa/standard/prim_throw.java: New class implements primitive-throw.
- * kawa/standard/throw_name.java: New Procedure implements throw.
- * kawa/standard/try_catch.java: new syntax, implements try-catch.
- * kawa/standard/error.java: Removed class.
- * kawa/lang/Named.java (getName): New method.
- * kawa/standard/Scheme.java (define_proc): New method overload.
- (initScheme): Add new methods. Give name() to old ones.
- * kawa/{lang,standard}/Makefile.am: Update for new/removed classes.
-
- * kawa/lang/Inlineable.java: New interface.
- * kawa/lang/PrimApplyExp.java: Removed - subsumed by PrimProcedure.
- * kawa/lang/PrimProcedure.java: Implement Inlineable.
- (compile): New method, taken from PrimApplyExp.compile.
- * kawa/lang/ApplyExp.java (getArgs): New method.
- (compile): If a quoted Inlineable function, call its compile method.
- * kawa/lang/Translator.java (rewrite_pair): Check if func name is
- bound to an Inlineable proc; if so, wrap it in a QuoteExp.
- But we no longer need to handle PrimProcedure specially.
- * kawa/standard/prim_method.java (exp2Type): New method.
- (rewrite): Use exp2Type.
- * kawa/lang/NamedException.java: New class.
- * kawa/lang/PrimProcedure.java (getnamedType): Don't put
- predefined <TYPENAME>s in types; let rewrite handle it.
- * kawa/lang/Translator.java (rewrite): Handle generate <TYPENAME>.
- * kawa/lang/InPort.java (readListBody): Allow "(. x)", so change
- return type to Object instead of List.
- * kawa/lang/ModuleExp.java (constructor): Update for readListBody.
- * kawa/lang/CompileFile.java (read): Likewise.
-
- * kawa/lang/{WrongArguments.java,WrongType.java,UnboundSymbol.java,
- GenericError.java}: Inherit from RuntimeException.
- Sat Jan 24 14:31:52 1998 Per Bothner <bothner@cygnus.com>
- * kawa/MessageArea.java (endMark, length, out_stream): New fields.
- (enter): Don't pass KeyEvent, or do consume here.
- Better handling of various edits, including multi-line paste.
- (write): New method, body taken from TextAreaWriter.
- (deleteOldText): New method.
- (textValueChanged): New listener method.
- * kawa/GuiConsole.java (constructor): Create GuiInPort, not TtyInPort.
- (actionPerformed): Use MessageArea.deleteOldText.
- * kawa/GuiInPort.java: New class.
- * kawa/TextAreaWriter.java (write(String)): Call MessageArea.write.
- (write): Add cast from int to char. (Patch from Albert Ting.)
- * kawa/Makefile.am, kawa/Makefile.in (OBJ): Add GuiInPort.class.
- Tue Jan 20 10:28:24 1998 Alternator Petrofsky <albatros@wco.com>
- * kawa/lang/InPort.java (readState): Changed to StringBuffer.
- isDelimiter, readNestedComment, readVector): New functions
- (skipWhitespaceAndComments): Handle nested comments.
- (readListBody): Update. Use isDelimiter after dot.
- Wed Jan 21 12:37:10 1998 Per Bothner <bothner@cygnus.com>
- General cleanup of how Environments work, especially how they
- interact with Interpreters (i.e. Scheme) and Futures.
- * kawa/lang/Environment.java (global): New static.
- (getCurrent, setCurrrent): If current thread is not a Future,
- get/set global, rather than Scheme.env.
- * kawa/lang/Future.java: New constuctor, with given Environment.
- * kawa/lang/Interpreter.java (environ): Make protected.
- (getEnvironment, setEnvironment): New methods.
- (define, lookup): Moved here from kawa/standard/Scheme.java.
- * kawa/standard/Scheme.java (builtin): New static method.
- (curEnvironment, setEnvironment, makeEnvironment): Removed.
- (env): Removed static field.
- (initcheme): Use environ, in place of env.
- (constructor): Re-write more cleanly.
- * kawa/standard/user_env.java: Use Environment.user().
- * kawa/Shell.java (apply): Set and restore current Environment.
- * kawa/repl.java (main): Fix for new Scheme interface.
- * kawa/GuiConsole.java (constructor): Add new Scheme environment
- to Future (instead of creating a new one).
- (main): Update for new ENvironment conventions.
- * kawa/{Makefile.am,Makefile.in} (SECONDARY_OBJS):
- Remove GuiConsole$$_MenuAction.class.
- * kawa/TextAreaWriter.java (write(String)): New method.
- Insert at outputMark if writing to a MessageArea.
- * kawa/MessageArea.java (append): Remove.
- (enter): Nicer behavior.
- * kawa/GuiConsole.java: More menu actions. Various improvements.
-
- Mon Jan 19 14:44:09 1998 Per Bothner <bothner@cygnus.com>
- * configure.in: Set version to 1.5.93.
- * kawa/lang/Compilation.java (mangleClassName): Renamed to mangleName.
- * kawa/lang/LambdaExp.java: Update.
- * kawa/lang/Declaration.java (constructor): Set Variable.name to
- mangled name (with mangleName), while Declaration.sym is source name.
- * kawa/Shell.java: Extend Procedure0, so it can be passed to Future.
- Add contsructur, various fields, and make methods non-static.
- Remove code now in Scheme (read and print methods).
- (run, runString) Take Interpreter arguemnts, not Environment.
- * kawa/repl.java: Update for new Shell.run interfaces.
- * kawa/{TextAreaWriter.java,GuiConsole.java,MessageArea.java}:
- New classes, for making a Frame with a repl.
- * kawa/Makefile.am: Add new classes.
-
- * kawa/standard/load.java (loadSource): Update for new Shell.run.
- * kawa/lang/Interpreter.java (read, print): New abstract methods.
- * kawa/standard/Scheme.java (read, print): New methods.
- (Scheme): Support multiple instances and environments.
- (initScheme): New method, created from Scheme constructor.
- Add port-char-encoding, copy-file, input-port-read-state.
- * kawa/lang/Expression.java (eval): Make non-abstract. Throw error.
- * kawa/lang/LetExp.java (eval): Remove.
- * kawa/lang/LineBufferedReader.java (convertCR) New field.
- (setConvertCR): New method.
- (read): Only squash CR and CRLF to LF if convertCR.
- * kawa/standard/{open_input_file.java,open_output_file.java}:
- Use port-char-encoding to select char conversion and text vs binary.
- * kawa/lang/OutPort.java (outDefault, setOutDefault, errDefault,
- setErrDefault): Get/set thread-local port (in current Future).
- * kawa/lang/InPort.java (inDefault, setInDefault): Likewise.
- * kawa/lang/QueueReader.java: New class.
- * kawa/lang/TryExp.java: Add code to implement try-catch.
- * kawa/lang/CatchClause.java: New class, for try-catch catch clause.
- * kawa/lang/Makefile.am: Add QueueReader and CatchClause.
- * kawa/lang/PrimProcedure.java (toString): Added.
- (member): New field.
- (applyN): Implement (partially) using reflection.
- Thu Jan 15 13:03:02 1998 Per Bothner <bothner@cygnus.com>
- * kawa/lang/InPort.java (readState): New field.
- (getReadState): New method. (Used by input-port-read-state.)
- (readList, readSchemeObject): Set and restore readState.
- Sat Jan 10 13:42:48 1998 Alcibiades Petrofsky <albatros@wco.com>
- * kawa/lang/Continuation.java: Support multi-value continuation.
- Support full R4RS number syntax, including polar, plus infinity/NaN.
- * kawa/lang/InPort.java (readSchemeComplex): New method.
- (readSchemeNumber, readSchemeReal): Re-write.
- * kawa/standard/string2number.java: Update.
- Sun Dec 14 22:42:44 1997 Per Bothner <bothner@cygnus.com>
- * configure.in: Set version to 1.5.92.
- * kawa/repl.java: Define new variable symbol-read-case.
- * kawa/lang/InPort.java (getReadCase): New function.
- (readSymbol): Check value of getReadCase.
- * kawa/langEnvironment.java (user): Now just returns value of current.
-
- Sun Dec 14 16:12:19 1997 Per Bothner <bothner@cygnus.com>
- * kawa/lang/*.java: More updates for gnu.bytecode changes.
- * kawa/lang/Compilation.java (addClass): Fix type of "this".
- * kawa/lang/Environment.java (current): Renamed to getCurrent.
- (setCurrent): New method.
- Various fixes to support per-thread environments.
- * kawa/lang/ModuleExp.java (eval_module): Set and restore
- current Environment if we must compile.
- * kawa/lang/Expression.java (getType): New method.
- * kawa/lang/TryExp.java: New class, for try-finally expressions.
- * kawa/lang/Makefile.am: Add TryExp.
- * kawa/standard/Scheme.java (setEnvironment): New method.
- (Scheme): Define dynamic-wind and fluid-let.
- * kawa/standard/try_finally.java: New class which extends Syntax.
- * kawa/standard/Makefile.am: Added try_finally.
- * kawa/standard/load.java (loadCompiled): Update ZipLoaded constuctor.
- Thu Nov 27 21:42:08 1997 Per Bothner <bothner@cygnus.com>
- * kawa/lang/*.java: Update for gnu.bytecode changes.
- (Mostly change Method.compile_xxx to CodeAttr.emitXxx.)
- * kawa/repl.java (checkInitFile): Fix thinko (sense of test).
- On non-Unix-like system, read kawarc.scm instead of .kawarc.scm.
- Wed Nov 12 22:25:56 1997 Per Bothner <bothner@cygnus.com>
- * kawa/lang/ApplyExp.java (compile): Fix typo.
- Sat Nov 1 23:30:16 1997 Per Bothner <bothner@cygnus.com>
- * configure.in: Change version to 1.5.91.
- * */Makefile.am: Add JCFLAGS.
- * configure.in, */Makefile.am: Remove --with-jdk11 flag, and stuff
- that depends on it Make the reflection stuff non-optional.
-
- * kawa/lang/Compilation.java (addClass): Generate literals in
- <clinit>, not <init>.
- * kawa/stadard/Scheme.java: Add environment-bound? and
- scheme-implementation-version from kawa.lib.misc.
- * kawa/lang/Compilation.java (compileConstant):
- Inlined call to Literal.compile.
- If value is String, just compile_push_string (if !immediate).
- (addClass): Call method.initCode() - gnu.bytecode changed.
- * kawa/lang/Literal.java (compile): Removed.
- (emit): Handle Strings to always use CONSTANT_String.
- * kawa/lang/LambdaExp.java (compile): Set type of this.
- * kawa/lang/SchemeLoader.java (loadClass): Add extra name arg to
- defineClass call, to match new JDK1.1 non-deprecated interface.
- Fri Sep 26 21:34:39 1997 Per Bothner <bothner@cygnus.com>
- * kawa/lang/Symbol: This is now a helper class, with no instances.
- Scheme symbols are now represented by java.lang.String objects.
- All methods are static. Also, add some debugging utilities.
- * kawa/lang/Interpreter.java (trueObject, falseObject):
- Use Boolean.TRUE and Boolean.FALSE.
- * kawa/lang/PrimProcedure.java: Update <symbol> to String.
- Add <function>.
- * kawa/*/*.java: Change Symbol parameters and variables to String.
- Remove duplicates methods. Replace Symbol.make("xxx") by plain "xxx".
- * kawa/lang/Compilation.java: Update replacing Symbol by String.
- * kawa/lang/Environment.java (remove(Binding)): Fix bug when chained.
- (remove(String), remove(Object)): New overloaded methods.
- * kawa/lang/SyntaxRule.java (indexOf): New method.
- * kawa/lang/Translator.java (syntaxError): Use OutPort.errDefault()
- instead of System.err.
- (current_decls): Change from Hashtable to Environment.
- * kawa/standard/{substring,string_copy,string_fill_b}.java:
- Removed. Replaced by kawa/lib/strings.scm.
- * kawa/standard/Makefile.am: Removed old classes.
- * kawa/standard/Scheme.java: Update for new string and symbol code.
- * kawa/standard/real_part.java: Fix thinko.
- * kawa/lang/FString.java (fill): New method.
- * kawa/lang/ApplyExp.java (compile): Remove unused variable func_name.
- * kawa/lang/Nameable.java: Removed - not used.
- * kawa/lang/OutPort.java (errInitial): Set autoflush.
- (outInitial): Initialize using System.out, not System.err.
- (setLogFile, closeLogFile): New methods.
- * ALL/Makefile.in: Re-generate using automake 1.2.
- Wed Jul 2 16:26:35 1997 Per Bothner <bothner@cygnus.com>
- * kawa/lang/*: Change representation of (interned) Scheme symbols
- to interned java.lang.String.
- * kawa/standard/*, kawa/Shell.java: Likewise.
- * kawa/lang/Interpreter.java (falseObject, trueObject):
- Use Boolean.FALSE and Boolean.TRUE. Make static fields final.
- Sun Jun 22 14:07:48 1997 Per Bothner <bothner@cygnus.com>
- Use JDK1.1 I/O characters-oriented Reader/Writer classes.
- * kawa/lang/*.java (print): Update .PrintStream -> PrintWriter.
- Update FileInputStream -> FileReader.
- * kawa/standard/*.java (print): Likewise.
- * kawa/lang/LineBufferedReader.java: New class extends FilterReader.
- * kawa/lang/InPort.java: Much functionality now in LineBufferedReader.
- Use read instead of readChar.
- * kawa/lang/LogWriter.java: New class - extends FilterWriter.
- * kawa/lang/Compilation.java (compileConstant): Handle null.
- * kawa/lang/TtyInPort.java: New class extends InPort.
- * kawa/lang/OutPort.java: Now inherits from PrintWriter.
- * kawa/lang/SFormat.java: Substantial re-write.
- * kawa/lang/PrimProcedure.java (getNamedType): New worker function
- for string2Type. Support RScheme/Dylan-style names (e.g. <symbol>).
- * kawa/lang/Translator.java: Recognize <symbol> etc.
- * kawa/standard/Scheme.java: Add new procedures.
- * kawa/standard/call_with_input_string.java: Can now simplify.
- * kawa/standard/call_with_input_string.java: Can now simplify.
- * kawa/standard/call_with_output_string.java: Likewise.
- * kawa/standard/char_ready_p.java: Handle both Reader and InputStream.
- * kawa/standard/readchar.java: Likewise.
- * kawa/Shell.java (run): New (overloaded) method.
- Re-write to new I/O implementation. (Prompt handled by Reader itself.)
- * kawa/repl.java: Re-write for new I/O.
- Thu May 29 14:34:45 1997 Per Bothner <bothner@cygnus.com>
- * kawa/standard/apply.java (applyN): Generalize to general sequences.
- * kawa/standard/load.java. Fix thinko. (Reported by Jay Krell.)
- * kawa/lang/PrimProcedure.java (string2Type): Handle array types.
- * kawa/lang/PrimApplyExp.java (compile): Allow array return type.
- Mon May 26 12:11:52 1997 Per Bothner <bothner@deneb.cygnus.com>
- * configure.in, configure (VERSION): Set to 1.5.
- * **/Makefile.{am,in}: Use CPASSPATH environment variable (which
- add to standard path), instead of -classpath (which replaces).
- * kawa/standard/load.java (loadSource): Do fstream.close when done.
- (apply2): Fix filenames.
- * kawa/standard/Scheme.java: Add new functions from lib/files.scm.
- * kawa/repl.java: Add support for home-directory, and reading
- init file from ~/.kawarc.scm.
- Tue May 20 22:13:25 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/InPort.java (readOptionalExponent); Handle sign.
- (readSchemeNumber): Update Complex.imOne use from field to method.
- Wed May 7 12:26:28 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/InPort.java: Fix some problems in reading numbers.
- Tue Apr 1 18:55:47 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Compilation.java (mangleClassName): Mangle common Scheme
- identifier chars more legibly.
- (generateClassName): Except for the mainClass, use mainClass+'$'
- as classPrefix, a la JDK 1.1 Inner Classes.
- * kawa/standard/{cons,append,vector_v,vector_append}.java:
- Add import java.lang.Error to work around case-fold bug in
- JDK 1.0.2 in NT.
- Mon Mar 31 16:56:50 1997 Per Bothner <bothner@deneb.cygnus.com>
- * configure.in (VERSION): Change to 1.4.
- Move kawa.math to gnu.math.
- Update kawa.math -> gnu.math various places.
- * kawa/Makefile.{am,in} (SUBDIRS): Remove math.
- Tue Mar 25 15:27:34 1997 Per Bothner <bothner@kalessin.cygnus.com>
- Move codegen to gnu/bytecode.
- Update for moved package codegen -> gnu.bytecode and new method names.
- * kawa/lang/Symbol.java (gentemp): New method.
- * kawa/lang/DefMacro.java, kawa/lang/Makefile.am: New Syntax class.
- * kawa/lang/Lambda.java: Handle syntax errors better.
- * kawa/standard/Scheme.java: Update for lib/syntax.scm additions.
- Wed Mar 19 11:08:04 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/Shell.java (run): Don't special case #!null result.
- * kawa/lang/PrimProcedure.java (<init>): If opcode is invokeinterface,
- make classtype an interface.
- Tue Mar 18 14:03:58 1997 Per Bothner <bothner@deneb.cygnus.com>
- * configure.in, configure: Change VERSION to 1.3beta.
- * kawa/lang/AutuloadSyntax.java (load): Make more robust.
- * kawa/standard/{greater_oper,greaterequal_oper,less_oper,
- lessequal_oper}.java: Generalize from RealNum to Numeric.
- * kawa/standard/equal_oper.java: Use Numeric.compare, not equals.
- * kawa/standard/Scheme.java (define-unit): Fix location.
- Mon Mar 17 17:20:20 1997 Per Bothner <bothner@deneb.cygnus.com>
- * configure.in: Add --with-jdk11 option. Add new substitution
- variables JAVA, JAVAC, EXTRA_OBJ, EXTR_MISC, JAVA_VERSION.
- * kawa/lang/{PrimProcedure,PrimApplyExp}.java: Generalize, for the
- sake of primitive-constructor and primitive-interface-method.
- * kawa/standard/prim_method.java: Likewise.
- * kawa/lang/Keyword.java: New class, for keyword values.
- * kawa/lang/Special.java: New class, for special values.
- * kawa/lang/Symbol.java: Add new static print method overloading.
- * kawa/lang/Sequence.java (eofValue): Re-initialize as Special.eof.
- * kawa/lang/Values.java (empty): New static field, for #!void.
- (print): If printing Values.empty, print as #!void.
- (make): If no values, return Values.empty.
- * kawa/lang/Interpreter (voidObject): Redefine as Values.empty.
- (nullObject): Removed.
- * kawa/lang/*.java: Update Interpreter.nullObject -> List.Empty.
- * kawa/standard/{string2list,vector2list}.java: Likewise.
- * kawa/lang/Translator.java (rewrite): Treat null as any other
- literal value. (Needed to make #!null work.)
- * kawa/lang/Char.java (charNames): Make array of String, not Symbol.
- * kawa/lang/InPort.java (readSymbol): Modify to recognize keywords.
- (readSpecial): New function.
- (readCharacter): Assume charNames is String array.
- * kawa/lang/SFormat.java (print): Print null as #!null.
- Remove special handling for StringBuffer (no longer used for strings).
-
- * kawa/lang/LambdaExp.java: Support more general formal parameter
- list (with DSSSL-inspired #!optional, #!rest or #!keyword).
- * kawa/lang/Compilation.java (addClass(LambdaExp,String)): Likewise.
- * kawa/lang/{GetFieldProc,SetFieldProc,Record,RecordConstructor}.java:
- New classes for record feature.
- * kawa/lang/Makefile.{am,in}: Update accordingly.
-
- * kawa/lang/{FString,Literal,SyntaxRule,SyntaxRules,Vector}.java:
- Update for renamed compile_invoke_nonvirtual -> compile_invoke_special.
- * kawa/langFString.java (print): If !readable, just call
- PrintStream.print (to get better autoflush behavior).
- * kawa/lang/WrongArguments.java: Simplify, make more robust.
- * kawa/lang/QuoteExp.java (falseExp): New static field.
- * kawa/standard/ifp.java: Make default else value be #!void.
- * kawa/standard/{eof_object_p,exit,make_string,newline,
- string_length}.java: Removed - replaced by precedures in ../lib.
- * kawa/standard/error.java: New procedure (from DSSSL).
- * kawa/standard/Scheme.java: Update for new and moved procedures.
- * kawa/standard/Makefile.{am,in}: Likewise update.
- * kawa/standard/values_v.java: Use Values.make.
-
- Sat Mar 8 11:00:24 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/LambdaExp.java (hasNestedScopes): Removed. Replaced by:
- * kawa/lang/ModuleExp.java (mustCompile): New field.
- (eval_module): Test mustCompile instead of hasNestedScopes.
- * kawa/lang/Translator.java (mustCompileHere): New method.
- (rewrite_pair): If we create a PrimApplyExp, call mustCompileHere.
- * kawa/lang/ScopeExp.java (push): Re-implement - use mustCompileHere.
- * kawa/standard/Scheme.java: Add define-unit.
- Mon Mar 3 13:24:01 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/SetExp.java: Add extra casts for multiple static links.
- Tue Feb 11 20:06:49 1997 Per Bothner <bothner@deneb.cygnus.com>
- * configure.in (VERSION): Set to 1.2.
- * Makefile.am (kawa-@VERSION@-compiled.zip): New rule.
- Tue Feb 4 22:16:51 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Expression.java (Compile with Type): Cast to
- boolean_type such that result is false iff arg is #f.
- * kawa/lang/PrimProcedure.java (getStaticFlag, getParameterTypes): New.
- * kawa/lang/Translator.java (rewrite_pair): Use new methods
- (and don't crash on primitive-op1).
- Mon Feb 3 17:05:29 1997 Per Bothner <bothner@kalessin.cygnus.com>
- * configure.in (VERSION): Set to 1.2 beta.
- * kawa/repl.java: Merge in kawac features.
- * kawac.java: Remove - no longer needed.
- * Makefile.am: Simplify, since we no longer have any .java files here.
- * kawa/Makefilea.am: Make all-recursive depend on repl.class.
- * kawa/lang/Future.java (toString): New.
- * kawa/lang/Translator.java (rewrite_pair): Look for PrimProcedure.
- * kawa/lang/PrimApplyExp.java, kawa/lang/PrimProcedure.java,
- kawa/standard/prim_method.java: New classes.
- * kawa/lang/Char.java (makeCharMethod): Make public.
- (charValueMethod, initMakeMethods): New methods.
- * kawa/lang/Expression.java (compile): New overload - takes Type.
- * kawa/Shell.java (run): Make prompt arg be String, not boolean.
- * kawa/{Shell,repl}.java, kawa/standard/load.java: Update callers.
- * kawa/standard/{char2integer,char_downcase,char_lower_case_p,
- char_numeric_p,char_upcase,char_upper_case_p,char_whitespace_p,
- integer2char}.java: Removed. Superceded by ../lib/characters.scm.
- * kawa/standard/{list2vector,vector_length,vector_ref,
- vector_set_b,vector_v}.java: Superceded by ../lib/vectors.scm.
- * kawa/standard/Scheme.java: Update for new and moved methods.
- * kawa/standard/Makefile.am: Update - mostly removed classes.
- * kawa/standard/negative_p.java: Use isNegative rather than sign.
- Sat Jan 25 12:00:08 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa.java: Moved to kawa/repl.java.
- * doc: New directory. Moved documentation there.
- * Makefile.am, kawa/Makefile.am: Updated.
- * kawa/Makefile.am: Create kawa shell-script.
- * */Makefile.in: Update, using new automake version.
- * kawa/lang/Eval.java (eval): Change back to public.
- * kawa/standard/Scheme.java (eval): Update to changed Eval.eval.
-
- * kawa/lang/Translator.java (check_if_syntax, scan_body): New methods.
- (rewrite_body): Re-write to handle internal definitions.
- * kawa/standard/Scheme.java (beginSyntax, defineSyntax): New statics.
- * kawa/standard/define.java (rewrite): Re-structure, and
- handled internal definition as a set!.
- * kawa/lang/SyntaxRule.java (execute_template): Don't fully rewrite.
- * kawa/lang/SyntaxRules.java (rewrite1): New method.
- * kawa/lang/ScopeExp.java (countDecls): New method.
- * kawa/standard/define_syntax.java: Add rules to translation
- environment, so macro will work when compiling.
- * kawa/standard/load.java (loadSource): Evaluate expressions
- one by one, so macros will work.
- * kawa/lang/Eval.java (eval): Make private and add argument.
- * kawa/lang/Translator.java (currentScope, addGlobal): New methods.
- Tue Jan 21 18:12:53 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/standard/{make_polar,angle}.java: New Procedures.
- * kawa/standard/Makefile.{am,in}: Add make_polar and angle.
- * kawa/standard/Scheme.java: Liekwise. Add magnitude as abs synonym.
- * kawa/standard/{exp,expt,,log,sqrt}.java: Re-implement.
- * kawa/lang/Pattern.java (match): Change return type to boolean.
- * kawa/lang/{AnyPat,EqualPat,ListPat,ListRepeatPat,PairPat,
- VarListPat}.java (match): Update return type and value.
- * kawa/lang/PairPat.java (car_count, cdr_count): New fields.
- * kawa/lang/SyntaxRules.java (rewrite): Change call to match.
-
- Mon Jan 20 16:23:28 1997 Per Bothner <bothner@kalessin.cygnus.com>
- * kawa/lang/Compilation.java: Add new addClass overloading,
- based on the code from compilefunc.compile.
- * kawa/lang/LambdaExp.java: Use Compilation.addClass.
- * kawa/lang/compilefunc.java: No longer needed.
- * kawa/standard/callcc.java: Remove redundant cast.
- * kawa/lang/Future.java: New class.
- * kawa/standard/force.java: Handle Future as well as Promise.
- * kawa/standard/{make_future,sleep}.java: New procedures.
- * kawa/standard/Scheme,java: Add future, %make-future. and sleep.
- * kawa/{lang,standard}/Makefile.{am,in}: Update as needed.
- * kawa/lang/InPort.java (readSchemeReal): Only recognize
- exponent marker as such if followed by '+', '-', or digit.
- Sun Jan 5 19:18:27 1997 Per Bothner <bothner@deneb.cygnus.com>
- Create new Translator class from the rewrite-related methods and data
- in Interpreter, and create new Translator for each top-level ModuleExp.
- * kawa/lang/CompileFile.java (compile_to_files): Return true
- if syntax errors seen.
- * kawa/lang/Translator.java: New class, comtaining non-static data
- and rewrite-related methods from Interpreter.
- * kawa/lang/Environment.java (lookup_global,define_global):
- Moved here from Interpreter.
- * kawa/lang/Compilation.java (lookupGlobalMethod, defineGlobalMethod):
- Update accordingly.
- * kawa/lang/Interpreter.java: Only static fields and boolObject remain.
- * kawa/lang/LambdaExp (eval_module): Moved to ModuleExp.
- * kawa/lang/ModuleExp.java (constructor): Take extra filename arg.
- * kawa/lang/{AutoloadProcedure,AutoloadSyntax,CompileFile,Declaration,
- Eval,Expression,LambdaExp,Quote,ScopeExp,Syntax,SyntaxRule,SyntaxRules}
- .java, kawa/standard/{and_or,begin,define,define_syntax,ifp,let,letrec,
- load,quasiquote,set_b,syntax_error}.java, kawa/Shell.java:
- Update Interpreter -> Translator.
- Update statics in Interpreter to Scheme.
- * kawa.java, kawac.java: Update.
- * kawa/standard/Scheme.java (makeEnvironment): New function.
- (define,lookup,env): Moved from Interpreter.
- Fri Jan 3 17:35:43 1997 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/ModuleExp.java: New class.
- * kawa/lang/Makefile.{am,in}: Update accordingly.
- * kawa/lang/ModuleBody.java (env_formal, formals): Moved to ModuleExp.
- * kawa/lang/LambdaExp.java (is_module_body): Field removed.
- (isModuleBody): Reimplement as instanceof ModuleExp.
- (setModuleBody): Removed.
- (constructors): Remove one, simplify another.
- * kawa/lang/{CompileFile,Eval}.java: Create ModuleExp, not LambdaExp.
- * kawa/Shell.java (run): Likewise.
-
- * kawa/lang/InPort.java (readSchemeReal): New.
- (readSchemeNumber): Re-write. Add support for complex and units.
- (readAlphaWord, readOptionalExponent): New helper methods.
- * kawa/standard/equal_oper.java: Just use equals method.
- * kawa/standard/expt.java: Use new Numeric.power(IntNum) virtual.
- * kawa/standard/integer_p.java: Handle integral DFloNum.
- * kawa/standard/{complex_p,imag_part,make_quantity,make_rectangular,
- quantity2number,quantity2unit,quantity_p,real_part}.java: New.
- * kawa/standard/{Makefile.{am,in},Scheme.java}: Update accordingly.
- Sun Dec 15 22:29:30 1996 Per Bothner <bothner@deneb.cygnus.com>
- * configure, configure.in: Support new testsuite directory.
- * Makefile.{am,in} (SUBDIRS): Add new testsuite directory.
- * kawa/standard/{ceiling,floor,round,truncate}.java: Use new
- RealNum.toInt virtual method.
- * kawa/standard/inexact2exact.java: Use new RealNum.toExact.
- * kawa/standard/rationalize.java: New procedure.
- * kawa/standard/{Makefile.{am,in},Scheme.java}: Update accordingly.
- Fri Dec 13 15:57:47 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Environment.java (define): New overloaded method.
- * kawa/lang/Interpreter.java (rewrite_body): Use List.list_length.
- * kawa/lang/InPort.java (read): Catch IOException from in.available.
- (Needed on some Java implementations.)
- (readSymbol, readSchemeNumber, readSchemeObject): Provide and use
- overloaded versions that are passed next character, avoiding backup.
- (readString): Handle C-style and Java-style escapes.
- (readListBody): New, re-written from readList, with new interface.
- * kawa/lang/CompileFile.java (read): Use InPort.readListBody.
- * kawa/lang/LambdaExp.java: New constructor for ModuleBody,
- * kawa/lang/Eval.java (eval): New overloaded versions.
- * kawa/standard/{bit_extract.logand,logbit_p,logcount,logior,lognot,
- logop,logtest,logxor}.java: New procedures.
- * kawa/standard/{Makefile.am,Makefile.in,Scheme.java}: Update.
- * kawa/standard/expt.java: Simplify - use RatNum.power.
- * kawa/standard/eqv_p.java (eqv_p): Rename to isEqv.
- * kawa/standard/exact2inexact.java: Use RealNum.doubleValue,
- Sun Nov 24 13:04:49 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/SFormat.java: New class.
- * kawa/lang/print.java: Moved print to SFormat. Removed.
- * kawa/lang/Makefile.{am,in}: Update accordingly.
- * kawa/lang/{Equalpat,LambdaExp,ListRepeatPat,OutPort,Pair,PairPat,
- Promise,QuoteExp,ReferenceExp,SetExp,SyntaxRule,SyntaxRules,Values,
- Vector}.java, kawa/Shell.java: Replace print.print by SFormat.print.
- Wed Nov 20 23:02:32 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/InPort.java (available): Handle IOException.
- * kawa/lang/InPort.java (readSchemeNumber): Handle fraction.
-
- * kawa/standard/int_length.java: New procedure and class.
- * kawa/standard/length.java: Remove length method (using
- method with same name as class confuses J++).
- * kawa/lang/Interpreter.java: Change length.length to List.length.
- * kawa/standard/{apply,length,let,letrec}.java: Likewise.
- * kawa/standard/values.java: Rename to values_v to avoid case problem.
- * kawa/standard/{Scheme.java,Makefile.{am,in}}: Update.
- Sat Nov 16 15:08:42 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/compilefunc.java (compile): Only compile_return
- if reachableHere ().
- * kawa/lang/IfExp.java (compile): Use new Method methods for
- IfState: compile_ifneq, compile_else, compile_fi.
- Mon Nov 4 16:07:08 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/standard/{eq_p,eqv_p,equal_p,list_p,symbol2string}.java:
- Remove redundant name qualification (which J++ complains about).
- Remove constructors. Generally remove verbosity.
- * kawa/standard/equal_p.java (equal_p): Remove.
- (J++ thinks static method is constructor.)
- * kawa/standard/Scheme.java: Don't depend on eq_p.name etc.
- * kawa/lang/EqualPat.java (match): Remove use of equal_p.equal_p.
- Thu Oct 24 12:39:52 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/standard/list.java: Renamed to list_v to avoid problems
- on case-insenstive filesystems.
- * kawa/standard/{Scheme.java,Makefile.{am,in}}: Update accordingly.
- Tue Oct 22 23:14:49 1996 Per Bothner <bothner@deneb.cygnus.com>
- * configure.in (VERSION): Set to 1.1alpha.
- * kawa/standard/letstar.java: Removed.
- * kawa/standard/Scheme.java: Update syntax class names.
- * kawa/standard/Makefile.{am,in}: Update accordingly.
- Mon Oct 21 12:58:17 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/Shell.java (runFile): Re-write to call load.loadSource.
- This forces compilation, which has better line number support.
- Also rmeoved unused formal parameters.
- * kawa.java: Update for new Shell.runFile calling convention.
- * kawa/standard/Scheme.java: Update string -> string_v.
- * kawa/lang/FString.java: New file. Replaces uses of StringBuffer.
- * kawa/lang/Makefile.{am,in}: Add FString.class.
- * kawa/lang/InPort.java (readString): Return FString not StringBuffer.
- * kawa/lang/Literal.java (emit): Remove StringBuffer support.
- * kawa/lang/Compilation.java: Likewise.
- * kawa/lang/Sequence.java (eofValue): New static.
- * kawa/lang/Interpreter.java (eofObject): Removed.
- * kawa/lang/Compilation.java (scmSequenceType): Added.
- * kawa/lang/Compilation.java (mangleClassName): Handle general Unicode.
-
- * kawa/Shell.java, kawa/lang/{CompileFile,InPort}.java,
- kawa/standard/{eof_object_p,load,readchar}.java:
- Update Interpreter.eofObject -> Sequence.eofValue.
- * kawa/standard/{string_ci_equal_p,string_ci_greaterequal_p,
- string_ci_greaterthan_p,string_ci_lessequal_p,string_ci_lessthan_p,
- string_copy,string_equal_p,string_greaterequal_p,string_greaterthan_p,
- string_lessequal_p,string_lessthan_p,with_input_from_file,
- with_output_to_file}.java: Remove StringBuffer coercion.
- This makes the code more general, efficient, and handles FString.
- * kawa/standard/{call_with_input_file,call_with_output_file,
- call_with_output_string,list2string,make_string,number2string,
- open_input_file,open_output_file,string2list,string2symbol,
- string_append,string_fill_b,string_length,string_p,string_ref,
- string_set_b,string_v,substring,symbol2string}.java:
- Update from StringBuffer to FString for Scheme string values.
- * kawa/lang/CompileFile.java: Likewise.
- Fri Oct 18 14:06:40 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Environment.java: Rewrite.
- Remove stuff for lexical scopes.
- Make into first-class object like Dictionary, but with "inheritance."
- * kawa/lang/{Binding,Location}.java: New classes.
- * kawa/lang/Declaration.java (getvalue, getframe, setvalue):
- Remove - eval no longer deal with lexical scoping.
- * kawa/lang/LambdaExp.java (hasNestedScopes): New field.
- (compile_setLiterals): No longer needs to worry about a static
- link in outer-most lambda from evaluated LetExp.
- * kawa/lang/LetExp.java (eval): Just throw exception.
- * kawa/lang/SetExp.java (eval): Now only handle top-level names.
- * kawa/lang/ScopeExp.java (eval): Likewise.
- * kawa/lang/ReferenceExp.java (eval): Likewise.
- (compile_load): Use recursive compile_load for staticLink.
- * kawa/lang/ModuleBody.java: New abstract interface, using run.
- * kawa/lang/LambdaExp.java (<init>): Support ModuleBody interface.
- (eval_module): New interface (pass Environment).
- * kawa/lang/CompileFile.java (read): New interface to set modulebody.
- * kawa/lang/compilefunc.java: ModuleBody now takes Environment.
- * kawa/lang/{AutoloadProcedure,AutoloadSyntax}.java: Update likewise.
- * kawa/standard/load.java, kawa/Shell.java: Likewise.
- * kawa/lang/{Lambda,LambdaExp,Quote}.java, kawa/standard/{and_or,
- begin,define,define_syntax,ifp,let,letstar,letrec,quasiquote,set_b,
- syntax_error}.java:
- Replace throw new WrongArguments by return interp.syntaxError.
- * kawa/standard/letstar.java: Remove a pointless use of VarListPat(1).
- * kawa/lang/Syntax.java (rewrite): No longer throws WrongArguments.
- * kawa/lang/Interpreter (rewrite*): Likewise.
- * kawa/lang/AutoloadSyntax (load etc): Likewise.
- * kawa/lang/SyntaxRule.java (2-arg execute_template): Do rewrite here,
- and thus return an expression instead of an Object.
- * kawa/lang/SyntaxRules.java (rewrite): Therefore do not rewrite here.
-
- * kawa/standard/StandardInterpreter.java: Renamed to Scheme.java.
- * kawa/standard/ashift.java: New function (arithmetic-shift).
- * kawa/standard/not.java: Fix broken semantics (required Boolean).
- * kawa/standard/{string,vector}.java: Renamed to string_v.java and
- vector_v.java to avoid confusion on case-insensitive filesystems.
- * kawa/standard/quasiquote.java: Update accordingly.
- * {kawa,kawac}.java: Update StandardInterpreter->Scheme.
-
- * kawa/lang/Interpreter.java (curEnvironment): New [temporary] method.
- (rewrite_pair): Deal with hygiene Symbol in current_decls.
- * kawa/lang/Eval.java: New class, for "eval" function.
- * kawa/lang/Makefile.{am,in}: New files Location, Binding, Eval.
- * kawa/standard/{scheme_env,null_env,user_env}.java: New classes.
- * kawa/standard/Makefile.{am,in}: Update accordingly.
- * kawa/lang/InPort.java (readSchemeNumber): Make more robust.
- * kawa/standard/string2number.java: On ReadError, return #f.
- * kawa/lang/Pair.java (pair): Remove redundant call to super.
- * kawa/lang/Compilation (findLiteral): Never allocate a field
- for a String - more efficient to just use a CONSTANT_String.
- * kawa/lang/Literal.java (emit): String is never ALLOCATED now.
- Mon Sep 16 11:04:28 1996 Per Bothner <bothner@deneb.cygnus.com>
- * configure.in (VERSION): Set to 1.0. (Yeah!)
- * Makefile.{am,in}: Add rule to make kawa.html and include it in dist.
- * Makefile.{am,in} (EXTRA_DIST): Add license.terms and scm2java.html.
- * scm2java.html: Warn that it is not current, and fix some typos.
- * kawa/standard/{floor,ceiling,truncate,round}.java: Handle IntNum.
- * kawa/standard/{lcm,max,min,modulo,quotient,remainder}.java: New.
- * kawa/standard/{StandardInterpreter.java,Makefile.{am,in}}: Update.
- Sun Sep 15 11:07:48 1996 Per Bothner <bothner@deneb.cygnus.com>
- * **/Makefile.{am,in}: (javadir): Use $(subdir)
- {DEP_,}DISTFILES): Do not include DATA (i.e. *.class).
- Replace generated EXTRA_DIST with ditto SOURCES.
- * kawa/Shell.java: Less verbose error messages.
- * kawa/standard/{gcd,string2number,call_with_output_string}.java: New.
- * kawa/standard/{StandardInterpreter.java,Makefile.{am,in}}: Update.
- * CompileFile.java (read): Take Environment, not Interpreter.
- Add overloaded method that uses an InPort.
- * kawa/lang/Environment.java (getInterpreter): New method.
- * kawa/lang/InPort.java (throws clauses): ReadError -> SyntaxError.
- * kawa/lang/InPort (readNumber -> readSchemeNumber): Make more general.
- * kawa/lang/LambdaExp.java (fileFunctionName): New static field.
- * kawa/lang/Named.java: Don't implement no-longer-existing Nameable.
- * kawa/lang/ReadError.java: Change so getMessage gets raw message,
- * kawa/lang/SetExp.java (compile): Do maybe_compile_checkcast.
- * kawa/lang/SyntaxError.java: Removed.
- * kawa/lang/UnboundSymbol.java: Call super so getMessage works.
-
- Fri Sep 13 14:27:31 1996 Per Bothner <bothner@deneb.cygnus.com>
- * configure{.in,}: Update to version 0.5.
- * kawac.java (main): Allow infile to follow switches.
- * kawa.texi: Use VERSION macro.
- * mdate-sh, version.texi: New files, needed for VERSION macro.
- * kawa/standard/{ceiling,exact2inexact,floor,inexact2exact,
- round,truncate}.java: More standard Scheme functions.
- * kawa/standard/{StandardInterpreter.java,Makefile.{am,in}}: Update.
- * kawa/lang/Continuation.java: Improve error message.
- * kawa/lang/Interpreter.java (read): Removed.
- * {,kawa/{,lang/,math/,standard/,lib/}}Makefile.{am,in}: Fix
- javac classpath so both build and source directories are searched.
- Do not change directory (which confuses make and is not needed).
-
- Fri Sep 13 08:21:33 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/standard/call_with_input_string.javaL New class.
- * kawa/standard/{StandardInterpreter.java,Makefile.{am,in}}: Update.
- * kawac.java, kawa/Shell.java: Don't use old GenericError.message.
- * kawa.java: Re-write to do options processing.
- * kawa/Shell.java: Remove constructor. Make run method static.
- (runString, runFile): New static methods.
- * kawa.texi: New documentation file.
- * texinfo.tex: New support file, needed for kawa.texi.
- * Makefile.{am,in}: Update for kawa.texi.
- Thu Sep 12 16:22:47 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Literal.java: Make flags public.
- (emit): Do flags|=ALLOCATED|INITIALIZED when done, so
- class-specific code does not have to.
- * kawa/lang/{AnyPat,Char,EqualPat,ListRepeatPat,Literal,Pair,PairPat,
- Symbol,SyntaxRule,SyntaxRules,Vector}.java: Remove now-redundant
- setting of Literal.flags.
- * kawa/lang/InPort.java (readNumber): Only recognize float if decimal.
- Return new kawa.math.IntNum and kawa.math.DFloNum object.
- * kawa/lang/Environment.java (frames, lookup): Removed - unsued.
- * kawa/lang/Interpreter.java: Remove unused eval functions.
- Define quote and lambda in StandardInterpreter, not here.
- * kawa/lang/Procedure1or2.java: Add default constructor.
- * kawa/{,lang,standard,lib}/Makefile.{am,in}: Add EXTRA_DIST rule.
- Use $*.java instead of possibly-less-portable $(<F).
- * kawa/Makefile.{am,in} (SUBDIRS): Add math sub-directory.
- * kawa/configure{.in,} (AC_OUTPUT): Add kawa/math/Makefile.
- * kawa/standard/*.java: Update to use new Numeric classes.
- * kawa/standard/{acos,asin,atan,cos,denominator,even_p,exact_p,
- exp,expt,inexact_p,log,number2string,odd_p,rational_p,sin,sqrt,
- tan}.java: New classes for number functions.
- * kawa/standard/Makefile.{am,in} (OBJ): Add new classes.
- Sun Sep 8 21:23:33 1996 Per Bothner <bothner@deneb.cygnus.com>
- * configure.in (VERSION): Set to 0.4.
- * {,kawa/,kawa/lang/,kawa/standard/}Makefile.{am,in} (JAVA):
- Fix -classpath argument.
- * kawa/lang/GenericError.java: Fix to pass message to super.
- * kawa/lang/InPort.java (skipWhitespaceAndComments, readList):
- Handle unexpected EOF.
- * kawa/lang/LambdaExp.java (eval): Mangle class name.
- * kawa/lang/Compilation.java (mangleClassName): New function.
- (generateClassName): Use it.
- * kawa/lang/Makefile.{am,in}: Add Promise.class.
- * kawa/lang/Promise.java: New class for Scheme promise objects.
- * kawa/lang/SyntaxRule.java (translate_template): Don't
- rename identifiers inside quote or quasiquote.
- * kawa/lang/SyntaxRules.java (init): Mark linenumber info.
- * kawa/standard/cond.java: Removed. (Replaced by ../lib/cond.scm.)
- * kawa/standard/Makefile.{am,in}: Add new classes. Remove cond.
- * kawa/standard/StandardInterpreter.java:
- Use macro version of cond and let from ../lib.
- Add new functions and macros.
- * kawa/standard/cxr.java: Fix bugs that trashed fields.
- * kawa/standard/{force,make_promise}.java: New Procedure1 classes.
- * kawa/standard/syntax_error.java: New syntax.
- Sat Sep 7 12:11:18 1996 Per Bothner <bothner@deneb.cygnus.com>
- Mostly fixes to improve stack traces.
- * kawa/lang/Compilation.java (source_filename): New field.
- (constructors): Set source_filename from LambdaExp filename.
- (addClass): Set ClassType sourcefile from source_filename.
- * kawa/lang/CompileFile.java (read): Set filename of LambdaExp.
- * kawa/lang/{Expression,PairWithPosition}.java: Make methods public.
- * kawa/lang/Expression.java (compile_with_linenumber): New method.
- * kawa/lang/{BeginExp,IfExp,LetExp,compilefunc}.java (compile):
- Use compile_with_linenumber to emit line numbers where appropriate.
- * kawa/lang/LambdaExp.java (eval): Set classname from function name.
- Set function name using named.setName.
- * kawa/lang/Literal.java (constructor): Set default type to Object.
- (compile): Do a cast if needed.
- * kawa/lang/compilefunc.java (compile): Do not set name
- (apply2): Remove. No longer extend Procedure2.
- * kawa/standard/define.java (rewrite): Set line number info.
- * kawa/Shell.java (run): Do printStackTrace on exception.
-
- * kawa/lang/LambdaExp: Always compile. Remove doCompile field.
- * kawa/lang/LambdaProcedure.java: Remove. Never used.
- * kawa/lang/Makefile.{am,in}: Remove LambdaProcedure.class.
- Implement quasi-quoatation (backquote):
- * kawa/standard/vector_append.java: New ProcedureN.
- * kawa/standard/{append,cons,vector}.java: Allocate a new Procedure
- of this type. This is so quasiquote can access these standard
- functions by value (not name). Also implement Compilable.
- * kawa/standard/quasiquote.java: New primitive syntax.
- * kawa/standard/StandardInterpreter.java: Add quasiquote,
- vector-append. Change cons, append, vector to use static procs.
- Remove non-working compile-func.
- * kawa/standard/Makefile.{am,in}: Add quasiquote, vector_append.
- Thu Sep 5 00:00:13 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/standard/{abs,append,apply,char_ci_greater_equal_p,
- char_ci_greater_p,char_ci_less_equal_p,char_ci_less_p,char_equal_p,
- char_greater_equal_p,char_greater_p,char_less_equal_p,char_less_p,
- char_ready_p,define,equal_oper,greater_oper,greaterequal_oper,
- less_oper,lessequal_oper,list_ref,list_tail,load,make_string,
- make_vector,minus_oper,multiply_oper,negative_p,newline,not,
- plus_oper,positive_p,read,reverse,setcar_b,setcdr_b,string,
- string2symbol,string_length,string_ref,string_set_b,symbol2string,
- vector_length,writechar,zero_p}.java: Update to use Named.name().
- * kawa/standard/{car,cdr}.java: Named.name is now a method.
- * kawa/standard/cxr.java: New class. Generalization of c[ad]*r.
- * kawa/standard/caaaar,caaadr,caaar,caadar,caaddr,caadr,caar,cadaar,
- cadadr,cadar,caddar,cadddr,caddr,cadr,cdaaar,cdaadr,cdaar,cdadar,
- cdaddr,cdadr,cdar,cddaar,cddadr,cddar,cdddar,cddddr,cdddr,cddr}.java:
- Removed - superseded by cxr.java.
- * kawa/standard/{StandardInterpreter,Makefile.{am,in}}: Update.
- Wed Sep 4 13:43:32 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/CompileFile.java (compile_to_files): New function,
- to compile to one or more source files.
- * kawa/lang/SchemeLoader.java: Zip archive support moved
- to codegen/ZipArchive.java.
- * kawa/lang/compilefunc.java: Maybe compile to ModuleBody.
- * kawa/lang/{SyntaxRuleSyntaxRules}.java: New classes, to support
- define-syntax/syntax-rules (R5RS hygienic top-level macros).
- * kawa/lang/AutoloadProcedure.java (name): Replace by super.name().
- (load) Support autoloading an entire module.
- * kawa/lang/AutoloadSyntax.java: New class, to autoload macros.
- * kawa/lang/{Nameable,Named}.java: Store a symbol, not a String.
- (name): Change from String field to Symbol-returning method.
- * kawa/lang/{Procedure,Procedure0,Procedure1,Procedure2,Procedure3,
- Procedure4,Procedure0or1,Procedure1or2,Interpreter,LambdaProcedure,
- Syntax,compilefunc}.java: Update to use Named.name().
- * kawa/lang/Compilation.java (nameField): Update name and Type.
- * kawa/lang/ProcedureN.java: Add Symbol-taking constructor.
- * kawa/lang/LambdaExp.java (name): Change from String to Symbol.
- * kawa/lang/LambdaProcedure.java (constructor): Name is now Symbol.
- * kawa/lang/compilefunc.java (compile): Name is now a Symbol.
- * kawa/lang/Syntax.java (print): New method to implement Printable.
- * kawa/lang/UnboundSymbol.java: Store a Symbol rather than a String.
- * kawa/lang/ReferenceExp.java (eval): Update for UnboundSymbol fix.
- * kawa/lang/LambdaExp.java (is_module_body): New field,
- (isModuleBody,setModuleBody): New methods.
- * kawa/lang/Procedure.java: No longer implement Executable.
- (execute): Remove obsolete interface.
- * kawa/lang/Interpreter.java (quasiquote,unquote, unquotesplicing):
- Remove unused fields.
- * kawa/lang/Interpreter.java (resolve): Add extra argument
- so caller can do current_decls.get and test for renamed global.
- * kawa/lang/ReadError.java: Include line number info in error message.
- * kawa/lang/Interpreter.java (rewrite_car, rewrite_pair_with_position,
- rewrite_pair): New functions to rewrite with line numbers.
- (syntaxError): Report filename and line/column position.
- * kawa/lang/Expression.java (filename, position): New fields.
- (setFile, setLine, getFile, setFule, getColumn): New methods.
- * kawa/lang/Pattern.java (match): New abstract calling interface.
- (varCount): New abstract method.
- * kawa/lang/{EqualPat,ListPat,VarListPat}.java (match):
- Change to match new interface. Implement varCount.
- * kawa/lang/EqualPat.java (makeLiteral, emit): Implement Compilable.
- * kawa/lang/{AnyPat,ListRepeatPat,PairPat).java: New Pattern classes.
- * kawa/lang/ModuleBody.java: New sub-class of Procedure0.
- * kawa/lang/ErrorExp.java (compile): Fix reversed test.
- * kawa/lang/InPort.java: Keep track of line and column position.
- Supports marks and reset.
- (readQuote): Generalize with extra argument.
- (readQuasiQuote): Superseded by generalized readQuote.
- * kawa/lang/Literal.java (emitArray): New method.
- (emit): Support (Object[]), (Symbol[]), (String) type literals.
- (check_cycle): New method.
- * kawa/lang/{WrongArguments,WrongType}.java: Add Symbol-taking init.
- * kawa/lang/IfExp.java (eval,compile): Missing else returns voidObject.
- * kawa/lang/print.java (print): Handle (int[]).
- * kawa/lang/Compilation (emitLiteral): New method.
- (scmPatternType,symbolArrayType,scmNamedType,nameField): New statics.
- (findLiteral): Handle Object[] values.
- (findNamedClass, generateClassName, constructor): New methods.
- * kawa/lang/LambdaExp.java (compile): Use new generateClassName.
- (eval): Use more natural class names.
- * kawa/lang/Vector.java (findLiteral):
- Simplify by using new support for emitting Object[] values.
- * kawa/lang/{Pair,Vector}.java (emit): Use new emitLiteral method.
- * kawa/lang/PairWithPosition.java: New class extends Pair.
-
- * kawa/lang/{Executable,Syntaxable,QuasiQuote,Unquote,
- UnquoteSplicing}.java: Remove obsolete classes.
- * kawa/lang/Makefile.{am,in}: Update for new and removed classes.
- * kawa/standard/{begin,cond,define,ifp,let,letrec,letstar,set_b}.java:
- Remove print method. No longer needed.
- * kawa/standard/{apply,boolean_p,procedure_p}.java:
- Remove non-default constructor. Name binding handled by autoload.
- * kawa/standard/{ass,mem,readchar,write}.java: Use new Named.name().
- * kawa/standard/define.java (rewrite): Call setName with Symbol.
- * kawa/standard/define_syntax.java: New class - hygienic macros.
- * kawa/standard/StandardInterpreter.java (define_syntax): New function.
- (constructor): Add new macros. Some cleanup here and there.
- * kawa/standard/load.java (loadClassFile): New function.
- (apply1): Also support loading from a .class file.
- * kawa/standard/{unless,when}.java: Replaced by lib.when_unless.
- * kawa/standard/Makefile.{am,in}: Update. Fix SUFFIXES.
- * kawa/lib: New directory.
- * kawa/Makefile.{am,in}: Add lib to SUBDIRS.
- * configure{.in,} (AC_OUTPUT): Add kawa/lib/Makefile.
- * kawac.java: New application class.
- * Makefile.{am,in}: Build kawac.class. Fix SUFFIXES.
- Tue Aug 20 13:59:36 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Values.java: New class.
- * kawa/standard/{values,call_with_values}.java: New functions.
- * kawa/standard/StandardInterpreter.java: Define new functions.
- * kawa/{lang,standard}/Makefile.{am,in}: Add new classes.
- * kawa/standard/and_or.java: Do setSimple on temp if top-level.
- Sat Jul 20 11:25:05 1996 Per Bothner <bothner@deneb.cygnus.com>
- Make kawa-0.3 release.
- * configure.in, configure (AC_INIT): Look for kawa.java now.
- * kawa/Shell.java: Re-structure.
- * kawa/standard/{and,or}.java: Remove old-style implementations.
- * kawa/standard/{and_or,with_output_to_file}.java: New classes.
- * kawa/standard/{StandardInterpreter.java,Makefile.{am,in}: Update.
-
- * kawa/standard/{let,letstar,letrec,set_b}.java (rewrite):
- Call Declaration.noteValue.
- * kawa/standard/minus_oper.java (applyN): Fix sign/logic error.
-
- * kawa/lang/Interpreter.java (apply): Remove obsolete method.
- (lookup_global): Fix typeo.
- Implement tail-recursion-elimination (and fix more bugs).
- * kawa/lang/Expression.java (compile): Changed to take flag mask
- instead of boolean. Added IGNORED and LAST.
- * kawa/lang/{ApplyExp,BeginExp,ErrorExp,IfExp,LambdaExp,LetExp,
- QuoteExp,ReferenceExp,SetExp}.java: Update definitions and
- uses of compile methods accordingly.
- * kawa/lang/IfExp.java (compile): Only goto end_label if reachableHere.
- * kawa/lang/ApplyExp.java (compile): Check for and optimize
- tail-recursion.
- * kawa/lang/LambdaExp.java (argsArray): New, replaces local array_args.
- * kawa/lang/LambdaExp.java: Call noteValue appropriately,
- * kawa/lang/LambdaExp.java (getArgs): New method.
- * kawa/lang/LetExp.java (print): Deal with artificial Variables.
- * kawa/lang/QuoteExp.java (undefined_exp): New static field.
- * kawa/lang/Declaration.java (value): New field.
- (noteValue): New method.
- * kawa/lang/compilefunc.java (compile): Set start_label.
-
- * kawa/lang/Compilation.java: Make int1Args a field, not a local.
- * kawa/standard/exit.java: Take optional status. Call System.exit.
- * kawa/lang/Exit.java: Removed. No longer needed.
- * kawa/lang/{Makefile.am,Makefile.in} Remove Exit.class.
-
- * kawa/lang/ScopeExp.java (assign_space): If outside any lambda,
- make all variables non-simple (and allocate a heapFrame).
-
- * kawa/lang/Named.java: Don't make pointless copy of name.
- * kawa/lang/Procedure.java: Deafult is name is now null.
- * kawa/lang/Procedure0or1.java: Add default constructor.
- * kawa/lang/AutoloadProcedure.java (load): If we have a name but
- the loaded Procedure has none, use the former for the latter.
- * kawa/standard/{plus_oper,minus_oper,multiply_oper,divide_oper).java:
- Remove constructor. Naming is handled by autoloader.
- Sat Jul 20 17:40:46 1996 Anthony Green <green@csk3.cygnus.com>
- * */Makefile.am, */Makefile.in: srcdir is no longer
- forced to be at the same level as build dir.
- Fri Jul 19 14:55:52 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/standard/{call_with_input_file,call_with_output_file,
- char_ready_p,current_input_port,current_output_port,
- with_input_from_file}.java: New functions.
- * kawa/standard/{StandardInterpreter.java,Makefile.{am,in}: Update.
- Thu Jul 18 15:04:46 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Literal.java (emit): Fix StringBuffer init invocation.
- * kawa/lang/Vector.java: Add makeLiteral, print; implement Compilable.
- * kawa/standard/string{,_ci}_{greater,less}thanequal_p.java:
- Rename to avoid the redundant "than".
- * kawa/standard/{string_fill_b,vector_fill_b,vector_set_b}.java:
- Return Interpreter.voidObject.
- * kawa/standard/string_append.java: Allow 0 arguments.
- * kawa/standard/{setcar_b,setcar_b).java: Return voidObject.
- * kawa/standard/{car,car).java: Fix exception message.
- * kawa/standard/list_ref.java: Fix typo.
-
- * kawa/{char2integer,char_alphabetic_p,char_downcase,
- char_lower_case_p,char_numeric_p,char_upcase,char_upper_case_p,
- char_whitespace_p,integer2char}.java: Add remaining char functions.
- * kawa/standard/reverse.java: Add last missing list function.
- * kawa/standard/{StandardInterpreter.java,Makefile.{am,in}: Update.
- * kawa/lang/InPort.java: Fix mis-reading of ,@ (unquote-splicing).
- (readUnquoteSplicing,readUnquote): Inline single calls, and remove.
- * kawa/lang/Symbol.java (print): Slashify if printReadable.
- * kawa/lang/Char.java: Add makeLiteral, print; implement Compilable.
- * kawa/lang/CompileFile.jave: Don't add redundant .zip extension.
- Wed Jul 17 20:34:37 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/Shell.java: Don't exit if eval returns #<eof>.
- * kawa/lang/{InPort,OutPort}: Add name field.
- Add print methods and implement Printable.
- * kawa/lang/Compilable.java (makeLiteral): New method.
- * kawa/lang/{Pair,Symbol}.java: Implement makeLiteral.
- * kawa/lang/Compilation.java: Use makeLiteral if value is Compilable.
- * kawa/lang/Interpreter.java (eofObject): Change print-name.
- Wed Jul 17 19:34:00 1996 R. Alexander Milowski <sgml@winternet.com>
- * kawa/standard/{char_ci_equal_p,char_ci_less_p,char_ci_less_equal_p,
- char_ci_greater_p,char_ci_greater_equal_p,
- input_port_p,output_port_p,open_input_file,open_output_file,
- close_input_file,close_output_file}.java: New Scheme procedures.
- * kawa/standard/{StandardInterpreter.java,Makefile.{am,in}: Update.
- Tue Jul 16 23:23:16 1996 Per Bothner <bothner@deneb.cygnus.com>
- Lots of fixes and improvements, mostly compiler-related.
- * kawa/lang/Compilable.java: New interface.
- * kawa/lang/Pair.java: Implement emit method; Compilable interface.
- * kawa/lang/Symbol.java: Likewise.
- * LetExp.java (eval): Update for space_needed->frameSize; heapFrame.
- (compile): Don't do redundant add_var's.
- * SchemeLoader.java: Support loading classes form a ZipArchive.
- * kawa/lang/Interpreter.java (lookup_global, define_global):
- Now take Symbol rather than String.
- (resolve): Do decl.setSimple(false) also for top-level lexical defs.
- * kawa/lang/LambdaExp.java: Move heapFrame and heapSize to ...
- * kawa/lang/ScopeExp.java: ... here. Rename heapSize -> frameSize.
- (assign_space): Fix for non-function lexical scope.
- (space_needed): Removed, subsumed by frameSize.
- * kawa/lang/LambdaExp.java (compile_setLiterals): New method.
- * kawa/lang Compilation.java: New constructor interface.
- Many new pre-defined ClassTypes, Methods, Fields.
- (findLiteral): New recursive function.
- * CompileFile.java: New class - read and compile an entire file.
- * kawa/lang/Declaration.java (getValue, getFrame): Handle heapFrame.
- * kawa/lang/Literal.java: Now generates code to initialize literals
- when compiling to a file. Handles circular data.
- * kawa/lang/ReferenceExp.java (compile, compile_load): Various fixes.
- * kawa/lang/SetExp.java (compile): Push symbol rather than string.
- * kawa/lang/compilefunc.java: Lots of re-arranging and fixes
- for file compilation, lexical outer-function scopes, etc.
- Move setLiterals-related code to LambdaExp.compile_setLiterals.
- * kawa/standard/load.java: Can now load from compiled .zip file
- as well as from a .scm source file.
- * kawa/lang/{Makefile.am,Makefile.in}: Add new classes.
- Tue Jul 16 19:09:36 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/AutoloadProcedure.java: New class, for autoloading.
- * kawa/standard/StandardInterpreter.java (define_proc): New method.
- (<init>): Use new autoloading define_proc extensively.
- * Makefile.{am,in}: Add {newline,map,callcc}.class.
- * kawa/lang/{Continuation,CalledContinuation}>java: New classes.
- * kawa/standard/callcc.java: Implement limited call/cc.
- * kawa/lang/List.java (toVector): New method.
- * kawa/lang/InPort.java (readSchemeObject): Handle vector syntax.
- * kawa/standard/list2vector.java (apply1): Use List.toVector.
- * kawa/standard/list_tail.java (listTail): New method.
- * kawa/standard/{list_tail,list_ref}: Use list_tail.listTail.
-
- * kawa/standard/{minus_oper,multiply_oper,divide_oper,equal_oper,
- greater_oper,greaterequal_oper,less_oper,lessequal_oper}.java:
- Re-write to extend ProcedureN, rather than Named.
- * kawa/standard/map.java: New class, implements map and for-each.
- * kawa/standard/newline.java: New class, implements newline function.
- * kawa/lang/print.java (print): Handle Object[].
- * kawa/lang/Expression.java (compile): Make abstract.
- * kawa/lang/ErrorExp.java (compile): Added.
- Tue Jul 16 19:05:50 1996 R. Alexander Milowski <sgml@winternet.com>
- * kawa/lang/InPort.java (readCharacter): Recognize letters, e.g. #\A.
-
- Thu Jul 11 15:10:14 1996 Per Bothner <bothner@deneb.cygnus.com>
- Major re-write. All functions are now byte-compiled,
- using the codegen package.
- * kawa/lang/{Compilation,CompiledProc,Literal,SchemeLoader,
- compilefunc,loadcompiled}.java: New classes - compilation-related.
- * Makefile.{am,in} (OBJ): Add new classes.
- * kawa/lang/{Expression,ApplyExp,BeginExp,IfExp,LambdaExp,LetExp,
- QuoteExp,ReferenceExp,SetExp}.java: Add compile method.
- * kawa/lang/Declaration.java (getFrame, getValue, setValue): New.
- * kawa/lang/Interpreter.java(lookup_global,define_global,resolve): New.
- * kawa/lang/LambdaExp/(staticLink, heapFrame): New variables.
- (eval): Actually compile to get new bytecode.
- * kawa/lang/List.java: New makeList methods.
- * kawa/lang/Procedure{,0,2,3,4}.java: Add default initializer.
- * kawa/lang/ReferenceExp.java (compile_load): New method.
- * kawa/lang/ScopeExp.java: A ScopeExp now contains Scope, which
- includes all the Variables/Declarations as a linked list.
- (num_decls, decls) Removed.
- (firstVar, currentLambda): New methods.
- * kawa/lang/SetExp.java (isDefining, setDefining, compile_store): New.
- * kawa/standard/Makefile.{am,in}: Fix typos (bogus 'eq' in string ops).
- * kawa/standard/let.java: Remove pointless pattern.match.
- * kawa/standard/{let,letstar}.java: Don't allocate array of
- Declarations (since we now use links).
- * kawa/standard/define.java: Set DEFINING_FLAG on result.
- * kawa/standard/letrec.java: Re-written to use extend Syntax.
- * kawa/standard/StandardInterpreter.java: Upadet for new letrec.
- * kawa/standard/load.java: Close on port on eof.
- * kawa/standard/string2list.java: Use Char.make rather than new Char.
- Tue Jul 2 11:34:24 1996 Anthony Green <green@csk3.cygnus.com>
- * Makefile.am, Makefile.in, configure.in: Added the codegen
- directory to the build procedure.
- * */Makefile.am */Makefile.in: Added "make clean" support.
- Fri Jun 28 17:47:12 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/standard/cond.java: Re-write to use recursion.
- Fri Jun 28 15:02:21 1996 R. Alexander Milowski <sgml@winternet.com>
- * kawa/standard/{list2string,list2vector,string2list,string_append,
- string_ci_equal_p,string_ci_greaterthan_p,string_ci_greaterthanequal_p,
- string_ci_lessthan_p,string_ci_lessthanequal_p,string_copy,
- string_equal_p,string_fill_b,string_greaterthan_p,
- string_greaterthanequal_p,string_lessthan_p,string_lessthanequal_p,
- substring,vector2list,vector_fill_b}.java: New classes.
- * kawa/standard/cond.java: Implement cond syntax.
- * kawa/standard/StandardInterpreter.java: Update accordingly.
- * kawa/standard/Makefile{am,in}: Add new files.
- Tue Jun 25 20:40:57 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Char.java: New class, for representing Scheme characters,
- * kawa/lang/{SyntaxError,ReadError,EofReadError}.java: New Exceptions.
- * kawa/lang/{EOFInComment,EOFInString,InvalidCharacterName,
- InvalidPoundConstruct,MalformedList,NotImplemented,NumberTooLong,
- UnexpectedCloseParen}.java: Replaced by SyntaxError sub-classes.
- * kawa/lang/{InPort,OutPort}.java: New classes, replace iport & oport.
- * kawa/lang/{iport,oport}.java: Removed.
-
- * kawa/lang/Procedure0or1.java: New Procedure sub-class.
- * kawa/lang/{Procedure,Expression}.java: Implement Printable interface.
- * kawa/lang/LambdaExp.java: Add optional name field, setName method.
- * kawa/lang/LambdaProcedure.java: Use and print LamdaExp.name.
- * kawa/lang/ErrorExp.java: New Expression sub-class.
- * kawa/lang/Interpreter.java: Move read-related functions to InPort.
- * kawa/lang/Interpreter.java: Update iport->InPort, oport->OutPort.
- * kawa/lang/SetExp.java (eval): Return voidObject.
- * kawa/lang/Symbol.java: New makeUninterned, generate methods.
- Add make as a (preferred) synonym for intern.
- * kawa/lang/print.java: Print obj.toString() as the default.
- Print Scheme strings with quoting if OutPort.printReadable.
-
- * kawa/{lang,standard}/Makefile.{am,in}: Updated accordingly.
- * kawa.java, kawa/Shell.java: Update iport->InPort, oport->OutPort.
- * kawa/Shell.java: Use eofObject. No longer catch removed Exceptions.
-
- * kawa/standard/StandardInterpreter.java (define_proc): new method.
- Use it to add new primitives.
- * kawa/standard/{char_equal_p,char_greater_equal_p,char_greater_p,
- char_less_equal_p,char_less_p,char_p,make_string,string,string_ref,
- string_set_b}.java: Stylistic changes.
- Update java.lang.Character->Char.
- * kawa/standard/{eof_object_p,load,read,readchar,write,writechar}.java:
- New classes to implement I/O primitives.
- * kawa/standard/eqv_p.java: Chars are now equal? iff eq?.
- * kawa/standard/ifp,set_b}.java: Use new Interpreter.syntaxError.
- * kawa/standard/define.java: Likewise. Also do LambdaExp.setname.
- * license.term: New license Based on Tcl copyright.
- * COPYING: Removed.
- Fri Jun 21 00:03:34 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Declaration (context): New field.
- (Declaration): Initialize index to -1.
- * kawa/lang/ScopeExp.java (assign_space, add_decl): New methods.
- (shared, num_decls, space_needed): New fields.
- * kawa/lang/LambdaProcedure.java (applyN): Always allocate
- new frame using LambdaExp.space_needed field.
- * kawa/lang/LetExp.java (eval): Use Declaration.index when setting.
- * kawa/lang/ReferenceExp.java (eval): Search up lexical scope chain.
- * kawa/lang/SetExp.java (eval): Likewise.
- * kawa/lang/LambdaExp.java (LambdaExp): Use new ScopeExp.add_decl.
- * kawa/standard/{let,letstar}.java (rewrite): Likewise.
- * kawa/lang/ApplyExp.java (print): Fix thinko.
- * kawa/lang/BeginExp.java (eval): Fix typo.
- Wed Jun 19 17:00:03 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Sequence.java: New abstract class.
- * kawa/lang/List.java: Now inherits from Sequence.
- * kawa/lang/Makefile.am: Update accordingly.
- * kawa/lang/Pair.java (equalds, length, elementAt): New methods.
- * kawa/lang/vector.java -> Vector.java: Renamed and re-implemented.
- * kawa/standard/equal_p.java: Re-implement to use equals method.
- * kawa/standard/{make_vector,vector,vector_length,vector_p}.java,
- kawa/standard/{vector_ref,vector_set_b}.java: Use new Vector class.
-
- Wed Jun 19 10:16:59 1996 Per Bothner <bothner@deneb.cygnus.com>
-
- * kawa/lang/symbol.java -> Symbol.java: Renamed class.
- * kawa/lang/List.java: New class.
- * kawa/lang/pair.java -> Pair.java: Renamed; made sub-class of List.
- * kawa/lang/snull.java: Removed. Use static List.Empty instead.
- * kawa/lang/Procedure1or2.java: New sub-class of Procedure.
- * kawa/lang/{*.java,Makefile.am,Makefile.in}: Update accordingly.
- * kawa/standard{*.java,Makefile.am,Makefile.in}: Update accordingly.
- * kawa/standard/{append,apply.make_vector,string,vector}.java:
- Re-write as Procedure sub-class.
- * kawa/standard/{ass,mem}.java: Minor cleanups and optimizations.
- * kawa/standard/list_p.java: Use List.list_length.
- Tue Jun 18 12:19:46 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Expression.java: New abstract class.
- * kawa/lang/{ApplyExp,BeginExp,IfExp,LambdaExp,LetExp,QuoteExp,
- ReferenceExp,ScopeExp,SetExp}.java: New sub-classes of Expression.
- * kawa/lang/Pattern.java: New abstract class (for pattern matching).
- * kawa/lang/{ListPat,VarListPat}.java: New sub-classes of Pattern.
- * kawa/lang/{Declaration,Environment}.java: New classes.
- * kawa/lang/Procedure.java: New abstract class.
- * kawa/lang/Procedure{0,1,2,3,4}.java: Re-written to extend Procedure.
- * kawa/lang/ProcedureN.java: New sub-class of Procedure.
- * kawa/lang/LambdaProcedure.java: Re-written to extend Procedure.
- * kawa/lang/Syntax.java: New abstract class.
- * kawa/lang/Syntax{0,1,2,3,4}.java: Removed. No longer used.
- * kawa/lang/{Lambda,Quote}.java: Re-written to extend Syntax.
- * kawa/lang/print.java: Handle null Object.
- * kawa/lang/symbol.java: Re-write to intern in hashTable,
- and removed public constructor.
- * kawa/lang/Interpreter.java: New methods: rewrite and rewrite_body.
- Removed some no-longer used stuff, and added some minor stuff.
- * kawa/Shell.java: Re-write raw expression before eval.
- Print message if null returned. Re-indent.
- * kawa/standard/{begin,define,ifp,let,set_b}.java:
- Re-write as sub-class of Syntax.
- * kawa/standard/letstar.java: Syntax sub-class for "let*".
- * kawa/standard/length.java: Add static int-returning "work" function.
- * kawa/standard/{equal_p,eqv_p}.java: Add similar boolean function.
- * kawa/standard/{list,plus_oper}.java: Re-written to extend ProcedureN.
- * kawa/standard/string2symbol.java: Should not fold case.
- * kawa/standard/StandardInterpreter.java: Update accordingly.
- Wed Jun 12 22:06:58 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/print.java: New class, with just a print method (for now).
- * kawa/lang/pair.java (print): Just call printNoParen.
- (printNoParen): Use loop (not recursion), and kawa.lang.print.print.
- * kawa/lang/vector.java (print): Use kawa.lang.print.print.
- * kawa/Shell.java (run): Use kawa.lang.print.print.
- * Makefile (JAVAC): Search ".:, not ".." for classpath.
- * kawa/lang/Makefile (OBJ): Add print.class.
- Wed Jun 12 19:34:35 1996 Per Bothner <bothner@deneb.cygnus.com>
- * kawa/lang/Interpreter.java (trueObject, falseObject,
- nullObject, undefinedObject): Make static.
- * kawa/lang/Procedure[01234].java: Rename execute[0-4] -> apply[0-4].
- Remove Interpreter and frame arguments.
- * kawa/standards/*.java: Change most execute methods to new apply
- methods. Use static references to get trueObject etc.
- * Check in Kawa 0.2.
- =============================================================================
- Changes since 0.1:
- ==================
- Kawa 0.2 (6-10-96)
- Created an Executable and Syntaxable interface for procedures and syntaxes.
- Changed class names to get rid of name conflicts that were causing
- problems due to java compiler bugs.
- Changed string to be java.lang.StringBuffer
- Added Procedure0, Procedure1, Procedure2, Procedure3, Procedure4 classes
- for simplifying procedure parameter checking.
- Added Syntax0, Syntax1, Syntax2, Syntax3, Syntax4 classes for simplifying
- syntax parameter checking.
- Fixed lambda to clone the current execution frames. Thus, the following now
- works:
- (define x 5)
- (define foo (lambda () x))
- (let ((x 10)) (foo)) => 5
- -and-
- (define bar (let ((x 1)) (lambda () x)))
- (bar) => 1
- Created the kawa.lang.iport and kawa.lang.oport classes for input and output
- ports, respectively.
- Finished the kawa.Shell class.
- Create in, out, err members on the kawa.lang.Interpreter class for the stdin,
- stdout, stderr respectively (as iport or oport).
|