Page 1 of 27 123411 ... LastLast
Results 1 to 40 of 1068

Thread: LightFusion™

  1. #1

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    LightFusion™


    The Team:
    • Jacob Roman - Co-Project Director, Compiler, Linker, Syntax (Temporarily not an active member)
    • eyeRmonkey - Co-Project Director, IDE, Documentation/Help File, Syntax
    • Girvo911 - Parser, Compiler, Syntax
    • Penagate - Library, Syntax
    • Datacide - Website Design (http://lightfusion.sourceforge.net)



    General To-Do List:
    • Work out more syntax and a list of features.
    • Make a parser and compiler.
    • Make an IDE.
    • Document everything.



    Help Support LightFusion!

    If you want to bookmark this thread and have it always jump to the newest post add the following link to your bookmarks. Don't click it and then bookmark it otherwise you won't get the right results.
    Code:
    http://www.vbforums.com/showthread.php?goto=newpost&t=358529
    If you would like to support LightFusion™ add one of the following images to your signature.
    1) Button


    Code:
    [url=http://www.vbforums.com/showthread.php?t=358529][img]http://www.vbforums.com/attachment.php?attachmentid=41426[/img][/url]

    Many thanks to Penagate for all logos and images.

    Contributors:
    • Joacim Andersson - CodeSense control (the text box on steriods) and TONS general assistance.
    • CornedBee - Brilliant advice.
    • timeshifter - The funny original name that got it all started (QB#++.NET)



    History:

    Last edited by eyeRmonkey; Oct 20th, 2005 at 08:23 PM.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  2. #2
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    Don't forget Inlining

  3. #3

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    I'll get there. I'm waiting on a name to be decided on.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  4. #4
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    I'd say lets give it a week and see how many names we can come up with.

  5. #5

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    Sounds good. We can think up syntax until then. I start school soon and I don't know how much time I will be able to contribute to this. Aren't you still in school Jake?

    Do we want a VB style IDE? Where you place items on a form then write code for them?

    How does C++ (and other languages) have forms (buttons, etc) without a VB type interface? Do you define a X and Y and width and height or what? I've never done anything except VB and JavaScript (which has HTML as its visual counterpart).
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  6. #6
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    I was about to go and all, even registered for my classes, but I didn't obtain my drivers licence on time to where I can drive to college since my parents are no longer taking me. Got it a week after the payment deadline passed. So I had to skip another term again.

    I'm thinking of doing a syntax so simplified, that a baby could use it. But at the same time it'll execute at warp speed. I'm thinking as fast as C++, if we can make it go that fast. I noticed a pattern in all of these programming languages, that there are many things that are not needed, like the semicolons for example ';'. In the long run, it can save a lot of coding time by not pressing that key alone, not to mention it can make it more readable.

  7. #7

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    I think VB was the attempt at making a programming language a baby could read (close to english) and I perfer { and } over Then and End If.

    Do you have an answer to my C++ question? How do you make a form in C++?
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  8. #8

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    Do you know ASM Jake?
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  9. #9

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    Syntax idea:

    If you want to escape a character do this:
    Code:
    "A double quote \" should be there"
    Instead of:
    Code:
    "A double " & Chr$(34) & " should be there"
    I like & for joining strings, but we could use + if you want. I think we should also have Chr() as a function.

    I don't know how we are going to do this because I don't know anything about assembly. Maybe I will have to bow out and just offer syntax suggestions.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  10. #10

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    Actually maybe I could help. I could write (or help write) the IDE in VB. That wouldn't affect the speed if the compiler was written in ASM. The IDE has to be able to do syntax checking etc and we could provide nice error messages when people mess up and syntax coloring. MMMMM. I like it.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  11. #11
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    From DirectX4VB:

    When VB creates us a form it is basically simplifying the use of the MFC (Microsoft Foundation Classes) which C++ developers tend to use. This translation can be costly to our application. In C++ it is taken that the MFC shouldn't always be used in time critical programs; the same can be applied to us, but with something extra. Because VB translates everything for us it will take a little while for this translation to take place; which could be a little extra speed for our program. As well as this translation we are also using the MFC - effectively two potential slowdowns.

  12. #12
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    The solution:

    http://externalweb.exhedra.com/Direc...B/GM_Win32.asp

    We need to do a Win32 style app, and not use MFC.

  13. #13

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    Well I don't know DX either. Once again, maybe I should stick to the IDE.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  14. #14
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    It had nothing to do with DirectX. And I am talking about using IDE, only not makingthe mistake that Microsoft made with VB. They did the MFC method, and that was bad for speed. We need to do the Win32 method for IDE mode. Getting it now?

  15. #15

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    Ok, I don't see how the IDE has anything to do with the speed of our program.

    So you are suggesting using Win32 (and VB) to make our IDE.
    Or are you suggesting that our compiler creates windows with Win32? Plus won't win32 be outdated when Vista (64) comes along?


    ... And ASM for our compiler?
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  16. #16

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    I'm headed out for tonight. I might be able to post at the persons house I am going to hang out at, but probably not. Reply to all the questions I asked and I'll be on tommorow.

    Also try finding a random name generator and see what you can come up with.

    Also see if you can PM some of the long-time members and see if you can find any other interest in the project.

    Thanks.

    C ya.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  17. #17
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    Quote Originally Posted by eyeRmonkey
    Ok, I don't see how the IDE has anything to do with the speed of our program.

    So you are suggesting using Win32 (and VB) to make our IDE.
    Or are you suggesting that our compiler creates windows with Win32? Plus won't win32 be outdated when Vista (64) comes along?


    ... And ASM for our compiler?
    No. We are gonna use ASM to use Win32 to make our IDE. I have the assembly source code to do this. As a matter of fact, we will be making the compiler in Assembly. You and I can learn it together. Shouldn't be that hard.

    Also, we will allow uses to have a choice between IDE mode or directly compiling it into an EXE.

  18. #18

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    How much ASM do you know?

    Will we provide a nice way to make forms (like VB) or will we require the users to use Win32 to make a form (like C++ users do).
    Last edited by eyeRmonkey; Sep 2nd, 2005 at 11:21 PM.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  19. #19
    type Woss is new Grumpy; wossname's Avatar
    Join Date
    Aug 2002
    Location
    #!/bin/bash
    Posts
    5,682

    Re: QB#++.NET (new name to be determined)

    So basically you're taking all the bad parts of VB and injecting them into C#?

    And I think you'll find that [][] denotes a jagged array, not a 2d one

    And you'll have to forget about OO too. QB was about as OO as a photon.
    I don't live here any more.

  20. #20
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    Were not making QB. We are renaming it to something better.

    And I know very very little ASM. So we are gonna have to learn it. I got MASM32 in my computer. You can download it for free if you Google it.

  21. #21
    I'm about to be a PowerPoster!
    Join Date
    Jan 2005
    Location
    Everywhere
    Posts
    13,647

    Re: QB#++.NET (new name to be determined)

    Hi people,

    I don't have time these days (until November) to put into much code, but I had the idea to do it myself a fair while back, so maybe I could get something out of this

    I know how to do Win32 forms and controls (the theory anyway, never done it in practice). You need to use CreateWindowEx(), RegisterClassName, etc.

    I'm learning ASM at the moment. the syntax can be learnt in about 10 minutes, but all the instructions take forever. It would be easier to apply it with a compiler because you only need to think of the right instruction to use once (and put it into the compiler), as opposed to every time you code a routine using it.

    You can also use FASM (Flat Assembler) to generate opcodes from any ASM instructions, which is very useful for inline ASM situations, and precompiled ASM in VB using byte arrays.

    Also, personally, I actually like the semi-colon ; to separate instructions, because it gives you a lot of freedom with code placement, and it is easier for the compiler

  22. #22
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    I personally think it's not needed. Anything can replace that semicolon, even CrLf. The only difference between us and MS is that we are gonna focus more on speed. Hence the name, Light Fusion.

  23. #23
    I'm about to be a PowerPoster!
    Join Date
    Jan 2005
    Location
    Everywhere
    Posts
    13,647

    Re: QB#++.NET (new name to be determined)

    Well then that's your personal preference

    MS have put a lot of effort into speed with their C++ compiler optimisations. Don't think that you can beat them too easily

    Are you going to support full OO features?

  24. #24
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    Here's a simple "Hello World" Win32 app using MASM. Notice that the code is somewhat similar to C++'s method in the Project.asm file. Open it with wordpad to see the code.

    And yes Penagate it will be OO, but it will not be 100% OOP, like the .NET languages are. It's gonna be somewhat similar to C++.
    Attached Files Attached Files

  25. #25
    I'm about to be a PowerPoster!
    Join Date
    Jan 2005
    Location
    Everywhere
    Posts
    13,647

    Re: QB#++.NET (new name to be determined)

    MASM isn't pure assembly... where on earth did they pull a Switch construct from?

  26. #26
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    Damn. Now you tell me. Ok what language is pure assembly? TASM maybe?

  27. #27
    I'm about to be a PowerPoster!
    Join Date
    Jan 2005
    Location
    Everywhere
    Posts
    13,647

    Re: QB#++.NET (new name to be determined)

    I don't think that is either, it has "advanced coding instructions" whatever that means... However it's only an issue if you care that it supports more than just pure x86 instructions. Maybe I should have said, that example you posted wasn't pure assembly. It had invoke's to call APIs, and a Switch block, and bunch of other things. In pure ASM you would do that using push/call (APIs) and cmp/conditional jump (Switch). You could rewrite teh whole thing in pure ASM and still compile it in MASM I suppose. Don't sweat

  28. #28
    Kitten CornedBee's Avatar
    Join Date
    Aug 2001
    Location
    In a microchip!
    Posts
    11,594

    Re: QB#++.NET (new name to be determined)

    Ahem. May I make a few suggestions?

    First, all of you project members should learn straight C coding, or perhaps straight C++ coding. Higher-level languages tend to distract from what a language actually is. (As this thread makes evident.)

    Second, forget Windows for now. Focus on the language: what should it do, what shouldn't it do. Do you want full OOP-support? What features? Any other programming style? What makes your language actually different from existing ones, where are the advantages? What will you give up in exchange?

    Third, get a copy of "The Design and Evolution of C++" by Bjarne Stroustrup and read it. Find out what influenced one of the most popular programming languages ever. Then rethink your work from #2. Are the decisions you made rational? Have you considered the pros and cons of each? Is the resulting language actually useful for what you want it, or has it become a feature creep? (I see a strong danger of this here.)


    Admittedly, I'm very sceptical about this. It sounds as if you a) are completely planless and b) will at best create a language that is basically VB, C or something in that direction with just a slightly different syntax - and with much worse compilers, because obviously you still have a lot to learn, while the competition has years and even decades of experience.
    All the buzzt
    CornedBee

    "Writing specifications is like writing a novel. Writing code is like writing poetry."
    - Anonymous, published by Raymond Chen

    Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.

  29. #29
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    Well we are focusing on one thing at a time. Right now we are trying to come up with a name. Lightfusion seems to be good though in my opinion. Secondly, it's gonna have to be done on assembly and not C++, because the syntax will be easy to use (Like VB is), only it will run very fast (Like programs that run on C++). But we will focus one thing at a time. We might have a beta version made on C++ as a start until we master working with assembly. After we finally decide on a name, we will work out the syntax.

  30. #30
    I'm about to be a PowerPoster!
    Join Date
    Jan 2005
    Location
    Everywhere
    Posts
    13,647

    Re: QB#++.NET (new name to be determined)

    The point of the language that I wanted to make, and it's been brewing for several months now, was to combine the terse syntax of C, with the RAD nature of VB, the raw power of C/C++/ASM, and modern innovations such as XML, etc. Plus, a rapid turnover time for new features to be added to the language.

    So what's actually the point of this Lightfusion language, apart from the cool name? Combine your favourite programming languages? They'll always be the best tool for the job, and you want to watch that you don't end up with the jack of all trades. Speed? That comes later, with rule-based compiler optimisations. The syntax doesn't affect teh speed

    CornedBee is right, you need to think about what exactly you will use this language for. Not what it will be like, but where and how you will use it, and then figure out the best way for it to tackle those situations. Only once you've done that, you can add more features, to approach more situations. Am I making sense?

  31. #31
    Kitten CornedBee's Avatar
    Join Date
    Aug 2001
    Location
    In a microchip!
    Posts
    11,594

    Re: QB#++.NET (new name to be determined)

    Secondly, it's gonna have to be done on assembly and not C++, because the syntax will be easy to use (Like VB is), only it will run very fast (Like programs that run on C++).
    Sorry, but that's nonsense. A VB program is slow because it's interpreted (always up to 5.0, and in test mode in 6.0), and there's huge overheads from the runtime. But the runtime is written in C and C++, perhaps even a bit assembly. That doesn't help the overhead - it comes from the way VB works.
    C++ is complied to native code. There's no overhead at all. That's why it's fast. With some libraries, such as MFC, you introduce something of an overhead and gain ease-of-use. Usually, these two hold a balance - the more you simplify, the greater the overhead. (That's not a hard rule.)

    You have to decide whether your language gets compiled to native code or is interpreted. Interpreted is slow. Compilation is complicated. On the other hand, even the most modern versions of Cfront, Bjarne Stroustrup's own C++ compiler, emits C code that is then further processed by a C compiler.
    But even more, you have to differ between the runtime of your language (what it gets compiled to, the core libraries) and the support structure (compiler, linker, ...). The compiler and linker can be in Perl and it wouldn't affect runtime performance, only compilation time.
    You'll want to compile to native code. As I said, you could emit C code and let that compiler handle it. This way, you can save yourself much work. Or you could emit Assembly, but then you get practically no low-level optimizations. Or you could emit machine code directly. But nobody does that.
    The core libraries can be in pretty much any language, as long as they can be called from yours. Except for some very fundamental parts, they'll probably be written in your own language. Some C++ implementations, for examples, have nearly ALL of their libraries written in C++. One example is the MS one, which only very rarely calls into the C runtime (a library written in C) or the WinAPI (also a library, in a way, written in C, Assembly and C++, mostly.)

    But my point about learning C/C++ wasn't that you should compile your language to either of those, or implement your toolchain in them (although I think you should do both), but that you understand existing languages that do approximately what you want - in other words, that are fast. Yes, C can be tricky to learn, and yes, the features of C++ can be confusing. But those are the languages whose speed you want to match, so you should understand why they are that fast. It'll help you make a better language.

    A name is unimportant. The name C++ wasn't invented by the language's inventor.

    Edited to answer Penagate.

    Yes, you are making sense. Find the application area for your language, and then think about everything else.

    But don't forget this: the RAD capabilities are a big part of what makes VB so slow. The RAD is supported by a framework that hides complexity, prevents mistakes, and so on. All of these things take time. RAD and speed have never yet been seen together, except perhaps in Delphi.

    The innovations like XML, though? That's what libraries are for. It doesn't make much sense to make these things part of the core language. A better idea is to offer features that make it possible to write libraries that seem like a part of the language - C++'s operator overloading and templates are an example. The Spirit library lets you create recursive descent parsers nearly as if it was a language feature.
    Last edited by CornedBee; Sep 3rd, 2005 at 12:34 PM.
    All the buzzt
    CornedBee

    "Writing specifications is like writing a novel. Writing code is like writing poetry."
    - Anonymous, published by Raymond Chen

    Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.

  32. #32
    Computer Science BS Jacob Roman's Avatar
    Join Date
    Aug 2004
    Location
    Miami Beach, FL
    Posts
    5,339

    Re: QB#++.NET (new name to be determined)

    It's gonna be native then. Like I said, we are gonna have to do things one step at a time.

    The language is gonna be easy to use yet run at lightning speeds. That's the whole point of Lightfusion.

  33. #33
    I'm about to be a PowerPoster!
    Join Date
    Jan 2005
    Location
    Everywhere
    Posts
    13,647

    Re: QB#++.NET (new name to be determined)

    Quote Originally Posted by CornedBee
    But don't forget this: the RAD capabilities are a big part of what makes VB so slow. The RAD is supported by a framework that hides complexity, prevents mistakes, and so on. All of these things take time.
    Indeed, however it is possible to combine speed and RAD if you support multiple levels of complexity in your language. The lower level language features give you more power and scope for manual optimisation. The higher level features enable RAD development, which you can later optimise using the lower level features.

    Quote Originally Posted by CornedBee
    The innovations like XML, though? That's what libraries are for. It doesn't make much sense to make these things part of the core language.
    I dunno. What about C-omega's inline XML descriptors for controls? I really liked that. In some places XML does have a use and that is where it can describe things much more neatly than the general syntax of your language.

  34. #34

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: QB#++.NET (new name to be determined)

    CornedBee & Penagate,

    Thanks a lot for all your advice. If either of you feel you have the time to actually participate in this, then you are more than welcome to join.

    Once again, I have to consider the fact that I go back to school next week. I agree with CornedBee that (if we are trying to out-speed C++) we should C/C++. But, for me, this means an even bigger time commitment, which I don't think I can afford. I will stay on board with this as long as I can and even start learning ASM or C/C++, but I can't say wether that will be a month or 4 days or what.

    I definitely want to help contribute to the syntax and general development if I can find the time though.

    I love this idea, but we need to get a couple more members on board and then make a solid plan (and take what CornedBee and Penagate have to say into consideration while making that plan).

    On a side note, I was also thinking we should focus on getting this language to run on the command line before we worry about Win32 windows and stuff.

    EDIT: Can you guys make sure to hit "Reply" instead of quote with reply so the title of your replies changed to RE: LigthFusion™ instead of QB#++.NET

    Thanks.
    Last edited by eyeRmonkey; Sep 3rd, 2005 at 01:14 PM.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  35. #35
    Kitten CornedBee's Avatar
    Join Date
    Aug 2001
    Location
    In a microchip!
    Posts
    11,594

    Re: LightFusion™

    But, for me, this means an even bigger time commitment, which I don't think I can afford.
    Well, designing a language takes longer than learning one by orders of multitude, if not magnitude, so I really see no problem there. It's a huge time investment either way.


    I'll be here if you have any questions, but I won't actively participate in the project. I have my own ideas of how my ideal language would look (at lot like C++), and it's not this.


    Anyway, LightFusion seems pretty safe as name. Google didn't turn up anything relevant, only some UK company with a completely dysfunctional website.
    All the buzzt
    CornedBee

    "Writing specifications is like writing a novel. Writing code is like writing poetry."
    - Anonymous, published by Raymond Chen

    Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.

  36. #36

    Thread Starter
    No place like 127.0.0.1 eyeRmonkey's Avatar
    Join Date
    Jul 2005
    Location
    Blissful Oblivion
    Posts
    2,306

    Re: LightFusion™

    Glad to have you in any way CornedBee. Thanks.
    Visual Studio 2005 Professional Edition (.NET Framework 2.0)
    ~ VB .NET Links: Visual Basic 6 to .NET Function Equivalents (Thread) | Refactor! (White Paper) | Easy Control for Wizard Forms | Making A Proper UI For WinForms | Graphics & GDI+ Tutorial | Websites For Free Icons
    ~ QUOTE: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. -Rich Cook

    ~ eyeRmonkey.com

  37. #37
    I'm about to be a PowerPoster!
    Join Date
    Jan 2005
    Location
    Everywhere
    Posts
    13,647

    Re: LightFusion™

    Quote Originally Posted by CornedBee
    I have my own ideas of how my ideal language would look (at lot like C++), and it's not this.
    That actually reminds me of an interesting point. The more I tinker in my spare time with creating a syntax, the more it becomes like C++, and the more I start to understand C++ properly. You learn a lot by messing around on your own, and I find that sort of learning sticks with you a lot better than something you find in a book, or tutorial. Then you can back it up from a reference to make sure your facts are all straight.

    Edit: eyeRmonkey the first post still reads QB#++.NET (in the post body).

  38. #38
    Frenzied Member Phill64's Avatar
    Join Date
    Jul 2005
    Location
    Queensland, Australia
    Posts
    1,201

    Re: LightFusion™

    what made you decide to not use ; ?

    for starters it's a great thing for easy reading code, and secondly it would make your life alot easier too, be alot easier for your compiler to interpret if lines end with ; and linebreaks are ignored

  39. #39
    G&G Moderator chemicalNova's Avatar
    Join Date
    Jun 2002
    Location
    Victoria, Australia
    Posts
    4,246

    Re: LightFusion™

    Quote Originally Posted by eyeRmonkey
    • Find a good assembly compiler
    • Learn assembly
    • Make a compiler (and programs to run fromt he command line)
    I hope you guys understand a compiler isn't just 50 lines of code I've been reading an online tutorial about creating one for quite some time now. It took the guy 10 years to write the tutorial. I think its called "Lets create a compiler", and it was about 60 chapters (all well beyond a suitable text limit IE should be able to contain). Perhaps a scripting engine with the ability to create Gooeys is more achievable (which is something I began in VB, but can't finish it due to my lack of a computer atm)

    chem

    Visual Studio 6, Visual Studio.NET 2005, MASM

  40. #40
    Kitten CornedBee's Avatar
    Join Date
    Aug 2001
    Location
    In a microchip!
    Posts
    11,594

    Re: LightFusion™

    I've written a very simple compiler for a very simple language in about 1000 lines of code. Of course, that one didn't have any optimizing and could barely handle functions. Oh, and it could only handle integers. The thing emitted Alpha assembly.
    All the buzzt
    CornedBee

    "Writing specifications is like writing a novel. Writing code is like writing poetry."
    - Anonymous, published by Raymond Chen

    Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.

Page 1 of 27 123411 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width