diff --git a/README.md b/README.md index c7ebbf9c1..f33ac3ff0 100644 --- a/README.md +++ b/README.md @@ -5,17 +5,18 @@ Bolt

-Bolt is a new programming language in the making for rapidly building complex web applications. -Bolt makes writing applications dead-simple, and will eventually also support mobile and desktop. +Bolt is a new programming language in the making for rapidly building complex +web applications. Bolt makes writing applications dead-simple. Eventually, it +will also support mobile and desktop platforms. Bolt has an unique mix of features that allows you to write fully-fledged -applications insanely fast, while at the same time guaranteeing that your programs -do what they are supposed to do. +applications insanely fast, while at the same time guaranteeing that your +programs do what they are supposed to do. - **Garbage collected**, freeing you from worrying about memory management. - **JSX support**, so you write your views in the syntax you're already familiar with. - - **Lots of useful language features** such as match-expressions, tuples, macros, static type checking, automatic type inference, and much more to give you the best development experience. + - **Lots of useful features** such as match-expressions, tuples, macros, static type checking, automatic type inference, and much more to give you the best development experience. - **Cross-platform standard library**, allowing you to write your code for the web platform and the native platform at the same time. @@ -34,12 +35,15 @@ println!("The faculty of {} is {}", 5, fac(5)); ### Why yet another programming language? -Granted, there are _a lot_ of programming languages, but oddly enough I found myself -in the situation where I was still not completely satisfied. For example, Rust is a fantastic programming language, -but writing web applications in it feels a little counter-intuitive due to its manual memory management. -On the other hand, functional programming languages like Haskell and Idris look like they come straight out of the future, but sometimes have unpredictable run-time performance and force you to do weird things when all you want to do is mutate a variable. Bolt aims to solve these two issues, and to be a gate into more complex compilers. Who knows what the successor will look like? - -More expressiveness, less boilerplate, and most of all more safety. Bolt is my first attempt at finding it. +Granted, there are _a lot_ of programming languages, but oddly enough I found +myself in the situation where I was still not completely satisfied. For +example, Rust is a fantastic programming language, but writing web applications +in it feels a little cumbersome due to its manual memory management. On the +other hand, functional programming languages like Haskell and Idris look like +they come straight out of the future, but sometimes have unpredictable run-time +performance and force you to do weird things when all you want to do is mutate +a variable. Bolt aims to solve these two issues, while not giving in on +performance or correctness. ### Why should I choose Bolt over JavaScript? @@ -58,10 +62,10 @@ about _correctness_, _performance_ and _scalability_. ### When will the first version be released? -We have set the 1st of August as a deadline for version 1.0.0, though there -are no guarantees. There's a lot of work that still needs to be done, and we -prefer to take our time and make the right decisions from the start rather than -having to cope with fundamental design issues later on. +There's a lot of work that still needs to be done, and we prefer to take our +time and make the right decisions from the start rather than having to cope +with fundamental design issues later on. Therefore, you'll probably have to +wait some time before you can actually preview this software. You can have a look at the [first milestone](https://github.com/boltlang/Bolt/milestone/1) for more information. @@ -78,22 +82,25 @@ programmming language. Together we can move mountains! ### What languages inspired Bolt? Rust and Haskell are two of my favorite languages that you'll notice Bolt -shares a lot of its syntax and semantics with. Rust is the language that inspired Bolt's syntax, -while Haskell helped guide the type checker and standard library design. -Traces of other languages can be found, too. -The macro system was inspired by Racket's macro system, -and the sucesses of garbage-collected languages like Go, JavaScript, Python and Java convinced me that -this feature is a must-have. +shares a lot of its syntax and semantics with. Rust is the language that +inspired Bolt's syntax, while Haskell helped guide the type checker and +standard library design. Traces of other languages can be found, too. The +macro system was inspired by Racket's macro system, and the sucesses of +garbage-collected languages like Go, JavaScript, Python and Java convinced me +that this feature is a must-have. -All in all, Bolt is a mixture of many very different programming languages, and I believe this mixture makes it unique. +All in all, Bolt is a mixture of many very different programming languages, and +I believe this mixture makes it unique. ### What's the difference between Bolt and Rust? -Right now, Bolt looks a lot like Rust. I think the developers of the Rust programming language did a great job at -creating a language that is both pleasant to read and write and is open to a lot of optimisations. However, -Bolt does not come with the advanced borrow checker of the Rust language. It simply isn't needed, because Bolt uses -a garbage collector underneath, and hopefully will contain some optimisations in the future that can make your programs -as fast as Rust. +Right now, Bolt looks a lot like Rust. I think the developers of the Rust +programming language did a great job at creating a language that is both +pleasant to read and write and is open to a lot of optimisations. However, Bolt +does not come with the advanced borrow checker of the Rust language. It simply +isn't needed, because Bolt uses a garbage collector underneath, and hopefully +will contain some optimisations in the future that can make your programs as +fast as Rust. ## License