Segmentation of Skin Lesions and Their Attributes Using Multi-Scale

Total Page:16

File Type:pdf, Size:1020Kb

Segmentation of Skin Lesions and Their Attributes Using Multi-Scale 1 Segmentation of Skin Lesions and their Attributes Using Multi-Scale Convolutional Neural Networks and Domain Specific Augmentations Mostafa Jahanifar*, Neda Zamani Tajeddin*, Navid Alemi Koohbanani*, Ali Gooya, and Nasir Rajpoot Abstract—Computer-aided diagnosis systems for classification task) from the lesion, to finally decide about the type of of different type of skin lesions have been an active field of skin lesions (classification task). In this framework, precise research in recent decades. It has been shown that introducing le- segmentation of lesion boundary is a critical task which can sions and their attributes masks into lesion classification pipeline can greatly improve the performance. In this paper, we propose lead to representative features to differentiate between normal a framework by incorporating transfer learning for segmenting and malignant lesions. lesions and their attributes based on the convolutional neural Lesions attributes, also known as dermoscopic structures, networks. The proposed framework is based on the encoder- are meaningful visual patterns in the skin lesion texture. Each decoder architecture which utilizes a variety of pre-trained of them represents a specific diagnostic symptom, and based networks in the encoding path and generates the prediction map by combining multi-scale information in decoding path using a on the lesion type and malignancy severity their appearance pyramid pooling manner. To address the lack of training data and may change [5]. Some lesions may not contain any specific increase the proposed model generalization, an extensive set of dermoscopic pattern while some may include textural pattern novel domain-specific augmentation routines have been applied related to several attributes. There are different types of to simulate the real variations in dermoscopy images. Finally, attributes defined in dermatology. Five of the most clinically by performing broad experiments on three different data sets obtained from International Skin Imaging Collaboration archive interesting attributes are pigment networks, globules/dot, Milia (ISIC2016, ISIC2017, and ISIC2018 challenges data sets), we like cysts, negative networks, and streaks. In clinical practices, show that the proposed method outperforms other state-of-the-art apart from the general and local appearance characteristics of approaches for ISIC2016 and ISIC2017 segmentation task and the lesion, dermatologists look for these attributes to better st achieved the 1 rank on the leader-board of ISIC2018 attribute decide about the lesion type and its malignancy level. Hence, detection task. CAD systems can also benefit from the useful information Index Terms—melanoma, attribute segmentation, lesion seg- that attributes deliver, to achieve a better automatic recognition mentation, deep learning, transfer learning, augmentation, ISIC performance. challenge Although modern CNNs are able to extract relevant features from the raw dermoscopic images and classify them without I. INTRODUCTION the need of lesions or their attributes segmentation map [6], it has been shown that incorporating additional information can KIN lesion analysis through image processing and ma- significantly improve lesion classification task [7], [8]. Yu et al. chine learning techniques has attracted a lot of attention S [7] showed that incorporating lesion mask can elevate lesion in the last decades [1]. With the advent of deep convolutional classification and they achieved 1st rank in the ISIC2016: neural networks (CNNs) and different scientific competitions Melanoma Recognition challenge. Moreover, Gonzalez Diaz on this topic in the recent years [2], [3], numerous powerful [8] proposed a lesion classification framework that incorpo- arXiv:1809.10243v3 [cs.CV] 29 Mar 2019 computational methods have been emerged to solve different rates both lesion segmentation and attributes probability maps problems in this area. In general, the final goal of using which was able to achieve state-of-the-art results using only computer aided diagnosis (CAD) systems for skin lesion one single model by adding this additional information. Such analysis is to automatically detect any abnormalities or skin researches and their promising results prove the importance of diseases. The methods in the literature usually follow a certain lesion mask and its attributes segmentation tasks for diagnosis analysis pipeline [4]: first, lesion area in the image is detected purposes. (segmentation task) which secondly helps other computerized There are various hurdles in automatic analysis of dermo- algorithms to extract discriminative feature (feature extraction scopic images due to the artefact in image capturing setup, M. Jahanifar and N. Zamani Tajeddin were with the Department of sample preparations and lesion appearance itself. During im- Biomedical Engineering, Tarbiat Modares University. M. Jahanifar is now age capturing from skin lesion samples using a dermatoscope with the Department of Research and Development, NRP company, Tehran, different image artifact can affect the output quality. These Iran (e-mails: fm.jahanifar,[email protected]). N. Alemi Koohbanani and N. Rajpoot are with the Tissue Image Analytics artefacts are hair occlusion, color charts, ruler markers, low (TIA) Lab at the Department of Computer Science, University of Warwick, image contrast and sharpness, uneven illumination, gel bub- UK (emails: fn.alemi-koohbanani,[email protected]). bles, marker annotations, clothing obstacles, color inconstancy, Ali Gooya is with the Department of Electronic and Electrical Engineering, University of Sheffield, Sheffield, England (e-mail: a.gooya@sheffield.ac.uk) and lens artifact (dark corners). Besides, skin lesions can show *These authors contributed equally to this work large variability in appearance based on their type. Severe 2 cases may have fuzzy borders, complex or vague texture, low we proposed to construct the saliency map of the lesion in a contrast against the skin, amorphous geometry, and multi- supervised and multi-scale manner based on the shape, color, colored face. Therefore, designing a general algorithm to and textures features extracted from super-pixel segments of overcome all these hurdles is hardly achievable. Attribute the images. In [11] several regression models in different segmentation task is even more challenging due to their small scales predict initial saliency maps based on extracted features structures and weak appearance. and the final saliency map of the lesion is achieved through Here, we are looking for powerful CNN models to segment combining them. In a recent paper, Garcia et al. [14] proposed lesion and its related attributes from dermoscopic images. In a hybrid segmentation method with two main parts: pixel fuzzy order to avoid the complications during training a CNN from classification and histogram thresholding. Their method can scratch, we propose to use transfer learning in a novel segmen- be consider as a saliency detection approach like [11] since tation framework. Our proposed segmentation network benefits authors in [14] extracted some pixel-wise color and texture from multi-scale convolutional and pyramid pooling blocks to features from image and allocate each pixel to one of lesion, detect desired small and big objects from the image. Another skin, or other probability maps (saliency maps). Afterward, novel aspect of the present work is extensive use of augmen- they employed a novel histogram-based thresholding algorithm tation routines. Considering the domain-specific knowledge, on the probability maps to achieve the lesion segmentation. we design some exquisite augmentations techniques to imitate Ahn et al. [13] also took a supervised saliency detection the appearance variation in dermoscopy images. Prediction approach. They inverted the lesion detection into a background maps are then generated by ensembling the outputs of different detection problem. In their method, the background map is models and different test time augmentation. To obtain the reconstructed by analysing image’s super-pixels in a multi- binary mask of the lesion or dermoscopy attribute, optimal scale framework. Then, they proposed that lesion area can thresholding and post-processing tasks are applied on the final be drawn from super-pixels having the highest reconstruction ensemble prediction map. error. They pre-processed the input images to remove hairs Rest of the paper is organized as follows: In section II, and color chart from the images and incorporated thresholding we broadly cover the recent literature for segmenting skin and post-processing operations on the output [13]. In an lesion and its attributes which is followed by description of unsupervised fashion, Fan et al. [12] introduced two saliency our approach to tackle these problems in section III. Section detection routines based on color and brightness information IV comprises some explanation about the data set, evaluation and proposed a method to fuse these saliency maps in order metrics, and implementation details. Experimental results for to construct the final lesion prediction. Then, the segmenta- lesion segmentation and attributes detection tasks on three tion process is done through a histogram-based thresholding different benchmark data sets are reported in section IV. algorithm. Finally, the discussion and conclusion of this research are 2) Unsupervised hybrid methods: Unsupervised hybrid drawn in sections V and VI, respectively. methods that usually contain several steps
Recommended publications
  • THICK TURRET TOOLING SOLUTIONS Standards, Specials and Accessories
    THICK TURRET TOOLING SOLUTIONS Standards, Specials and Accessories My Account by Wilson Tool International A ! va ow ilable N WILSON STYLE 6 6 Small Station Advantages 8 HPX® A Station 10 HPX® B Station 12 EXP® A & B Station 14 HP2 and HP A Station 16 HP2 and HP B Station 18 HP A Station, Heavy Duty 20 HP B Station, Heavy Duty 22 Basix A Station 24 Basix B Station 26 Basix A Station, Heavy Duty 28 Basix B Station, Heavy Duty 30 Large Station Advantages 32 HP C Station 34 HP D Station 36 HP E Station 38 HP Notcher Stripper Plate 38 Bonded Urethane Stripper Plates COATINGS 39 Contents METRIC STYLE 40 PARTING TOOLS 77 40 Small Station Advantages 78 HP DuraBlade® D Station 42 HPX® A Station 80 HP DuraBlade® E Station 44 HPX® B Station 82 Dura-Die 46 EXP® A & B Station 82 Close to Clamp Slitting Die 48 HP2 A Station 83 Close to Clamp Replacement Parts 50 HP2 B Station 84 Standard Parting Tools 52 Basix A Station 84 Mate Ultra Replacement 54 Basix B Station 84 Amada Alpha Replacement 56 Large Station Advantages 84 Amada Q Series Replacement 58 HP C Station 60 HP D Station 62 HP E Station ULTRA 64 Standard C Station REPLACEMENT 66 Standard D Station 85 68 Standard E Station 70 Basix C Station 72 Basix D Station MULTI-TOOLS 74 Basix E Station 87 88 MTX3iR TOOL STEEL 89 MTX8iR 76 90 MTX8i 91 MT20i | MT6A | MT7A 92 Replacement Tools SPECIALS 93 ACCESSORIES 132 94 QuickTap® Tapping Tool C-Station 132 Hand Tools 95 QuickTap® Tapping Tool D-Station 134 Digital Measuring Equipment 96 Coining Tools 134 Zip-Mar Discs 97 Card Guide 135 Alignment Tools
    [Show full text]
  • What Is It and Why Should VFP Developers Care?
    The X-Sharp Project What is it and why should VFP developers care? X# Vendor Session October 2019 X#: a new incarnation of an old development language X# Vendor Session October 2019 Agenda • A bit of history • Why X# • What is X# • X# and Visual FoxPro • New Features • Where can I get it X# Vendor Session October 2019 xBase languages, a bit of History -1 • Started at JPL with a project called Vulcan, by Wayne Ratliff (PTDOS, Later CP/M) (1978) • Ashton Tate bought it and released it under the name dBASE II for Apple II and DOS (1980) • An improved version dBASE III in 1984 • In the 80’s several competitors appeared on the market: Clipper, FoxBASE, DBXL, QuickSilver, Arago, Force, FlagShip and many more. Together these products were called “xBase”. The share the programming language and many functions and working with DBF files • Some were faster, others allowed to sell royalty free compiled versions of apps • Then Microsoft launched Windows in 1990 X# Vendor Session October 2019 xBase languages, a bit of History -2 • The move to Windows resulted in several product changes, also products were sold and resold: • dBase (AT) -> (Borland, Inprise, Borland) • QuickSilver -> Borland, then vanished • FlagShip -> MultiSoft (Various Unix versions, Windows) • Clipper (Nantucket)-> Visual Objects (Computer Associates) • FoxBASE (Fox Software) -> FoxPro (Microsoft) • Some products “died” • New products appeared, especially as successors of Clipper • (x) Harbour (open source, also for unix) • Xbase++ X# Vendor Session October 2019 xBase languages, a bit of History -3 • Now in the 2010’s most of these products are ‘dead’, no longer developed for various reasons.
    [Show full text]
  • CLR Inside out the Performance Benefits of Ngen. Surupa Biswas T Ypically, Methods in Managed Executables Are Just-In-Time (JIT)
    CLR Inside Out: The Performance Benefits of NGen. Page 1 of 10 CLR Inside Out The Performance Benefits of NGen. Surupa Biswas Contents Why Use NGen? Using NGen Assemblies and the GAC Choosing Base Addresses Avoid Rebasing NGen and Multiple AppDomains Using Hardbinding Regenerating NGen Images Final Notes T ypically, methods in managed executables are just-in-time (JIT) compiled. The machine code generated by the JIT compiler is thrown away once the process running that executable exits; therefore, the method must be recompiled when the application is run again. Moreover, the generated code is tied to the process that created it and cannot be shared between processes that are running the same application. These characteristics of .NET JIT compilation can have performance drawbacks. Fortunately, NGen (native image generation) offers some relief. NGen refers to the process of precompiling Microsoft® intermediate language (MSIL) executables into machine code prior to execution time. This results in two primary performance benefits. First, it reduces application startup time by avoiding the need to compile code at run time. Second, it improves memory usage by allowing for code pages to be shared across multiple processes. Although at first glance NGen appears to be similar to traditional static back-end compilation, it is actually quite different. Unlike statically compiled binaries, NGen images are tied to the machine where they are created and hence cannot be deployed. Instead, the application's installer needs to issue commands to create native images for the specific assemblies on the client machine at setup time. Also unlike traditional binaries, NGen images merely form a cache-managed applications will continue to run correctly even if all the NGen images are deleted.
    [Show full text]
  • Diploma Thesis
    Faculty of Computer Science Chair for Real Time Systems Diploma Thesis Porting DotGNU to Embedded Linux Author: Alexander Stein Supervisor: Jun.-Prof. Dr.-Ing. Robert Baumgartl Dipl.-Ing. Ronald Sieber Date of Submission: May 15, 2008 Alexander Stein Porting DotGNU to Embedded Linux Diploma Thesis, Chemnitz University of Technology, 2008 Abstract Programming PLC systems is limited by the provided libraries. In contrary, hardware-near programming needs bigger eorts in e. g. initializing the hardware. This work oers a foundation to combine advantages of both development sides. Therefore, Portable.NET from the DotGNU project has been used, which is an im- plementation of CLI, better known as .NET. The target system is the PLCcore- 5484 microcontroller board, developed by SYS TEC electronic GmbH. Built upon the porting, two variants to use interrupt routines withing the Portabe.NET runtime environment have been analyzed. Finally, the reaction times to occuring interrupt events have been examined and compared. Die Programmierung für SPS-Systeme ist durch die gegebenen Bibliotheken beschränkt, während hardwarenahe Programmierung einen gröÿeren Aufwand durch z.B. Initialisierungen hat. Diese Arbeit bietet eine Grundlage, um die Vorteile bei- der Entwicklungsseiten zu kombinieren. Dafür wurde Portable.NET des DotGNU- Projekts, eine Implementierung des CLI, bekannter unter dem Namen .NET, be- nutzt. Das Zielsystem ist das PLCcore-5484 Mikrocontrollerboard der SYS TEC electronic GmbH. Aufbauend auf der Portierung wurden zwei Varianten zur Ein- bindung von Interrupt-Routinen in die Portable.NET Laufzeitumgebung untersucht. Abschlieÿend wurden die Reaktionszeiten zu eintretenden Interrupts analysiert und verglichen. Acknowledgements I would like to thank some persons who had inuence and supported me in my work.
    [Show full text]
  • Descargar Y Compilar Gambas, ¡ Lea CUIDADOSAMENTE Las Usted Debe Tener Privilegios Para Escribir El Siguientes Recomendaciones !
    Tercera edición digital de MYGNET-MAGAZINE Enero 2006 Les deseamos que este año se para todos de muchas oportunidades y que se cumplan todos nuestros sueños y propósitos. También queremos reconocer el excelente trabajo de los colaboradores que han brindado los contenidos de este número, así pues agradecemos el enorme apoyo que hemos recibido de parte de todos los colaboradores como lectores. Es muy alentador recibir sus comentarios y opiniones para continuar este esfuerzo y generar un producto de gran valor para todos. Les reiteramos la invitación para que participen con nosotros. Editores Martín Roberto Mondragón Sotelo. [email protected] Gustavo Santiago Lázaro. [email protected] Escríbenos a [email protected] Visítanos a http://www.mygnet.com o http://www.mygnet.org Aplicaciones Backup y recuperación en frió................................................................................................................................................... 3 DotGNU Portable.NET................................................................................................................................................................... 4 Instalación de Gambas – Notas importantes ........................................................................................................................ 6 Gambas – Compilación e instalación ..................................................................................................................................... 7 Tablas externas en Oracle 9i.....................................................................................................................................................
    [Show full text]
  • Farm Bill Conference Committee Meets, but Challenges Lie Ahead
    Volume 33 November 1, 2013 Number 41 Scan this code for breaking Farm bill conference committee news and the latest markets! meets, but challenges lie ahead A WASHINGTON — The farm bill passed earlier this year. with my House colleagues, like its provisions in the fi nal bill. bill conference committee (For a complete list of farm we did in the Senate, to develop “The conference should INSIDE held a public meeting Wednes- bill conferees, see “Shutdown a fi nal bipartisan farm bill that follow the lead of the House day to begin discussing the ends, Congress poised to move reforms agriculture programs, of Representatives, which ✦ Cheese, butter stocks prospects for passing a fi nal, on farm bill” in the Oct. 18, provides certainty for farmers rejected a controversial new decline from August. 5-year farm bill before the end 2013, issue of Cheese Market and saves taxpayers billions. dairy program to impose milk of the year. News.) No further meetings This bill is the most signifi cant quotas on dairy farmers by a For details, see page 5. The four principal con- have been announced at this reform to agriculture policy more than two-to-one margin ✦ Zwirner Equipment Co. ferees — Senate Agriculture time, and the House will not be in decades, it’s critical for the — 291-135 — including almost opens new business Committee Chair Debbie in session again until Nov. 12. economy and it’s long-past half of the House Democrats,” with decades of experience. Stabenow, D-Mich.; rank- Peterson notes that the time to get it done.” Slominski says.
    [Show full text]
  • Comparative Programming Languages CM20253
    We have briefly covered many aspects of language design And there are many more factors we could talk about in making choices of language The End There are many languages out there, both general purpose and specialist And there are many more factors we could talk about in making choices of language The End There are many languages out there, both general purpose and specialist We have briefly covered many aspects of language design The End There are many languages out there, both general purpose and specialist We have briefly covered many aspects of language design And there are many more factors we could talk about in making choices of language Often a single project can use several languages, each suited to its part of the project And then the interopability of languages becomes important For example, can you easily join together code written in Java and C? The End Or languages And then the interopability of languages becomes important For example, can you easily join together code written in Java and C? The End Or languages Often a single project can use several languages, each suited to its part of the project For example, can you easily join together code written in Java and C? The End Or languages Often a single project can use several languages, each suited to its part of the project And then the interopability of languages becomes important The End Or languages Often a single project can use several languages, each suited to its part of the project And then the interopability of languages becomes important For example, can you easily
    [Show full text]
  • Gl Name Subcatdesc Asin Ean Description Qty Unit Retail
    GL NAME SUBCATDESC ASIN EAN DESCRIPTION QTY UNIT RETAIL Musical Instruments Dj Headphones B01BCD3DRA 4010118719004 beyerdynamic T 5 p (2nd Generation) High-End Portable Headphones 1 848,46 Automotive Motorcycle Helmets B07P9VB2PS 8804269250136 HJC RPHA 11 VENOM MARVEL II MC1 XL 1 576,38 Video Games B07K1FLC3W 889842396409 Xbox One X White 1TB console Forza Horizon 4 + Forza Motorsport 7 bundle 1 443,09 Video Games Xbox One Consoles B07FF24NBH 5027757108730 Xbox One X 1TB console Forza Motorsport 7 Bundle 1 434,44 Video Games Playstation 4 Consoles B07K14XKZH 711719937364 Sony PlayStation 4 Pro 1TB Console - Black (PS4 Pro) 1 348,65 Automotive Motorcycle Helmets B018W05LCG 768686688126 Bell Powersports Bullitt Motorradhelm, WeiĂź (Stripes Pearl WeiĂź), XL 1 309,80 Musical Instruments Cymbals B00SO5Z3FA 840553014662 Meinl Cymbals B20DUCR Byzance Extra Dry 20-Inch Dual Crash/Ride Cymbal (VIDEO)1 305,16 Automotive Suspension & Chassis B0068NR6EG 4025258621582 Bilstein 40076638 Luftfeder, Fahrwerk 1 301,43 Video Games Xbox One Consoles B0769JGQNJ 889842214048 Xbox One S 1TB Console - Assassin's Creed Origins Bonus Bundle (Xbox One) 1 294,63 Video Games Other B01M6ZGICT 45496452315 Nintendo Switch (Grey) 1 293,11 Video Games Playstation 4 Consoles B013BOERFU 711719859031 Sony PlayStation 4 Console 500 GB Edition Jet Black 1 284,36 Sports Range Finders B01BM5KN30 29757016591 Bushnell Unisex's Compact Tour V4 Jolt Rangefinder, White 1 269,00 Video Games Multi-Platform Headsets B07B819VMQ 5707119029605 SteelSeries Arctis Pro Wireless - Gaming Headset
    [Show full text]
  • Dairy Industry Players Discuss Prospects for 2012 Farm Bill
    Volume 31 January 13, 2012 Number 51 Scan this code for breaking Dairy industry players discuss news and the latest markets! prospects for 2012 Farm Bill By Alyssa Sowerwine Congress has made it very dif- Deficit Reduction, commonly year, the fact that nothing was ficult for progress to be made referred to as the “supercom- passed creates an opportunity INSIDE WASHINGTON — With the on any legislation, let alone mittee,” last fall. While that to “wipe the slate clean” to al- 112th Congress reconvening for dairy reform. package was declared “dead low for further discussion and F Export Tool Kit: its second session this month, David Hickey, director of on arrival” since the supercom- negotiation, Slominski notes. ‘2012: The good, the the dairy industry is eager to government relations for the mittee failed to come to an Hickey notes that even if bad and the unknown.’ move forward on the antici- National Milk Producers Fed- agreement, it still will likely progress is made in farm bill For details, see page 4. pated 2012 Farm Bill. eration (NMPF), also notes be used as a springboard for hearings throughout early Stakeholders say much that stalled progress on federal reform going forward, industry 2012, there may not be enough F Estate Cheese Group uncertainty surrounds both the debt and budget negotiations stakeholders say. time to negotiate and pass a bill acquires Sonoma content and timing of the farm has created a backlog of sorts. The full package submitted by the end of the year. Creamery from Pulmuone, legislation, as well as the fund- Hickey adds that while de- to the supercommittee has not Chelsee Woodey, director Monterey Gourmet Foods.
    [Show full text]
  • The New Future of Xbase for .NET
    The new future of Xbase for .NET The X-Sharp Project XSharp Announcement September 2015 What is XSharp (X#) • XSharp is an open source XBase language for .NET • The XSharp project was founded by familiar people: • Robert van der Hulst • Fabrice Foray • Nikos Kokkalis • And others that want to remain anonymous (for now) XSharp Announcement September 2015 Why XSharp ? • We were unhappy with the speed of progress in Vulcan.NET and wanted to make the customer base of the product larger • There are many XBase developers outside the VO/Vulcan world that have no migration path to DotNet. Vulcan is too closely linked to VO and does not offer an easy migration path for those developers • The world is moving to Open Source software. By creating an open source XBase language for DotNet we hope to attract people from different XBase dialects. XSharp Announcement September 2015 Who are we targeting? • Current Vulcan.NET users • Other xBase developers • Visual Objects • FoxPro • Xbase++ • dBase • (x)Harbour XSharp Announcement September 2015 X# - What is it • The X# product will consist of various components • A Compiler that supports different dialects of XBase • Runtime libraries for each of the dialects • Visual Studio integration • Documentation • Online forums • Support Contract XSharp Announcement September 2015 The X# Compiler -1 • Will support many dialects of XBase . Core . Visual Objects / Vulcan . Xbase++ . FoxPro . dBase . (X)Harbour • The Core dialect could be seen as a C# compiler with Xbase syntax. • The other dialects will add datatypes and language constructs that are Xbase specific, such as USUAL, DATE, CODEBLOCK, FUNCTION, METHOD, GLOBAL etc.
    [Show full text]
  • Data/Code Driven UI Mit WPF Teil 1
    Differences between VO and X# The major differences between VO and X# Wolfgang Riedmann [email protected] Meeting Italiano 2018 a Bolzano Runtime A X# application is executed under the control of the .NET runtime and not anymore under the control of a proprietary runtime. This changes a few things: • Stabler runtime, more performant garbage collector • Available on all .NET platforms: x86, x64, AnyCPU, Linux • Some features of the VO language are not available anymore. For example: access/assign cannot have the same name as a method, a class cannot have the same name as the enclosing binary • The repository with its incremental compiling does not exists anymore, the code is located in prg files, but can be organized in folders and subfolders • The ErrorBlock is not available anymore!!! • The largest code library is available at no cost: the .NET Framework with thousands of classes • Faster codeblocks, but slower in the compilation (for now!) • Function() does not exists anymore, is emulated by static methods of the class Functions. You can continue to write and use functions. • Access/Assign does not exists anymore, is emulated with property. An assign cannot return any value! Meeting Italiano 2018 a Bolzano Runtime? What is it? As runtime we specify the libraries/DLLs than come with : • The real runtime: data types, base functions, macrocompiler. • VO 2.8: VO28RUN.DLL • Vulcan: VulcanRT.DLL, VulcanRTFuncs.DLL, VulcanMacroCompiler.DLL • X#: Xsharp.Core.DLL, Xsharp.VO.DLL, Xsharp.MacroCompiler.DLL • Data access functionality: RDD (Replaceable database drivers): • VO 2.8: CavoDBF.RDD, DBFCDX.RDD, DBFNTX.RDD, _DBFCDX.RDD • Vulcan: VulcanDBFCDX.DLL, VulcanDBFFPT.DLL • X#: currently in development, beta planned for August 2018 • Class Libraries (System, GUI, RDD, SQL, OLE, Windows API, Internet): • VO 2.8: VO28SYS.DLL, VO28GUI.DLL, VO28RDD.DLL, VO28SQL.DLL, VO28OLE.DLL • Vulcan: VulcanVOSystemClasses.DLL, VulcanVOGUIClasses.DLL, VulcanVORDDClasses.DLL, VulcanVOSQLClasses.DLL • X#: will be created by a tool from your own VO source code.
    [Show full text]
  • Look at X Sharp!
    Look at X Sharp! Eric Selje Salty Dog Solutions, LLC Madison, WI USA Voice: 608-213-9567 Website: www.SaltyDogLLC.com Email: [email protected] Would you be interested in a product that compiles your existing Visual FoxPro projects into .NET code? Well, that product doesn't exist, but there is a compelling product called X# that is working towards that goal. They've got a mature product that compiles many dialects of xBase to .NET already, and they're now actively working on VFP syntax. In this session we'll look at X# from this Visual FoxPro developer’s point of view. Look at X Sharp! You will learn: • A brief history of the xBase language family tree • How close a real FoxPro to .NET compiler is • Whether this is a product you can move forward with, given your current skill set • Whether this is even a direction you want to go Preface This whitepaper cannot be a complete documentation about all things X#. My intended audience is the Visual FoxPro developer who’s looking at options for either new development or a candidate for migrating their existing projects. I hope after you read this whitepaper as well as my own conclusions you’ll be more informed about what X# is and what it is not and will be able to make a decision about whether this is a direction you want to pursue. Copyright 2019, Eric Selje Page 2 of 32 Look at X Sharp! A Brief History of xBase In the beginning, there was Vulcan. Created in 1978 by Wayne Ratliff at JPL Laboratories to run his football pool, Vulcan was the ur-language of what would become the bread and butter of every developer who used any of its descendants.
    [Show full text]