S # Original Language introduction series (1)-opening section,

Source: Internet
Author: User

S # Original Language introduction series (1)-opening section,
S # Original Language introduction series (1)-OpeningAuthor: Shone

Copyright Disclaimer: This article is an original article by the blogger. You are welcome to repost or reference the content, but please indicate the source.

I. kaizongli School

The programming language has been blooming. Why should I develop another language? Isn't it a duplicate wheel?

Whether it is a natural language or a programming language, its core function is an expression. In common programming languages, there are four main expressions:

1. oriented to functions: functions are first-class citizens, such as LISP, Python, and F;

2. process-oriented: Data + algorithms = programs, classic languages such as BASIC, Pascal, and C;

3. Object-oriented: all objects, such as C ++, Java, and C;

4. Data-oriented: data is stacked and nested, such as XML, YAML, and JSON;

Of course, the above languages and other languages that are not mentioned more or less support one or more expressions. Each expression has some common language features that can be compatible with each other, some are mutually exclusive. It can be seen that it is difficult to design a language that contains all its features. This is also why the discussion of language is prone to debate over procedural language nationalism.

I have been learning and ignorant, and have been trying to design and develop such a "expression-oriented" programming language for many years. It can accommodate most of the common language features. I have made some achievements until today. I would like to share with you for further improvement.

I named ShoneSharp (S # for short) as the newly created programming language. Shone has both expression and cool meaning, while Sharp indicates the source of the design, refer to CSharp and FSharp (C # And F #). From now on, S # is an independent school. It is known as the "Hyun language school" and created the ancestor Shone. You are welcome to use and support S #.

This is the beginning of the xuanyan school:

Developing a language is very difficult. It involves all aspects of language design, development, and application. There are also a lot of content to be introduced. This article is the beginning of the series and will be gradually written and published in the outline sequence listed below. Please stay tuned for further communication.

Ii. S # language editor

1) Software Download

2) Software Interface

3) program input

4) Syntax Parsing

5) view results

6) advanced functions

Iii. S # Language introduction 3.1. Basic Types

1) Value

2) String

3) Boolean Value

4) ry type

5) Extension Type

3.2. Composite Type

1) array

2) List

3) Data Tables

4) User-Defined Functions

5) custom class

3.3. Basic syntax

1) Constant

2) variables

3) Operator

5) Functions

6) attributes

7) Method

8) Formula

9) Statement

3.4. Advanced syntax

1) variable scope

2) Sequential Control

3) condition Control

4) cyclic control

5) Function Definition

6) function call

7) Class Definition

8) Class instantiation

9) JSON expression

8) XML expression

Iv. S # language application

1) Data configuration

2) File Parsing

3) two-dimensional parameterization

4) 3D parameterization

5) BIM Information Model

6) Software Interface

V. S # Language Outlook

1) cross-platform software

2) Open-source plan

3) Establish an Ecosystem

 

Copyright Disclaimer: This article is an original article by the blogger. You are welcome to repost or reference the content, but please indicate the source.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.