반응형
반응형

Compile to HTML/CSS/JavaScript

A list of upcoming programming languages that replace HTML/CSS/JavaScript -

  1. Elm (gos.i, homepage) The Elm programming language aims to make web development more pleasant. Elm is a type-safe, functional reactive language that compiles to HTML, CSS, and JavaScript. Elm's major distinguishing features are support for reactive programming and its focus on graphical user interfaces. Elm is also call-by-value and strongly / statically typed with type inference. The language features mentioned above help catch errors in your code at compile time, but there are some errors that are external to your code, such as browser incompatabilities. By using HTML, CSS, and JavaScript as an assembly language, Elm can avoid some of these problems.
  2. mobl (gos.i, homepage) mobl is a new free and open source language designed specially to speed up building mobile applications. Using modern HTML5 technologies, mobl offers you a concise language to build native-feeling web apps in a jiff; great (Eclipse) IDE support (such as as-you-type error reporting, code completion and reference resolving); a rapid save and test cycle. No more lengthy compilations, the mobl IDE compiles your modules whenever you save, ready to be tested in the mobile browser.
  3. fun (gos.i, homepage) A declarative programming language for realtime web applications.

Compile to JavaScript

This is a list of projects tagged as javascript-alternative on getOpenSource.info. If you'd like to add a project to this list, you can always do so by adding it here and then adding javascript-alternative as a tag.
An up to date list can always be found at http://getopensource.info/explore/javascript-alternative/.
  1. CoffeeScript (gos.i, homepage) CoffeeScript is a little language that compiles into JavaScript. Underneath all of those embarrassing braces and semicolons, JavaScript has always had a gorgeous object model at its heart. CoffeeScript is an attempt to expose the good parts of JavaScript in a simple way. The golden rule of CoffeeScript is: “It's just JavaScript”. The code compiles one-to-one into the equivalent JS, and there is no interpretation at runtime. You can use any existing JavaScript library seamlessly (and vice-versa). The compiled output is readable and pretty-printed, passes through JavaScript Lint without warnings, will work in every JavaScript implementation, and tends to run as fast or faster than the equivalent handwritten JavaScript.
  2. LiveScript (gos.i, homepage) LiveScript is a language which compiles down to JavaScript. It is a fork of Coco which is in turn derived from CoffeeScript. Like those two it has a relatively straightforward mapping to JavaScript. LiveScript is Coco but much more compatible with CoffeeScript, more functional, and more feature rich. LiveScript aims for increased expressiveness and code beauty. While adding features to assist in functional style programming, LiveScript also deeply supports imperative and object oriented programming, and has an optional class system with inheritance, calls to super, and more.
  3. Coco (gos.i, homepage) Coco is a CoffeeScript dialect that aims to be more radical and practical. On its way to hide JavaScript's bad parts, CoffeeScript has accumulated own quirks: horrible variable scope, awkward ranges, confusing and/or pointless keywords, verbose file extension, and so on. Coco tries to amend them, entwining good parts of both.
  4. IcedCoffeeScript (gos.i, homepage) IcedCoffeeScript is a superset of CoffeeScript. The iced interpreter is a drop-in replacement for the standard coffee interpreter; it will interpret almost all existing CoffeeScript programs. IcedCoffeeScript (ICS) adds two new keywords: await and defer. These additions simply and powerfully streamline asynchronous control flow, both on the server and on the browser. Say goodbye to callback pyramids; say adios to massive code rewrites when synchronization requirements change slightly. Say hello to clean, readable, maintainable control flow for network and asynchronous operations! The golden rule of CoffeeScript was: “It's just JavaScript”. ICS is doing something deeper. It's selectively running code through a continuation-passing style conversion. Original-style CoffeeScript will compile as before, but code using the new ICS features will be less recognizable. Still, the compiled output is readable and pretty-printed, passes through JavaScript Lint without warnings.
  5. haXe (gos.i, homepage) haXe (pronounced as hex) is an open source programming language. While most other languages are bound to their own platform (Java to the JVM, C# to .Net, ActionScript to the Flash Player), haXe is a multiplatform language.
  6. Opa (gos.i, homepage) Opa is a new generation of web development platform that lets you write distributed web applications using a single technology. Opa is concise, simple, concurrent, dynamically distributed, and secure.
  7. Dart (gos.i, homepage) Dart is a new class-based programming language for creating structured web applications. Developed with the goals of simplicity, efficiency, and scalability, the Dart language combines powerful new language features with familiar language constructs into a clear, readable syntax.
  8. LLJS (gos.i, homepage) LLJS (formerly known as *JS) is a typed dialect of JavaScript that offers a C-like type system with manual memory management. It compiles to JavaScript and lets you write memory-efficient and GC pause-free code less painfully, in short, LLJS is the bastard child of JavaScript and C. LLJS is early research prototype work, so don't expect anything rock solid just yet. The research goal here is to explore low-level statically typed features in a high-level dynamically typed language. Think of it as inline assembly in C, or the unsafe keyword in C#. It's not pretty, but it gets the job done.
  9. heap.coffee (gos.i, homepage) heap.coffee is a dialect of CoffeeScript that offers a C-like type system with manual memory management. It compiles to JavaScript and lets you write memory-efficient and GC pause-free code less painfully. heap.coffee, like its relative *JS, is early research prototype work, so don't expect anything rock solid just yet. The research goal here is to explore low-level statically typed features in a high-level dynamically typed language.
  10. Google Web Toolkit (gos.i, homepage) Google Web Toolkit (GWT) is a development toolkit for building and optimizing complex browser-based applications. Its goal is to enable productive development of high-performance web applications without the developer having to be an expert in browser quirks, XMLHttpRequest, and JavaScript. GWT is used by many products at Google, including Google Wave and the new version of AdWords. It's open source, completely free, and used by thousands of developers around the world.
  11. Roy (gos.i, homepage) Roy is an experimental programming language that targets JavaScript. It tries to meld JavaScript semantics with some features common in static functional languages.
  12. JS11 (gos.i, homepage) JS11 takes incomplete code and transforms it back into JavaScript. It's smart enough to add in various bits of redundant syntax, and can also transform some common errors and handy shortcuts into working JavaScript code. JS11 is a hybrid dialect that strives for greater readability and programmer effectiveness, whilst maintaining line-number parity with JavaScript. It consists of a language specification and a compiler module. JS11 adds some nice-to-have features that people often use in JavaScript but have to write out the long way. This includes things like default argument values, named parameters in function calls, a nice way to create private variable scopes, and easy numbered loops.
  13. Kaffeine (gos.i, homepage) Kaffeine is a set of extensions to the Javascript syntax that attempt to make it nicer to use. It compiles directly into javascript that is very similar, readable and line for line equivalent to the input (you can beautify if you like).
  14. Jack (gos.i, homepage) Jack is a new language in development that gets translated to pure JavaScript and runs on top of nodeJS.
  15. PogoScript (gos.i, homepage) PogoScript is a programming language that emphasises readability, is friendly to domain specific languages and compiles to regular JavaScript.
  16. moescript (gos.i, homepage) Moe is a new, not-very-little Javascript-targeted language written in JavaScript. Its features are inspired by Scala, Python, Haskell and Coffee. It is aimed to deal with common troubles in JavaScript development. Moe has neatly crafted grammar so that most JavaScript development will be simplified.
  17. JavaScript++ (gos.i, homepage) JavaScript++ provides the same familiar C-style language syntax of JavaScript and brings modern language features such as classes; block scoping and constants; pluggable type systems and type safety; packages and modules; comprehensive standard libraries; enhanced regular expressions and PCRE; and more to JavaScript with almost no learning curve through an extended ES3 grammar. JavaScript++ compiles to ES3-compatible JavaScript. JavaScript++ incorporates features from Python, Perl, Java/C#, ES4, Harmony, Haskell, and more while incorporating its own unique features. The driving philosophy behind JavaScript++ is productivity, and it will make everything from small scripts to large applications easier and faster to write. Take the mundane out of your JavaScript code with JavaScript++!
  18. JSX (gos.i, homepage) JSX is a statically-typed, object-oriented programming language designed to run on modern web browsers. JSX performs optimization while compiling the source code to JavaScript. The generated code runs faster than an equivalent code written directly in JavaScript. The gain may vary, but even the optimized JavaScript libraries like Box2D becomes faster when ported to JSX (we are observing 4% to 27% increase in performance). In contrast to JavaScript, JSX is statically-typed and mostly type-safe. The quality of applications becomes higher when being developed using JSX, since many errors will be caught during the compilation process. It also offers debugging features at the compiler level as well. JSX offers a solid class system much like the Java programming language, freeing the developers from working with the too-primitive prototype-based inheritance system provided by JavaScript. Expressions and Statements are mostly equal to JavaScript, so it is easy to for JavaScript programmers to start using JSX.
  19. mochiscript (gos.i, homepage) Mochiscript is a superset of the JavaScript language that adds more Object-Oriented features such as: methods, inheritance, mixins, etc… What this means is that Mochiscript IS Javascript. Mochiscript currently supports Ruby on Rails 3.1 (via asset pipeline) and Node.js.
  20. Pygmy (gos.i, homepage) Pygmy is a dynamic language that compiles to Javascript, designed to be readable but concise enough to be competitive in code golf.
  21. Pit (gos.i, homepage) PIT is F# to Javascript compiler that leverages the beauty of F# and also JavaScript.
  22. WebSharper (gos.i, homepage) WebSharper is an HTML5-centric web framework that lets you create web and mobile JavaScript apps complete with a server-side backend using a single language, F#. WebSharper is designed to boost your productivity. Reduce complexity with a single language on the client and the server, enjoy code completion in Visual Studio®, and benefit from type inference and other great features of F#.
  23. Amber (gos.i, homepage) Amber is an implementation of the Smalltalk-80 language. It is designed to make client-side development faster and easier. It allows developers to write client-side heavy web applications in Smalltalk. Amber includes an integrated development environment with a class browser, workspace, transcript, object inspector and debugger. Amber is written in itself, including the parser and compiler, and compiles into efficient JavaScript, mapping one-to-one with the JS equivalent.
  24. Haste (gos.i, homepage) A compiler to generate Javascript code from Haskell.
  25. ghcjs (gos.i, homepage) ghcjs is a Haskell to Javascript translator. It aims to provide solution to compile modern Haskell libraries to Javascript files and use them in Ajax applications or develop entire Ajax application in Haskell
  26. Outlet (gos.i, homepage) Outlet is a programming language. It is Lisp-like in nature and compiles to JavaScript.
  27. SibilantJS (gos.i, homepage) Sibilant is a language that is parsed by javascript and compiles to javascript. Sibilant is inspired by lisp and follows many lisp conventions, although it is still relatively close to the underlying javascript. Sibilant is entirely written in sibilant and can recompile itself.
  28. Scriptjure (gos.i, homepage) Scriptjure is a Clojure library for generating javascript from Clojure forms. Its primary goal is to make it simple to embed “glue” javascript in Clojure webapps. Generated Scriptjure javascript is intended to be readable. At the moment, Scriptjure is very simple, but is still under active development.
  29. clojurescript (gos.i, homepage) ClojureScript is a new compiler for Clojure that targets JavaScript. It is designed to emit JavaScript code which is compatible with the advanced compilation mode of the Google Closure optimizing compiler.
  30. BiwaScheme (gos.i, homepage) BiwaScheme is a Scheme interpreter written in JavaScript.
  31. JSIL (gos.i, homepage) JSIL is a compiler that transforms .NET applications and libraries from their native executable format - CIL bytecode - into standards-compliant, cross-browser JavaScript. You can take this JavaScript and run it in a web browser or any other modern JavaScript runtime. Unlike other cross-compiler tools targeting JavaScript, JSIL produces readable, easy-to-debug JavaScript that resembles the code a developer might write by hand, while still maintaining the behavior and structure of the original .NET code. Because JSIL transforms bytecode, it can support most .NET-based languages - C# to JavaScript and VB.NET to JavaScript work right out of the box.
  32. Doppio (gos.i, homepage) Doppio is a project to get Java running in the browser without any plug-ins. Right now it comprises a fairly complete VM and an implementation of the javap bytecode disassembler. (Doppio is also the Italian word for 'double', and is another name for a double espresso). Doppio started out as the mid-term project for a Graduate Systems Seminar. It has since taken on a life of its own, and is complete enough to run implementations of GNU Diff, LZW compression, and the Java 4 compiler.
  33. Skulpt (gos.i, homepage) Skulpt is an entirely in-browser implementation of Python. No preprocessing, plugins, or server-side support required, just write Python and reload.
  34. Pyjs (gos.i, homepage) Pyjs is a port of Google Web Toolkit to Python, and thus enables the development of Rich Media AJAX applications in Python, with no need for special browser plugins. Pyjs contains a stand-alone python-to-javascript compiler, and also a Widget Set API that looks very similar to Desktop Widget Set APIs (such as PyQT4 or PyGTK2). Pyjs also contains a Desktop Widget Set version, running as pure python, with three useable Desktop ports available. With web-engine technology at it's core, HTML, CSS, plugins and other related features work out-of-the-box.
  35. Objective-J (gos.i, homepage) Objective-J is a new programming language based on Objective-C. It is a superset of JavaScript, which means that any valid JavaScript code is also valid Objective-J code. Anyone familiar with JavaScript and object-oriented programming concepts, classical inheritance in particular, should have no difficulty learning Objective-J.
  36. Opal (gos.i, homepage) Opal is a ruby to javascript compiler. Opal aims to take ruby files and generate efficient javascript that maintains rubys features. Opal will, by default, generate fast and efficient code in preference to keeping all ruby features. Opal comes with an implementation of the ruby corelib, written in ruby, that uses a bundled runtime (written in javascript) that tie all the features together. Whenever possible Opal bridges to native javascript features under the hood. The Opal gem includes the compiler used to convert ruby sources into javascript.
  37. Red (gos.i, homepage) Red takes the Ruby you write and turns it into JavaScript for your browser. The all-new Red is a Ruby-to-JavaScript transliterator backed by a custom ruby.js library designed to let your code run in the browser exactly the way Ruby would run on your machine. The JavaScript output is optimized to contain only the fraction of the ruby.js source library needed to run your code. What does this mean for today’s Ruby developer? Simple. You don't need to learn JavaScript.
반응형
반응형

제사의 절차

제사의 주인이 되는 사람을 제주(祭主)라고 하고, 제주를 돕는 사람을 집사라고 한다. 제사에서는 술을 3번 올리는데, 각각 '초헌', '아헌', '종헌'이라고 한다. 다음 영상은 '초헌'이라는 절차를 보여준다. 영상 후에는 대체적인 제사의 절차를 나열하였다.

 

1. 강신 : 제주가 향을 피운다. 집사가 잔에 술을 부어주면, 제주가 모삿그릇에 3번 나누어 붓고 두 번 절한다.

신주를 모실 때에는 아래 참신을 먼저 하고 강신한다.


2. 참신 : 일동이 모두 두 번 절한다.

 

3. 초헌 : 집사가 잔을 제주에게 주고 술을 부어준다. 제주는 잔을 향불 위에 세 번 돌리고 집사에게 준다.

집사가 술을 올리고, 젓가락을 음식 위에 놓는다. 제주가 두 번 절한다.

 

4. 독축 : 모두 꿇어 않고 제주가 축문을 읽는다. 다 읽으면 모두 두 번 절한다.

 

5. 아헌 : 두 번째로 술을 올리는 것으로, 제주의 부인 혹은 고인과 제주 다음으로 가까운 사람이 한다.

절차는 초헌과 같다.

 

6. 종헌 : 세 번째 술을 올리는 것으로, 제주의 자식 등 고인과 가까운 사람이 한다.

절차는 아헌과 같은데, 술을 7부로 따라서, 첨잔을 할 수 있도록 한다.

 

7. 유식 : 제주가 제상 앞에 꿇어앉고, 집사는 남은 술잔에 첨잔한다. 제주의 부인이 밥뚜껑을 열고 숟가락을 꽂는다.

젓가락을 시접 위에 손잡이가 왼쪽을 보게 놓는다. 이를 삽시정저(揷匙定箸)라고 한다. 제주가 두 번, 부인이 네 번 절한다.

 

8. 합문 : 문 밖에 나가 잠시 기다린다. 어쩔 수 없는 경우 일동 무릎을 꿇고 잠시 기다린다.

 

9. 헌다 : 국을 물리고 숭늉을 올린다. 밥을 숭늉에 세 번 말아 놓고 수저를 숭늉 그릇에 놓는다. 잠시 무릎을 꿇고 기다린다.

 

10. 사신 : 숭늉의 수저를 거두고 밥그릇을 닫는다. 일동 두 번 절한다. 지방과 축문을 불사른다. 신주는 사당으로 모신다.

 

11. 철상 : 제사 음식을 물린다. 뒤에서부터 차례로 한다.

 

12. 음복 : 제수를 나누어 먹는다.

 

 

 

 

 

 

 

반응형
반응형
적게 이루고 싶은 사람은
적게 희생하고,
많이 이루고 싶은 사람은
많이 희생해야 한다.
-제임스 앨런

헨리 데이비드 소로는
“무엇이든 그 값어치는
우리가 그것을 위해 내놓으려고 하는
인생의 분량과 같다.”고 말했습니다.
무엇이든 다 잘할 수 있는 사람은 없습니다.
무언가를 얻으려고 하면
쥐고 있는 다른 무언가를 내줘야 합니다.
큰 것을 얻으려면 당연히 큰 것을 내려놓아야 합니다.
그것이 세상의 이치입니다.

 

반응형
반응형
대도시의 분주한 삶 속에서
현대인들이 망각해버린 중요한 점들을
흥미롭게도 초기의 인류는 분명하게 믿고 있었다.
탈피가 불멸성을 가져다 준다고 생각한 것이다.
한 예로 수 세기 동안 북보르네오의 두순족은
신이 세계를 창조하고 나서, "자신의 허물을
벗어던지는 자는 누구든 죽지 않으리라."
이렇게 선언했다고 믿었다.


- 마크 네포의《고요함이 들려주는 것들》중에서 -


* 칭기스칸은
"성을 쌓는 자는 망한다"고 했습니다.
자기 틀 안에 안주하는 것을 경계한 말입니다.
단단한 자기 울타리, 두꺼운 허물을 벗어 던져야
새로운 세상으로 나올 수 있습니다.
대도시의 분주함 속에 굳게 갇혀
쳇바퀴 돌 듯 살고 계십니까?
이런 일상을 이따금은
과감히 깨야 합니다.

반응형

'생활의 발견 > 아침편지' 카테고리의 다른 글

더 넓은 공간으로  (0) 2012.11.22
자각몽(自覺夢)  (0) 2012.11.21
3,4 킬로미터 활주로  (0) 2012.11.19
나는 괜찮은 사람이다  (0) 2012.11.17
치유의 접촉  (0) 2012.11.16
반응형

날씨가 이젠 영하로. 입김이 하얗다.

어제 대학로 "민들레처럼" 가서 동동주,머릿고기부추김치,박하주,부추전,산수유주,특메뉴 그렇게 잡수시고.

아침 수영 고고씽.

 

체조하고.

워밍업 스크롤링 자유형킥/자 3 자3

벌서 팔이 뭉치는 느낌이랄까.

킥판 잡고 IM 100 킥으로만 3

킥판 다리사이에 끼고 스트로크로만 IM 100 3

 

IM 100 5

스타트 접/접 3 (물론 나는 접/자)

스타트 접/자 3

그래도 45분이네. 5분 남았다고 자유형 3바퀴 더.

 

대회 나갈라면 더 해야 하는데.

 

강습 마치고 자유형 3바퀴, 배영 1바퀴 더.

 

이번주 금요일은 스노클이다.

 

반응형

'운동일지 > 수영' 카테고리의 다른 글

2012.11.22 수영일지  (0) 2012.11.22
2012.11.21 수영일지  (0) 2012.11.21
수영 대회 연습 스케쥴 3.7km - 25m 레인기준  (0) 2012.11.19
2012.11.17 수영일지  (0) 2012.11.17
2012.11.16 수영일지  (0) 2012.11.16
반응형

과연 아래와 같이 연습하고 참가 할 수 있을까? ㅋㅋㅋ

 

수영 대회 연습 스케쥴 3.7km - 25m 레인기준

1. 워밍업 5 - 10 - 15 - 20 - 15 - 10  - 5

2. 워밍업 5 - 10 - 15 - 20 - 30 - 5

3. 워밍업 5 - 10 - 20 - 30 - 20 - 5

4. 워밍업 10 - 20 - 40 - 10

5. 워밍업 10 - 80

6. 워밍업 10 - 20 - 20 - 20 - 20

7. 워밍업 10 - 80

8. 대회 참가

 

 

 

 

반응형

'운동일지 > 수영' 카테고리의 다른 글

2012.11.21 수영일지  (0) 2012.11.21
2012.11.20 수영일지  (0) 2012.11.20
2012.11.17 수영일지  (0) 2012.11.17
2012.11.16 수영일지  (0) 2012.11.16
2012.11.15 수영일지  (0) 2012.11.15

+ Recent posts