مشاركة مميزة
Show HN: PuffinBASIC – A cross-platform modern BASIC interpreter written in Java https://ift.tt/34tjVQM
- Get link
- X
- Other Apps
Show HN: PuffinBASIC – A cross-platform modern BASIC interpreter written in Java GitHub: https://ift.tt/2EumcjJ BASIC (Beginners' All-purpose Symbolic Instruction Code) is a general-purpose high-level language from the 1960s. PuffinBASIC is an implementation of the BASIC language specification. PuffinBASIC conforms most closely to GWBASIC. The purpose of this implementation is to learn how to write interpreters and resurrect an old programming language to work in modern ecosystem. The interpreter is evolving fast and in near future, I wish to apply modern interpreter building techniques to it. How it works? 1. PuffinBASIC's grammar is defined using antlr4. 2. At runtime, the user source code is parsed using antlr4 lexer+parser. 3. After parsing, an intermediate representation (IR) of the source code is generated. A symbol table keeps track of variables, scalars, arrays, etc. objects. 4. A runtime, processes the IR instructions and executes them. Performance PuffinBASIC is an interpreter, and it should not be expected to have very good performance characteristics. Certain operations such as PRINT USING, INPUT, etc. are not optimized for performance. I have not benchmarked PuffinBASIC primitives. That being said, we have written games with graphics in PuffinBASIC is work very well. TESSEL - A 2D Tile Game written in PuffinBASIC Source: https://ift.tt/34yIM5W... Link to YouTube video demo: https://youtu.be/L8xkM-g3Zms Memory PuffinBASIC runs within a JVM and can use as much memory as available for the JVM process. Compatibility PuffinBASIC is mostly compatible with Microsoft's GWBASIC. Graphics is supported using Java 2D graphics. PuffinBASIC will not support assembly instructions. Data Types PuffinBASIC has extended BASIC types and supports Int32, Int4, Float32, Float64, and String. Reference: https://ift.tt/2EumcjJ August 24, 2020 at 10:54PM
- Get link
- X
- Other Apps
Popular posts from this blog
The Cipher's Whisper
العلاج القرآني
اكتشف فوائد العلاج القرآني: مرشدك إلى العلاج القرآني العلاج القرآني هو نهج روحاني وعلاجي يستند إلى القرآن الكريم، ويهدف إلى تحقيق الشفاء والتوازن النفسي والروحي. يعتبر القرآن مصدرًا للراحة والطمأنينة، حيث يوفر آياته الشفاء والهداية. من خلال تطبيق مبادئ القرآن في حياتنا اليومية، يمكننا تحقيق تحسينات كبيرة في صحتنا النفسية والروحية. للتواصل والاستشارات: 01066672615 الخلاصات الرئيسية العلاج القرآني يعزز الصحة النفسية والروحية. يستخدم القرآن كأداة للشفاء والهداية. يمكن تطبيق مبادئ القرآن في الحياة اليومية. العلاج القرآني يحقق التوازن النفسي والروحي. يوفر القرآن الراحة والطمأنينة. أسس العلاج القرآني وجذوره في الإسلام تأسس العلاج القرآني على أسس دينية وروحية متينة، مستمدة من القرآن الكريم والسنة النبوية. يمثل القرآن الكريم المصدر الرئيسي للعلاج القرآني، حيث يحتوي على آيات الشفاء والراحة النفسية. تعريف العلاج القرآني ومفهومه في الشريعة الإسلامية العلاج القرآني هو العلاج الروحي الذي يعتمد على تلاوة آيات القرآن الكريم وتدبر معانيها لتحقيق الشفاء والراحة النفسية. يُع...
Car-Free Market Street starts January 29
Car-Free Market Street starts January 29 By Phillip Pierce Better Market Street is set to transform our city’s busiest street for people walking, biking and riding transit over the next few years, but we don’t need to wait for construction to make it safer and improve Muni. Starting on January 29th through our Quick-build program , Market Street will become car-free eastbound from 10 th to Main and westbound from Steuart to Van Ness. In addition to restricting private vehicles, the quick-build includes extending Muni only lanes, new loading zones and much-needed intersection safety improvements. Figure 1: Map of changes coming late January 2020 . Figure 4: Rendering including Better Market Street’s sidewalk level bike lane, new trees and improved streetscape elements. These changes can’t come soon enough because unfortunately, Market Street is home to half of the top 10 intersections for pedestrian and bicycle collisions. In fact, each year since 2014...
Comments
Post a Comment