name=Dylan nameURL=http%3A%2F%2Fwww.dylanpro.com%2FDylanExchange.html see= logo=96x96%3Dhttp%3A%2F%2Fdylan.prinz.org%2FSmallDylanLogo.gif type=O%20-%20Object-oriented desc=Dylan%20is%20a%20dynamic%20object-oriented%20language%20with%0D%0Aboth%20procedural%20and%20functional%20features%2C%0D%0Aintended%20for%20application%20development%20and%20%0D%0Asystem%20programming.%20%20It%20was%20developed%0D%0Aby%20Apple%20Computer%20in%20the%20mid-1990s.%0D%0AThe%20name%20stands%20for%20DYnamic%20LANguage.%0D%0A%3Cbr%3E%0D%0AThe%20language%20syntax%20for%20Dylan%20is%20original%2C%0D%0Abut%20structurally%20resembles%20Scheme.%20%20The%0D%0Alanguage%20offers%20inheritance%2C%20type-safety%2C%0D%0Apolymorphism%2C%20garbage%20collection%2C%20macros%2C%0D%0Amodularity%20%28named%20modules%29%2C%20reflections%2C%0D%0Aerror%20handling%2C%0D%0Amulti-methods%2C%20and%20extensibility.%20%20%0D%0AData%20types%20defined%20by%20the%20language%20include%0D%0Aa%20variety%20of%20numbers%2C%20strings%2C%20symbols%2C%20%0D%0Avarious%20collections%20such%20as%20sequences%2C%20arrays%2C%0D%0Avectors%2C%20and%20hash%20tables.%0D%0A%3Cbr%3E%0D%0AIn%20Dylan%2C%20as%20in%20Smalltalk%2C%20everything%20is%0D%0Aan%20object.%20%20Even%20numbers%20are%20organized%20into%0D%0Aa%20class%20hierarchy.%20%20Functions%20are%20also%0D%0Aobjects%2C%20and%20support%20a%20large%20number%20of%0D%0Ainteresting%20mechanisms%20including%0D%0Acomposition%2C%20currying%2C%20mapping%2C%20and%20reduction.%0D%0AClasses%20are%20also%20objects%2C%20with%20support%0D%0Afor%20dynamic%20class%20definition%20and%20other%0D%0Aadvanced%20OOP%20techniques.%0D%0A%3Cbr%3E%0D%0ADylan%20facilities%20for%20GUI%20and%20database%0D%0Aprogramming%20have%20been%20implemented%2C%20and%0D%0Amost%20implementations%20of%20the%20language%0D%0Apermit%20interfacing%20with%20external%20C%2FC%2B%2B%0D%0Alibraries.%0D%0A%3Cbr%3E%0D%0AImplementations%20of%20Dylan%20are%20available%20for%0D%0Amost%20platforms%20including%20Unix%2C%20Macintosh%2C%0D%0Aand%20Windows.%20%20Dylan%20has%20been%20implemented%20as%0D%0Aan%20interpreter%2C%20as%20a%20C%20front-end%2C%20and%20as%0D%0Aa%20native%20compiler.%20%20Both%20free%20and%0D%0Acommercial%20systems%20exist.%20%20Some%20commercial%0D%0ADylan%20implementations%20provide%20a%20visual%20%0D%0Adevelopment%20environment. origin=Apple%20Computer%2C%201992 seealso=Scheme%2C%20Common%20Lisp%2C%20Smalltalk%2C%20Java%2C%20C%2B%2B remark=Apple%27s%20advanced%20technology%20lab%20east%20invented%0D%0ADylan%2C%20and%20wrote%20one%20of%20the%20first%20compilers.%0D%0AIt%20was%20originally%20intended%20for%20the%20Macintosh%2C%0D%0Abut%20has%20been%20ported%20to%20many%20other%20computers.%0D%0AThe%20upcoming%20commercial%20supplier%20seems%20to%20be%20%0D%0A%3Ca%20href%3D%22http%3A%2F%2Fwww.harlequin.com%2Fproducts%2Fads%2Fdylan%2Fdylan.html%22%3EHarlequin%20Group%3C%2Fa%3E.%0D%0A%3Cbr%3E%0D%0ADylan%20has%20attacted%20a%20fair%20bit%20of%20attention%0D%0Ain%20the%20late%201990s%20as%20a%20good%20application%0D%0Adevelopment%20language.%20%20It%20has%20not%20shown%0D%0Aany%20sign%2C%20however%2C%20of%20supplanting%20C%2B%2B%0D%0Aor%20Java.%0D%0A%3Cbr%3E%0D%0A links1=Dylan%20resources%20at%20Knowlege%20Tech%3Dhttp%3A%2F%2Fwww.pcai.com%2Fpcai%2FNew_Home_Page%2Fai_info%2Fpcai_dylan.html links2=Gwydion%20Dylan%20information%3Dhttp%3A%2F%2Flegend.gwydion.cs.cmu.edu%2Fgwydion%2Fdylan%2F links3=Dylan%20Reference%20Manual%20%2895%20draft%29%3Dhttp%3A%2F%2Fmembers.aol.com%2Fdylanlang%2Findex.html links4=The%20Dylan%20Evangelists%3Dhttp%3A%2F%2Fdylan.prinz.org%2F links5=A%20Dylan%20FTP%20area%3Dftp%3A%2F%2Fsrc.doc.ic.ac.uk%2Fpub%2Fcomputing%2Fprogramming%2Flanguages%2Fdylan%2Fdylan%2F date=Last%20updated%2012%2F16%2F97 sample=%3Cpre%3E%0D%0A%2F%2F%20A%20naive%20Quicksort%20in%20Dylan%20by%20Jon%20Sobel%0D%0A%0D%0Adefine%20method%20quicksort%20%28data%20%3A%3A%20%3Clist%3E%29%20%3D%3E%20sorted-data%20%3A%3A%20%3Clist%3E%3B%0D%0A%20%20if%20%28empty%3F%28data%29%20%7C%20empty%3F%28tail%28data%29%29%29%0D%0A%20%20%20%20data%3B%0D%0A%20%20else%0D%0A%20%20%20%20collect%28head%28data%29%2C%20tail%28data%29%2C%20%23%28%29%2C%20%23%28%29%29%3B%0D%0A%20%20end%20if%3B%0D%0Aend%20method%20quicksort%3B%0D%0A%0D%0Adefine%20method%20collect%20%28pivot%2C%20data%20%3A%3A%20%3Clist%3E%2C%20left-side%2C%20right-side%29%0D%0A%20%3D%3E%20sorted-data%20%3A%3A%20%3Clist%3E%3B%0D%0A%20%20case%0D%0A%20%20%20%20empty%3F%28data%29%20%3D%3E%0D%0A%20%20%20%20%20%20concatenate%28quicksort%28left-side%29%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pair%28pivot%2C%20quicksort%28right-side%29%29%29%3B%0D%0A%20%20%20%20%28pivot%20%3C%20head%28data%29%29%20%3D%3E%0D%0A%20%20%20%20%20%20collect%28pivot%2C%20tail%28data%29%2C%20left-side%2C%20pair%28head%28data%29%2C%20%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20right-side%29%29%3B%0D%0A%20%20%20%20otherwise%20%3D%3E%0D%0A%20%20%20%20%20%20collect%28pivot%2C%20tail%28data%29%2C%20pair%28head%28data%29%2C%20left-side%29%2C%20%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20right-side%29%3B%0D%0A%20%20end%20case%3B%0D%0Aend%20method%20collect%3B%0D%0A%3C%2Fpre%3E _store=1 _add=Dylan _usertab=1 _usersearch=0 _format=full = name=Dynace nameURL=http%3A%2F%2Falgorithms.us%2F see=C logo= type=O%20-%20Object-oriented desc=Dynace%20is%20an%20object-oriented%20extension%20of%20the%0D%0AC%20programming%20language%2C%20designed%20for%0D%0Ageneral%20application%20development.%0D%0A%3Cbr%3E%0D%0ADynace%20uses%20the%20same%20base%20data%20types%0D%0Aand%20control%20constructs%20as%20C.%20%20It%20adds%20the%0D%0Afollowing%20OOP%20and%20other%20advanced%20features%0D%0Ato%20C%3A%20abstract%20data%20types%2C%20classes%20with%20multiple%0D%0Ainheritance%2C%20run-time%20type%20ids%2C%20generics%2C%0D%0Agarbage%20collection%2C%20multi-threading%0D%0Aand%20synchronization%2C%20and%20reflection.%0D%0A%3Cbr%3E%0D%0ADynace%20is%20a%20weakly%20typed%20%28actually%2C%20%0D%0Avalue%20typed%29%20language%20like%20Smalltalk%20--%20all%0D%0Aobjects%20are%20run-time%20type%20identified%20and%0D%0Atype%20rules%20are%20checked%20during%20execution.%0D%0AThis%20is%20similar%20to%20other%20dynamic%20OO%20language%0D%0Asystems%20like%20CLOS%20%28Common%20Lisp%20Object%20System%29%0D%0Aand%20Self.%0D%0A%3Cbr%3E%0D%0AThere%20is%20currently%20only%20one%20implementation%0D%0Aof%20Dynace%2C%20the%20commercial%20version%20from%0D%0AAlgorithms%20Corp.%20%20Source%20code%20for%20the%0D%0Alanguage%20processor%20is%20available%20for%0D%0Adownload%20from%20the%20corporate%20web%20pages%2C%0D%0Aalthough%20the%20product%20is%20not%20freeware.%0D%0ADocumentation%20about%20the%20language%20is%0D%0Aalso%20available%20at%20the%20web%20site. origin=B.%20McBride%2C%20Algorithms%20Corporation%2C%201993-96. seealso=Objective-C%2C%20C%2B%2B%2C%20Smalltalk%2C%20Java%2C%20Self remark=Scoping%20in%20Dynace%20is%20tightly%20associated%20with%0D%0Asource%20files%2C%20somewhat%20like%20Java.%0D%0A%3Cbr%3E%0D%0AThe%20processed%20C%20nature%20of%20Dynace%20permits%0D%0Aobject-oriented%2C%20type-checked%20Dynace%20code%20%0D%0Aand%20regular%20C%20code%20to%20co-exist%20in%20the%20same%0D%0Aprogram%21%20%20Useful%2C%20perhaps%2C%20but%20dangerous.%0D%0A%3Cbr%3E%0D%0ADynace%20is%20still%20a%20fairly%20young%20product%2C%0D%0Abut%20it%20exhibits%20a%20good%20mix%20of%20C%0D%0Afamiliarity%20with%20modern%20features%20like%0D%0Aautomatic%20garbage%20collection%2C%20threads%2C%0D%0Aand%20inheritance.%20%20It%20resembles%20Objective-C%0D%0Ain%20some%20respects%2C%20and%20in%20fact%20the%0D%0Acreators%20acknowlege%20Brad%20Cox%20and%20Objective-C%0D%0Ain%20the%20Dynace%20documentation.%0D%0ABecause%20it%20is%0D%0Aimplemented%20a%20C%20preprocessor%2C%20as%20%0D%0AC%2B%2B%20once%20was%2C%20Dynace%20can%20leverage%20the%20%0D%0Awidespread%20availability%20of%20C%20compilers%0D%0Aas%20long%20as%20its%20substantial%20run-time%20library%0D%0Acan%20be%20ported.%0D%0A%3Cbr%3E%0D%0AThe%20synax%20of%20Dynace%20is%20C%20with%20some%20additional%0D%0Akeywords%20and%20structures%2C%20the%20manual%20also%0D%0Arecommends%20some%20peculiar%20naming%0D%0Aconventions%20for%20methods%20and%20member%20data. links1=Dynace%20download%20area%3Dhttp%3A%2F%2Falgorithms.us%2Fdownload.shtml links2= links3= links4= links5= date=Last%20updated%208%2F9%2F02 sample=%3Cpre%3E%0D%0A%2F%2A%20A%20simple%20class%20to%20maintain%20an%20int%20built%20up%0D%0A%20%2A%20from%20prime%20factors.%20%20Adapted%20from%20examples%0D%0A%20%2A%20in%20the%20Dynace%20Manual.%20%2A%2F%0D%0A%0D%0Adefclass%20BuiltInt%20%7B%0D%0A%09unsigned%20long%20iRunningValue%3B%0D%0A%20%20%20class%3A%0D%0A%09int%20cCntInstances%3B%0D%0A%7D%3B%0D%0A%0D%0Acmeth%20%20%20gNew%28%29%0D%0A%7B%0D%0A%20%20%20%20object%20obj%3B%0D%0A%20%20%20%20obj%20%3D%20gNew%28super%29%3B%0D%0A%20%20%20%20cCntInstances%20%2B%3D%201%3B%0D%0A%20%20%20%20ivType%20%2Aiv%3B%0D%0A%20%20%20%20iv%20%3D%20ivPtr%28obj%29%3B%0D%0A%20%20%20%20runningValue%20%3D%201%3B%0D%0A%20%20%20%20return%20obj%3B%0D%0A%7D%0D%0A%0D%0Aimeth%20void%20addFactor%28unsigned%20long%20fac%29%0D%0A%7B%0D%0A%20%20%20iRunningValue%20%2A%3D%20fac%3B%0D%0A%20%20%20return%3B%0D%0A%7D%0D%0A%0D%0Aimeth%20unsigned%20long%20getValue%28%29%20%20%7B%20%20%20return%20iRunningValue%3B%20%20%7D%0D%0A%0D%0Aimeth%20object%20gDeepDispose%2C%20gDispose%20%28%29%0D%0A%7B%0D%0A%20%20%20cCntInstances%20-%3D%201%3B%0D%0A%20%20%20gDispose%28super%20self%29%3B%0D%0A%20%20%20return%200%3B%0D%0A%7D%0D%0A%3C%2Fpre%3E _store=1 _add=Dynace _usertab=1 _usersearch=0 _format=full =